把總經數據加進台指期波動預測,八年半、兩千多天,沒有看到它變好
讀者互動
登入會員可按讚與收藏。
持續追蹤這項研究
收藏、追蹤與明日提醒只保存必要識別資料,可在會員中心檢視或刪除。
研究資訊不構成個人投資建議;提醒僅代表研究更新,不代表交易訊號。
台股的波動會不會受總體經濟影響?這個問題聽起來幾乎不用問。利率在動、景氣在轉、出口數字忽好忽壞,市場當然跟著晃。
所以一個很自然的想法是:既然總經會影響波動,那把總經數據放進波動預測模型裡,預測應該會更準。學術上這類做法有個成熟的架構,讓模型有兩層,一層抓「這幾天在震什麼」,另一層用月頻的總經數據抓「這段時間的波動基準水準大概在哪」。聽起來很合理。
我們把這個想法放到台指期日盤上測了一輪。結論是: 沒有看到它變好。
怎麼測的
測試對象是台指期日盤的 5 分鐘已實現波動。預測從二〇一八年一月二日開始,一路到二〇二六年八月二十七日,總共 2102 個預測日 。每一天都只用當天以前的資料去預測未來,固定往前抓 1478 個交易日 當訓練窗,每 21 個交易日 重新估一次參數。
總經數據的處理特別小心。官方統計發布有時間差,所以模型拿到的每一筆月頻總經數字,都刻意延後 2 個月 才允許使用,確保我們沒有拿到當時根本還沒公布的數字。
比較的對手是「只看價格自己」的標準波動模型。兩邊看的是同一批日子、同一個標的,唯一的差別就是有沒有把總經那一層加進去。
結果
我們看兩個預測期間:未來一週,和未來一個月。用的是預測誤差指標, 數字越小代表預測越準 。
| 預測期間 | 加了總經的版本 | 只看價格的標準模型 | 差距 |
|---|---|---|---|
| 未來一週(2089 天) | 0.2109 | 0.1956 | 加了總經 差 7.80% |
| 未來一個月(2055 天) | 0.2654 | 0.2257 | 加了總經 差 17.62% |
不是「沒有變好」,是 變差 。而且兩個期間都變差。

我們另外用五種不同的資料處理方式重跑(結算日怎麼算、漲跌停鎖死的日子留不留、波動怎麼取平均、要不要調整尺度), 五種的結論完全一樣 ,沒有哪一種讓總經版本翻身。
一個必須講清楚的界線
看到這裡很容易得出「總經數據對預測波動沒有用」這個結論。 這句話比我們的證據強。
任何一個這樣的測試,都只能抓到「夠大」的效果。這個樣本的解析度是:未來一週的預測,要改善 12.57% 以上才抓得穩;未來一個月要 23.18% 以上。比這更小的好處,它本來就看不見,不是不存在,是這個實驗設計沒有能力分辨。
所以正確的說法是: 如果總經數據真能帶來這種量級的改善,這個測試八成會抓到,而它沒有抓到。 至於「有沒有一點點小小的幫助」,這個實驗回答不了,要回答那個問題需要另一種設計。
我們把這個限制寫在這裡,是因為把「沒測到」講成「不存在」,是這類研究最常見也最省事的一種說法。
順手做的一個防呆檢查
做預測模型最容易犯、也最難自己發現的錯,是不小心用到了「當時還不知道的資訊」。那會讓模型在回測裡表現好得不像話。
我們用了一個很笨但很有效的檢查:把所有輸入資料再往後延一天,然後重跑。真正的預測模型拿到更舊的資料,表現一定會 變差 ;如果反而變好,就表示原本的版本偷看了未來。
結果兩個模型都乖乖變差了,加了總經的版本從 0.2109 掉到 0.2341,只看價格的從 0.1956 掉到 0.2167。這代表原本的成績是真的,不是偷看來的。
真正被打敗的是誰
總經那一層失敗,只是這輪測試的一半。另一半是 誰贏了 ——而這個答案,我們已經是第三次撞到了。
全場最難打敗的,是一個簡單到有點好笑的模型:把最近一天、最近一週、最近一個月的已實現波動各取平均,加起來當預測。就這樣。不看總經,不看深度學習,什麼都不看。
不管是加了總經的版本、只看價格的標準模型,還是我們一併測的深度學習模型,在這 2102 天上都輸給它。
這裡要標一個分層。上面那句「總經版本比標準模型差 7.80%」是這個實驗事前凍結、當成主結果來檢定的比較;而「大家都輸給最簡單模型」是 探索性比較 ,不在事前凍結的設計裡。差別在於,事前講定的比較才有完整的多重檢定保護,事後補看的比較沒有。所以前者我們當結論講,後者我們當觀察講。
當觀察講,它仍然值得一提,因為這不是新鮮事。我們先前兩次用完全不同的切入角度測台指期波動,一次是把日盤夜盤拆開分別建模再合成,一次是比較不同模型在日內與全日兩種標的上的表現,最後都落在同一個地方:那個最土的平均法很難打敗。三個獨立的實驗、三個不同的假說,撞到同一面牆。
一次可能是巧合,三次就是這個題目本身的性質。

倒是有一個地方,兩層結構確實贏了一點: 如果第二層不放總經數據,而是放「最近這段時間的已實現波動平均」 ,那它確實比只看價格的標準模型好一些,未來一天好 3.10% 、一週好 3.16% 、一個月好 5.39% (1530 天)。差別在於,這一層裡放的是價格自己的歷史,不是外部的總經數字。
換句話說: 「分成長期和短期兩層」這個結構本身有價值;問題出在長期那層塞了總經數據。
這對一般投資人的意思
三件事。
第一,「有道理」跟「預測得準」是兩回事。 總經確實影響市場波動,這點沒有疑問。但「影響」不等於「可以提前算出來」,等到月頻的總經數字公布,市場早就反應完了,而波動預測要的是明天、下週的事。時間尺度對不上。
第二,模型複雜不等於預測好。 這輪裡最土的那個做法贏了最精緻的那幾個,而這是我們第三次得到同一個答案。波動率預測這個題目上,簡單方法難打敗不是單一實驗的巧合。
第三,看到「加了某某資料,模型變準」的說法時,值得問兩個問題 :測了多少天?有沒有跟最簡單的做法比過?我們這裡測了 2102 天、八年半,包含疫情、升息循環、關稅衝擊,而且跟最土的做法比過,這兩個條件缺一個,結論就不太站得住。
資料與方法 :台指期日盤 5 分鐘已實現波動。樣本外預測期間二〇一八年一月二日至二〇二六年八月二十七日,2102 個預測日,1478 個交易日固定滾動窗,每 21 個交易日重估參數,月頻總經數據延後 2 個月使用。五種資料處理方式的敏感性測試結論一致。模型遞迴實作經過等價性驗證,最大差異為 0.0。本文所有數字取自該實驗的結果檔具名欄位。
懶人包圖組




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