更正後重算:NVDA 財報前沒有站得住的壓縮,MSFT 財報後 5 日才是主訊號
讀者互動
已追蹤瀏覽 0 次,登入會員可按讚與收藏。
前一版最醒目的句子,是「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 日 | 前期差異 | 隨機化 p | Bonferroni 後 | 財報後 5 日 | 後期差異 | 隨機化 p | Bonferroni 後 |
|---|---|---|---|---|---|---|---|---|---|---|
| NVDA | 10 | 0.427 | 0.355 | -17.0% | 0.352 | 1.000 | 0.595 | +39.3% | 0.033 | 0.196 |
| AAPL | 10 | 0.223 | 0.196 | -12.1% | 0.589 | 1.000 | 0.293 | +31.3% | 0.145 | 0.871 |
| MSFT | 10 | 0.188 | 0.225 | +19.9% | 0.227 | 1.000 | 0.408 | +116.8% | 0.00005 | 0.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
相關文章
先讀正式關聯,若無則使用標籤與主題相似度補齊