กลยุทธ์ซื้อเมื่อตลาดกลัวตามแนวทาง Warren Buffett
วิเคราะห์ข้อมูลจากดัชนีความกลัวและความโลภที่สร้างจาก Sentiment ของข่าว เพื่อทดสอบว่าการเข้าซื้อในช่วงที่ตลาดมีความกลัวสูงสามารถสร้างผลตอบแทนได้ดีกว่าตลาดหรือไม่
กฎที่ถูกอ้างถึงมากที่สุดของ Warren Buffett คือการจงกลัวเมื่อคนอื่นโลภ และจงโลภเมื่อคนอื่นกลัว ซึ่งเป็นคำสอนที่ได้รับการยอมรับอย่างแพร่หลาย ในเชิงหลักการแล้ว ข้อความนี้สามารถพิสูจน์ได้ หากสามารถวัดอารมณ์ของตลาดโดยรวมได้ ก็จะสามารถนำผลตอบแทนที่เกิดขึ้นหลังจากช่วงเวลาที่กลัวที่สุดและโลภที่สุดมาเรียงต่อกันเพื่อเปรียบเทียบกันได้ หน้านี้จะทำการทดสอบดังกล่าว โดยใช้ดัชนีความกลัวและความโลภ (fear-and-greed gauge) ที่สร้างขึ้นจากความรู้สึก (sentiment) ของบทความข่าวหลายแสนบทความ
การสร้างดัชนีความกลัวจากข่าว
ทุกบทความในแถบข่าวของเราจะมีป้ายระบุความรู้สึกรายบริษัท (per-company sentiment tag) ว่าเป็นบวก ลบ หรือเป็นกลาง โดยจะถูกติดไว้เมื่อบทความถูกเผยแพร่ การนับจำนวนป้ายเหล่านี้ทั่วทั้งตลาดในแต่ละวันจะเปลี่ยนข่าวให้กลายเป็นค่าการอ่านอารมณ์รายวัน ค่าความรู้สึกสุทธิ (net sentiment) ของหนึ่งวันในที่นี้คือจำนวนค่าบวกลบด้วยจำนวนค่าลบ แล้วหารด้วยผลรวมของทั้งสองค่า ค่าที่ใกล้ระดับสูงสุดของช่วงคือตลาดที่มีความรู้สึกเชิงบวกหรือมีความโลภ และค่าที่ใกล้ระดับต่ำสุดคือสิ่งที่ใกล้เคียงกับความกลัวที่สุดเท่าที่ข้อมูลนี้จะมีให้
มีข้อจำกัดสองประการที่ต้องพิจารณาก่อนดูผลตอบแทน ป้ายระบุความรู้สึกมีข้อมูลตั้งแต่ปี 2024 เป็นต้นไป ดังนั้นช่วงเวลาที่วัดผลได้จึงมีประมาณสองปีครึ่ง ไม่ใช่หนึ่งรอบวัฏจักรตลาดที่สมบูรณ์ และป้ายเหล่านี้มีแนวโน้มเอนเอียงไปทางด้านบวก
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT toString(toYear(published_utc)) AS year, count() AS tagged_insights,
round(100.0 * countIf(JSONExtractString(ins,'sentiment')='negative') / count(), 1) AS negative_pct
FROM global_markets.stocks_news ARRAY JOIN insights AS ins
WHERE JSONExtractString(ins,'sentiment') != ''
GROUP BY year ORDER BY yearบทความที่มีความรู้สึกเชิงลบมีสัดส่วนใกล้เคียงกับ 19.1% ของจำนวนป้ายทั้งหมดในปีล่าสุด และรูปแบบนี้ยังคงปรากฏต่อเนื่องตลอดช่วงเวลาที่ศึกษา วันที่มีความกลัวในกลุ่มตัวอย่างนี้คือวันที่ตลาดมีอารมณ์เชิงบวกน้อยที่สุดเท่าที่มีข้อมูล ไม่ใช่ช่วงเวลาที่เกิดความตื่นตระหนกอย่างรุนแรง นั่นคือข้อมูลดิบ ส่วนการทดสอบคือสิ่งที่ตลาดทำในลำดับถัดไป
การทดสอบ: สิ่งที่เกิดขึ้นตามหลังความกลัวและความโลภ
สำหรับทุกวันที่มีการวัดค่าอารมณ์ เราได้วัดผลตอบแทนของ S&P 500 ในช่วง 5, 20 และ 60 วันทำการถัดไป จากนั้นจึงแบ่งวันออกเป็นกลุ่มที่กลัวที่สุดหนึ่งในสิบ (most fearful tenth), กลุ่มที่โลภที่สุดหนึ่งในสิบ (most greedy tenth) และกลุ่มที่อยู่ระหว่างกลาง แล้วจึงหาค่าเฉลี่ยของผลตอบแทนล่วงหน้าภายในแต่ละกลุ่ม
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH sent AS (
SELECT toDate(published_utc) AS d,
(countIf(s='positive') - countIf(s='negative')) / (countIf(s='positive') + countIf(s='negative')) AS net
FROM (SELECT published_utc, JSONExtractString(ins,'sentiment') AS s
FROM global_markets.stocks_news ARRAY JOIN insights AS ins
WHERE JSONExtractString(ins,'sentiment') != '')
GROUP BY d HAVING countIf(s='positive') + countIf(s='negative') >= 20
),
spyd AS (
SELECT toDate(toTimeZone(window_start,'America/New_York')) AS d,
argMax(toFloat64(close), toTimeZone(window_start,'America/New_York')) AS c
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker='SPY' AND window_start >= '2024-01-01'
AND (toHour(toTimeZone(window_start,'America/New_York'))*60 + toMinute(toTimeZone(window_start,'America/New_York'))) BETWEEN 570 AND 959
GROUP BY d
),
spy AS (
SELECT d, c, leadInFrame(c,5) OVER w AS c5, leadInFrame(c,20) OVER w AS c20, leadInFrame(c,60) OVER w AS c60
FROM spyd WINDOW w AS (ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 60 FOLLOWING)
),
j AS (
SELECT s.net AS net, (spy.c5/spy.c-1)*100 AS f5, (spy.c20/spy.c-1)*100 AS f20, (spy.c60/spy.c-1)*100 AS f60
FROM sent s INNER JOIN spy ON s.d = spy.d WHERE spy.c60 > 0
),
qt AS (SELECT quantile(0.1)(net) AS p10, quantile(0.9)(net) AS p90 FROM j)
SELECT multiIf(net <= (SELECT p10 FROM qt), 'Extreme fear (least upbeat)',
net >= (SELECT p90 FROM qt), 'Extreme greed (most upbeat)',
'In between') AS market_mood,
count() AS days,
round(avg(f5),2) AS fwd_5d_pct,
round(avg(f20),2) AS fwd_20d_pct,
round(avg(f60),2) AS fwd_60d_pct
FROM j GROUP BY market_mood
ORDER BY multiIf(market_mood='Extreme fear (least upbeat)',0, market_mood='In between',1, 2)ในช่วงสองเดือนหลังจากนั้น วันที่มีความกลัวให้ผลตอบแทนนำหน้าวันที่มีความโลภอย่างชัดเจน S&P 500 มีค่าเฉลี่ยอยู่ที่ 6.35% ในช่วง 60 วันทำการหลังจากค่าความกลัวอยู่ในระดับสุดโต่ง เทียบกับ 2.85% หลังจากค่าความโลภอยู่ในระดับสุดโต่ง โดยมีวันปกติอยู่ระหว่างกลางที่ระดับ 4.03% การจัดลำดับนี้สอดคล้องกับหลักการที่ว่า ตลาดที่มีความรู้สึกเชิงลบเป็นจุดเข้าซื้อที่ดีกว่า และตลาดที่มีความรู้สึกเชิงบวกเป็นจุดเข้าซื้อที่แย่กว่า
เมื่อพิจารณาในระยะสั้น ภาพจะเริ่มไม่ชัดเจน ในช่วงห้าวันถัดไป กลุ่มที่มีความกลัวและความโลภมีผลตอบแทนต่างกันเพียงเศษเสี้ยวของเปอร์เซ็นต์ และในช่วงยี่สิบวัน กลุ่มที่มีความโลภจะเริ่มนำหน้าเล็กน้อย ความแตกต่างจะปรากฏชัดเจนขึ้นเมื่อถึงจุดสองเดือน แต่ละกลุ่มที่มีสภาวะสุดโต่งมีจำนวนเพียง 45 วัน และมีเหตุการณ์เพียงไม่กี่ช่วงที่ส่งผลต่อค่าเฉลี่ย
ทำไมสิ่งนี้จึงเป็นเพียงเบาะแส ไม่ใช่ข้อสรุป
มีสามปัจจัยที่ทำให้ผลลัพธ์นี้ยังไม่สามารถใช้เป็นข้อพิสูจน์ได้
ช่วงเวลาที่ศึกษาคือตลาดขาขึ้น ทุกกลุ่มมีผลตอบแทนบวกในช่วง 60 วัน และการเปรียบเทียบนี้เป็นการเปรียบเทียบระหว่างผลลัพธ์ที่ดีกับผลลัพธ์ที่ดีกว่า ไม่ใช่การเปรียบเทียบระหว่างกำไรกับขาดทุน กฎที่ตั้งใจใช้เพื่อป้องกันความโลภในช่วงใกล้จุดสูงสุดนั้น ไม่มีจุดสูงสุดให้ทดสอบในกรณีนี้
วันที่มีความกลัวมักจะเกิดขึ้นหลังจากที่ตลาดปรับตัวลดลงมาแล้ว เมื่อมีการรายงานข่าวเชิงลบรวมตัวกัน การดีดตัวกลับจากจุดเหล่านั้นอาจเป็นเพียงการกลับเข้าสู่ค่าเฉลี่ย (mean reversion) ตามปกติ มากกว่าจะเป็นผลจากการคาดการณ์ล่วงหน้าจากความรู้สึกในข่าว การแยกแยะสองสิ่งนี้ออกจากกันจำเป็นต้องใช้ข้อมูลมากกว่าเพียงแค่ชุดวันที่ที่กระจัดกระจาย
และกลุ่มตัวอย่างยังมีขนาดเล็ก ช่วงเวลาสองปีครึ่ง โดยมีเพียง 45 วันในแต่ละสภาวะสุดโต่ง ถือเป็นฐานข้อมูลที่แคบเกินกว่าจะนำมาอ้างอิงถึงทุกตลาดในทุกยุคสมัย ช่วงเวลาเดียวตั้งแต่ปี 2024 ถึง 2026 เป็นเพียงการสุ่มตัวอย่างหนึ่งชุด ไม่ใช่ประชากรทั้งหมด
สิ่งที่การทดลองนี้สรุปได้นั้นมีขนาดเล็กกว่าและมีประโยชน์น้อยกว่าตัวหลักการเอง นั่นคือ ข้ออ้างนี้สามารถวัดผลได้ ข้อความที่มักถูกใช้เป็นคำคมสามารถเปลี่ยนเป็นตัวเลข ตรวจสอบกับแถบข้อมูล และนำมาคำนวณใหม่ได้เมื่อข้อมูลความรู้สึกเพิ่มขึ้น สำหรับในขณะนี้ ทิศทางของข้อมูลยังคงเป็นไปตามแนวทางของ Buffett
คำถามที่พบบ่อย (FAQ)
การซื้อเมื่อคนอื่นกลัวได้ผลจริงหรือไม่?
ในกลุ่มตัวอย่างปี 2024-2026 วันที่มีความกลัวที่สุดตามมาด้วยผลตอบแทนเฉลี่ย 60 วันของ S&P 500 (6.35%) ที่สูงกว่าวันที่มีความโลภที่สุด (2.85%) ในช่วงเวลาที่สั้นกว่า ช่องว่างนี้เกือบจะปิดลง และกลุ่มตัวอย่างยังมีขนาดสั้น ข้อมูลนี้จึงถือเป็นเพียงการสนับสนุนในเชิงทิศทางมากกว่าจะเป็นข้อพิสูจน์
ดัชนีความกลัวและความโลภสร้างขึ้นอย่างไร?
สร้างจากป้ายระบุความรู้สึกรายบทความในฟีดข่าวของเรา: คือจำนวนบทความเชิงบวกในแต่ละวันลบด้วยจำนวนบทความเชิงลบ แล้วหารด้วยผลรวมทั้งหมด ค่าที่ต่ำคือตลาดที่มีความรู้สึกเชิงลบ และค่าที่สูงคือตลาดที่มีความรู้สึกเชิงบวก
ทำไมการทดสอบจึงเริ่มในปี 2024?
ป้ายระบุความรู้สึกในฟีดข่าวเริ่มมีตั้งแต่ปี 2024 ซึ่งทำให้ช่วงเวลาที่วัดผลได้มีประมาณสองปีครึ่ง
นี่คือคำแนะนำในการลงทุนหรือไม่?
ไม่ใช่ นี่คือการวัดผลข้อมูลในอดีตที่มีข้อจำกัดระบุไว้ชัดเจน ทั้งเรื่องช่วงเวลาที่สั้น ป้ายข้อมูลที่มีแนวโน้มเป็นบวก ตลาดขาขึ้น และความเป็นไปได้ของการกลับเข้าสู่ค่าเฉลี่ย ไม่ใช่กลยุทธ์หรือการพยากรณ์
ทุกตัวเลขในที่นี้มาจากคำสั่งดึงข้อมูล (query) ที่อยู่ด้านล่าง สามารถขยายแผงข้อมูลเพื่อตรวจสอบจำนวนความรู้สึกและผลตอบแทนล่วงหน้า หรือทำการทดสอบด้วยตนเองบนเทอร์มินัลของ Strasmore สำหรับวิธีอื่นในการอ่านความกังวลของตลาด โปรดดูที่ implied volatility; สำหรับเหตุการณ์ความกลัวที่เกิดขึ้นจริงในบันทึกข้อมูล โปรดดูที่ the COVID crash of March 2020