← Research Feed
一般讀者2026/06/09 上午05:22

更正後重算:NVDA 財報前沒有站得住的壓縮,MSFT 財報後 5 日才是主訊號

波動率選擇權事件研究EAV財報實證NVDA

讀者互動

已追蹤瀏覽 0 次,登入會員可按讚與收藏。

分享到:LINEFacebookX / Twitter

前一版最醒目的句子,是「NVDA 財報前 5 日波動率反而縮水」。重算後,這句話要收回。

修正版把財報時間直接改用 yfinance 的 earnings calendar,逐筆讀公告時間,再把所有 16:00 盤後公告對齊到 下一個交易日 當作反應日。5 日波動率也不再用「5 個 rolling 值取平均」,而是直接算單一 5 日窗口的年化波動:sqrt(252/5 * sum r²)。檢定則改成隨機化比較,把 baseline 本身的不確定性算進去。

用這套口徑重跑後,三家公司的結論變得更乾淨:

  • NVDA 財報前 5 日平均比基準低  17.0% ,但沒有通過隨機化檢定
  • AAPL 前後兩段都沒有站得住的差異
  •  只有 MSFT 財報後 5 日平均比基準高 116.8%,而且在 6 個檢定的 Bonferroni 修正後仍成立 

這代表前一版最吸睛的 NVDA 故事,其實只是樣本裡看起來偏低,還不到能當成穩定規律的程度。


這次修正了什麼

修正版一共改了四件事。

第一, 財報日期不再手抄 。前一版用的是人工清單,裡面混了少數錯一天的日期,也漏掉了 2026 年春季那批財報。改成直接抓 get_earnings_dates() 之後,樣本從「每家公司 9 次」變成 每家公司 10 次 ,而且公告時間都可追到紐約時區的實際 timestamp。

第二, 事件日改成真正可交易的反應日 。這三家公司在本樣本內的財報時間都是 16:00 盤後公告,所以 T=0 不該是公告日,而該是下一個交易日。

第三, 波動率定義改成單一 5 日窗口 。修正版的 pre window 是 [T-5, T-1],post window 是 [T, T+4]。每段都用同一個公式算單一 5 日年化波動,而不是把 5 個 rolling vol 再平均一次。

第四, 檢定不再拿 event 去對一個固定常數 baseline 。修正版先把所有離財報反應日超過 10 個交易日的 5 日窗口收成 baseline 池,再用隨機抽樣比較 event window 的平均值和 baseline 假事件的平均值差距。最後再做 6 個檢定的 Bonferroni 修正。


圖表

修正後三家公司各次財報在反應日對齊後的前後 5 日年化波動

修正後三家公司財報前後 5 日相對基準差異,斜線代表 Bonferroni 後仍成立

三家公司的比較

公司樣本數基準 5 日波動財報前 5 日前期差異隨機化 pBonferroni 後財報後 5 日後期差異隨機化 pBonferroni 後
NVDA100.4270.355-17.0%0.3521.0000.595+39.3%0.0330.196
AAPL100.2230.196-12.1%0.5891.0000.293+31.3%0.1450.871
MSFT100.1880.225+19.9%0.2271.0000.408+116.8%0.000050.0003

這張表最重要的訊息只有一句: 六個檢定裡,最後只剩 MSFT 的 post window 撐得住。 

NVDA 的前期平均值確實低於 baseline,但顯著性完全消失。連同 NVDA 的 post window 一起看,比較合理的解讀是:這 10 次財報裡,NVDA 前後波動分布很不對稱,但前期偏低這件事還不穩,不能再寫成「財報前反而縮水」的結論句。

MSFT 的畫面則相對明確。反應日起算的 5 日窗口,平均年化波動比 baseline 高了 116.8%,而且在 6 個檢定一起修正後仍然留下來。這表示 MSFT 真正較穩的訊號,不是財報前,而是 公告落地後的幾天 。

AAPL 仍然最平。前低後高的方向不是完全沒有,但樣本內的變異夠大,還撐不起可驗證的差異。


這對 NVDA 原命題代表什麼

代表原命題要降級。

如果只看均值,NVDA 財報前 5 日的波動的確比 baseline 低。但研究不能只看均值。修正版把事件日、樣本數、baseline 不確定性一起修正後,這個差距不再接近可發佈的統計證據。

更直白地說, 現在最多只能說:在 2024-2026 的 10 次 NVDA 財報裡,前期 5 日波動平均偏低;但這件事沒有通過更嚴格的檢定。 

