Beli Saat Orang Lain Takut: Analisis Data
Warren Buffett menyarankan untuk serakah saat orang lain takut. Kami membuat pengukur rasa takut dari sentimen berita untuk menguji apakah hari penuh ketakutan mampu mengalahkan pasar.
Aturan praktis Warren Buffett yang paling sering dikutip adalah merasa takut ketika orang lain serakah dan serakah ketika orang lain merasa takut. Hal ini dianggap sebagai kebijaksanaan yang sudah mapan. Secara prinsip, ini adalah klaim yang dapat diuji: jika suasana pasar secara luas dapat diukur, maka return yang mengikuti momen paling takut dan paling serakah dapat disusun dan dibandingkan. Halaman ini menjalankan pengujian tersebut, menggunakan pengukur rasa takut dan keserakahan yang dibangun dari sentimen ratusan ribu artikel berita.
Membangun pengukur rasa takut dari berita
Setiap artikel pada aliran berita kami memiliki tag sentimen per perusahaan, positif, negatif, atau netral, yang terpasang saat artikel diterbitkan. Penghitungan tag tersebut di seluruh pasar setiap hari mengubah berita menjadi pembacaan suasana harian. Sentimen neto satu hari di sini adalah jumlah positif dikurangi jumlah negatif, dibagi total keduanya: pembacaan di dekat batas atas rentangnya adalah aliran berita yang optimis dan serakah, dan pembacaan di dekat batas bawah adalah hal terdekat dengan rasa takut yang dimiliki data ini.
Ada dua batasan yang perlu diperhatikan sebelum melihat return. Tag sentimen hanya ada sejak tahun 2024, sehingga jendela pengukuran hanya sekitar dua setengah tahun, bukan satu siklus pasar penuh. Selain itu, tag tersebut cenderung optimis.
SQL tepat di balik setiap angka
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 yearArtikel yang pesimis mencapai hampir 19.1% dari total tag pada tahun terakhir, dan pola ini konsisten sepanjang jendela waktu tersebut. Hari yang penuh ketakutan dalam sampel ini adalah aliran berita yang paling tidak optimis yang tersedia, bukan hari dengan kepanikan total. Itulah bahan mentahnya. Pengujiannya adalah apa yang dilakukan pasar selanjutnya.
Pengujian: apa yang mengikuti rasa takut dan keserakahan
Untuk setiap hari dengan pembacaan suasana, return S&P 500 diukur selama 5, 20, dan 60 hari perdagangan berikutnya. Hari-hari tersebut kemudian dibagi menjadi sepersepuluh paling takut, sepersepuluh paling serakah, dan semua yang ada di antaranya, lalu forward return dirata-ratakan dalam setiap kelompok.
SQL tepat di balik setiap angka
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)Selama dua bulan berikutnya, hari-hari penuh ketakutan memberikan hasil yang jauh lebih unggul daripada hari-hari serakah. S&P 500 rata-rata mencapai 6.35% selama 60 hari perdagangan setelah pembacaan ketakutan ekstrem, dibandingkan dengan 2.85% setelah pembacaan keserakahan ekstrem, dengan hari-hari biasa di antaranya sebesar 4.03%. Peringkat ini sesuai dengan pepatah tersebut: aliran berita yang penuh ketakutan adalah titik masuk yang lebih baik, dan aliran berita yang serakah adalah yang terburuk.
Jika dilihat lebih dekat, gambaran ini menjadi kabur. Selama lima hari berikutnya, kelompok takut dan serakah berada dalam selisih kurang dari satu persen satu sama lain, dan selama dua puluh hari, kelompok serakah sedikit unggul. Pemisahan baru terbuka pada tanda dua bulan. Setiap kelompok ekstrem hanya memiliki 45 hari, dan beberapa rangkaian episode singkat mendorong angka rata-rata tersebut.
Mengapa ini adalah petunjuk, bukan keputusan akhir
Tiga hal membuat hasil ini belum menjadi bukti kuat.
Jendela pengamatan berada pada pasar yang sedang naik. Setiap kelompok mencatat return 60 hari yang positif, dan perbandingannya adalah antara hasil yang baik dengan hasil yang lebih baik, bukan antara keuntungan dengan kerugian. Aturan yang dimaksudkan untuk melindungi dari keserakahan menjelang puncak pasar tidak memiliki puncak untuk diuji di sini.
Hari-hari penuh ketakutan juga cenderung muncul setelah pasar sudah turun, saat pemberitaan pesimis berkumpul. Pemulihan dari titik-titik tersebut sesuai dengan mean reversion sederhana, sebagaimana hal itu sesuai dengan prediksi dalam sentimen itu sendiri. Memisahkan keduanya membutuhkan lebih dari sekadar sebaran tanggal.
Dan sampelnya terlalu sedikit. Dua setengah tahun, dengan 45 hari di setiap ekstrem, adalah basis yang sempit untuk klaim tentang setiap pasar di setiap era. Satu rentang waktu dari 2024 hingga 2026 adalah satu sampel, bukan keseluruhan populasi.
Apa yang dipastikan oleh latihan ini adalah hal yang lebih kecil dan lebih berguna daripada pepatah itu sendiri: klaim tersebut dapat diukur. Kalimat yang biasanya menjadi frasa kutipan dapat diubah menjadi angka, diaudit terhadap data, dan dijalankan kembali seiring bertambahnya catatan sentimen. Untuk saat ini, arahnya sesuai dengan Buffett.
FAQ
Apakah membeli saat orang lain takut benar-benar berhasil?
Dalam sampel 2024-2026 ini, hari-hari paling takut diikuti oleh rata-rata return S&P 500 60 hari yang lebih tinggi (6.35%) daripada hari-hari paling serakah (2.85%). Pada jendela yang lebih pendek, celah tersebut hampir tertutup, dan sampelnya singkat; ini berdiri sebagai dukungan arah, bukan bukti.
Bagaimana pengukur rasa takut dan keserakahan dibangun?
Dari tag sentimen per artikel pada feed berita kami: artikel positif setiap hari dikurangi artikel negatif, dibagi total keduanya. Pembacaan rendah berarti aliran berita pesimis, pembacaan tinggi berarti aliran berita optimis.
Mengapa pengujian dimulai pada tahun 2024?
Tag sentimen pada feed berita dimulai pada tahun 2024, yang menetapkan jendela pengukuran sekitar dua setengah tahun.
Apakah ini saran investasi?
Bukan. Ini adalah pengukuran data masa lalu dengan batasan yang dinyatakan, jendela waktu yang singkat, tag yang condong optimis, pasar yang sedang naik, dan kemungkinan mean reversion, bukan sebuah strategi atau prediksi.
Setiap angka di sini berasal dari query tersimpan di bawahnya. Perluas panel apa pun untuk mengaudit hitungan sentimen dan forward return, atau jalankan pengujian yang sama sendiri pada terminal Strasmore. Untuk cara terkait dalam membaca kecemasan pasar, lihat implied volatility; untuk peristiwa ketakutan nyata dalam catatan, lihat crash COVID Maret 2020.