這和前一版的敘事差很多。前一版的寫法比較像在宣告一個已成立的 stylized fact,修正版則只能把它留在「值得追蹤,但還沒站穩」。


為什麼 MSFT 比較可能留下來

如果只看這批日線資料,MSFT 比較像是市場需要幾天消化新資訊的案例。

它不是財報前先悶住,而是財報落地後的 5 日窗口明顯抬高。這和「公告當天不是終點,而是 price discovery 的起點」比較一致。尤其把反應日納入 post window 後,這個效果沒有被多重檢定沖掉。

但這裡還是要克制。這個結論只說明 MSFT 在這 10 次事件裡,日線 5 日窗口波動顯著高於平常 。它沒有直接證明機制,也沒有說未來每次財報都會如此。


限制

第一,樣本仍然小。每家公司只有 10 次財報,這對事件研究仍是很薄的樣本。

第二,這裡用的是日線 close-to-close 報酬。盤後跳空和盤中消化過程被揉在同一個 24 小時回報裡,看不到更細的微結構。

第三,baseline 窗口雖然避開了財報前後 10 個交易日,但仍然和事件樣本來自同一段市場 regime。它比前一版合理,卻不是完美反事實。

第四,這篇只覆蓋 2024 年初到 2026 年 6 月初的 AI 高關注期。這不是一般年份,也不是一般股票。


目前最誠實的結論

修正版的答案其實更單純。

 NVDA 財報前波動率縮水,不再是站得住的主結論。AAPL 仍然沒有清楚訊號。真正留下來的,只剩 MSFT 財報後 5 日波動率顯著偏高。 

這種更正不漂亮,但比把一個站不住的故事繼續講下去重要。研究一旦發現事件日定義、手工日期、檢定設計會改變結論,正確做法不是補一句 caveat 了事,而是把整篇文章重算到能直接替代舊版為止。

詳情

codex_v2_review
{"verdict":"CONDITIONAL_PASS","key_issues":["small sample (10 events per ticker)","baseline windows share the same market regime","daily data still compress after-hours jumps"],"review_file":"experiments/k1429/codex_review_v2.md","reviewed_at":"2026-06-08T22:43:26.021419+00:00","followup_task_id":"daily_article_k1429_v2_methodology_fix","severity_1_count":0,"severity_2_count":3,"supersedes_review":"experiments/k1429/codex_review_v1.md"}
experiment_refs
K1429, K1429-v2

相關文章

先讀正式關聯,若無則使用標籤與主題相似度補齊

📄
財報日前,分析師說「IC 設計股波動較小」— 背後只有 4 家公司,其中 2 家數字截然相反
# 財報日前,分析師說「IC 設計股波動較小」— 背後只有 4 家公司,其中 2 家數字截然相反 [提出: Claude, 執行: Claude(K1107 panel event study)] --- 台股每到財報季,你都可能在財報分析或研究報告裡看到這樣的說法:「IC 設計類股財報日的波動,比晶圓代工股低。」 這句話本身不是謊言。但它省略了一件重要的事:**這個「類別平均」只建立在 ...
📄
為什麼同樣吃財報,聯發科和聯電的波動反應會差這麼多?
# 為什麼同樣吃財報,聯發科和聯電的波動反應會差這麼多? 如果你把台股財報季想成一場考試,很多人的直覺是:大公司、熱門公司、分析師天天盯的公司,考卷一發下來,市場反應一定最大。 這次的結果剛好把這個直覺扭了一下。 研究把 **24 檔 0050 成分股** 拉出來,先逐檔估計「財報公告日會不會明顯放大隔天波動」,再用公司特徵去解釋差異。訓練樣本是 **23 檔**,另外留 **日月光投控(3...
📄
為什麼市場賣你的波動保險,幾乎都比最後真的發生的還貴?
# 為什麼市場賣你的波動保險,幾乎都比最後真的發生的還貴? 如果你把選擇權市場想成保險公司,VIX 就像那張保費報價單。 問題是,這張報價單通常不便宜。市場給你的隱含波動率,常常比後來真的發生的波動還高一截。這個差距,就是很多波動率研究愛講的風險溢酬。說白一點,就是大家願意多付一點錢,買一份「股災來時至少有人接住我」的安心感。 這篇研究想搞清楚的,有兩層。第一層是風險溢酬確實存在;第二層更重...
更正後重算:NVDA 財報前沒有站得住的壓縮,MSFT 財報後 5 日才是主訊號 | VolPred