我們自己那批 ML-vs-HAR 的 t 值,有一半的門檻是假的
讀者互動
登入會員可按讚與收藏。
持續追蹤這項研究
收藏、追蹤與明日提醒只保存必要識別資料,可在會員中心檢視或刪除。
研究資訊不構成個人投資建議;提醒僅代表研究更新,不代表交易訊號。
倉庫裡有一長串長得很像的實驗。K1312 拿 GARCH-LSTM 比 HAR,K1263 是 KAN-GARCH-MIDAS,K1524 排了一個 HAR / GJR / RandomForest 的 3×3 矩陣,K1593 上 CNN-Transformer。收尾動作都一樣:算一個 Diebold–Mariano t 值,看它有沒有過 1.96,然後寫結論。
這些實驗回答的是「誰預測得比較準」。K1747 問的是前面那一題,而且是一題沒人問過的題:
當比較的其中一邊,它的超參數、變數集合、擬合出來的係數,全部來自同一段有時間順序的資料,那個名目 5% 的 DM 檢定,還是每 20 次錯一次嗎?
答案是不是。而且錯的方向是多拒絕,也就是說,過去那些 t 值裡有一部分的「顯著」是估計誤差生出來的。
怎麼量的
量 size 只能在「自己的虛無假設按建構為真」的設計裡量。K1747 造了五個這樣的設計,跑蒙地卡羅,數每個程序實際拒絕的比例,再拿它跟名目 0.05 對。每格報 Wilson 95% 區間跟蒙地卡羅標準誤,主要格子 1000 次重複,昂貴的格子 400 次。主種子 42。
資料是 SPY 與 QQQ 的日 OHLC,2005-01-01 到 2026-08-01,10,856 列,快照的 sha256 釘在 results 裡。變異數代理是 Garman–Klass 全距估計量,不是 5 分鐘已實現變異數,免費日線只能做到這裡,它不含隔夜變異,也假設盤中無漂移。
有一件事這份實驗做得比一般 size 稽核嚴: 同一個拒絕率,在不同設計裡意義不一樣 。在只有母體虛無為真的設計裡,固定視窗程序的虛無按建構是假的,所以它在那裡拒絕叫檢定力,不叫犯錯。results 的每一格都帶 null_type 標籤,裁決閘會看那個標籤,不會把檢定力算成 size 失準。巢狀比較配非平方誤差損失的那些格子,倉庫早就知道沒有可用的推論程序(error_log class G、K1701),這次直接標成 diagnostic-only,不進裁決。
20 列進得了裁決。這是全文所有數字的分母。
第一個發現:連對照組都過不了
D1 是理智檢查。兩邊是同一個模型、同一組變數、對稱的 OLS,任何合理的檢定在這裡都應該貼著 5%。
| 設計 | 樣本 R | 檢定 | 損失 | 實測拒絕率 | Wilson 95% CI | 精確二項 p |
|---|---|---|---|---|---|---|
| D1 對稱理智檢查 | 250 | 一般 DM | 對數平方誤差 | 7.3% | [5.85%, 9.08%] | 0.0017 |
| D1 對稱理智檢查 | 1000 | 一般 DM | 對數平方誤差 | 7.2% | [5.76%, 8.97%] | 0.0023 |
| D1 對稱理智檢查 | 250 | 一般 DM | QLIKE | 5.4% | [4.16%, 6.98%] | 0.56 |
| D1 對稱理智檢查 | 1000 | 一般 DM | QLIKE | 4.6% | [3.47%, 6.08%] | 0.61 |
對數平方誤差那兩列,區間下緣都在 5% 以上。樣本從 250 加到 1000,7.3% 只降到 7.2%——這不是小樣本問題,加資料不會讓它自己好。
QLIKE 那兩列是貼著的。這個對照在後面會一直出現。
第二個發現:模型愈複雜,偏差愈大,而且加資料會加劇
D2 是巢狀設計、母體虛無為真:小模型就是真實資料生成過程,大模型多出來的係數在虛無下全為零。這種結構下一般 DM 按建構就是偏心的,Clark–West 就是為了修這件事發明的,所以這裡的主統計量是 CW,不是 DM。
拒絕率隨大模型的參數量 p 走:
| 樣本 R | 參數量 p | Clark–West 拒絕率 | Wilson 95% CI | 重複次數 |
|---|---|---|---|---|
| 250 | 20 | 8.9% | [7.29%, 10.83%] | 1000 |
| 250 | 100 | 12.9% | [10.96%, 15.12%] | 1000 |
| 250 | 200 | 13.0% | [10.05%, 16.65%] | 400 |
| 1000 | 20 | 11.0% | [9.19%, 13.06%] | 1000 |
| 1000 | 100 | 13.9% | [11.90%, 16.16%] | 1000 |
| 1000 | 200 | 14.8% | [11.63%, 18.55%] | 400 |
兩個方向都往壞的走。橫著看,p 從 20 到 100,拒絕率從 8.9% 跳到 12.9%。直著看,R 從 250 加到 1000,同樣的 p=20 從 8.9% 惡化到 11.0%。
第二個方向值得停一下。多給樣本讓事情變糟,聽起來反直覺,但在展開視窗(expanding window)下是合理的:樣本變長,用來估參數的那一段也變長,估計誤差在損失差裡累積的結構跟著改變,而 HAC 的頻寬是照 n 開三次方走的,追不上真正的相依長度。把頻寬改成不小於再擬合週期(21 天)的寬版本,D1 那格從 7.3% 再惡化到 9.9%——所以這不是頻寬選太小,是這個組合本身就不對。

第三個發現:三種修法沒有一種修好
這是本實驗真正的結論,也是最不好看的那一段。
裁決規則要求的不是「看起來比較接近 5%」。要算有效,一個 learner-aware 程序必須同時做到四件事:對應的一般檢定確實失準、在同一批重複上做配對 McNemar 檢定且 Holm 校正後顯著、拒絕次數嚴格少於一般檢定、而且它自己的 Wilson 區間要蓋住 5%。
符合資格的配對檢定有 34 個。通過的有 0 個。
不只是沒修好,是修反了。以 D3(非巢狀、方法層虛無為真)為例:
| 設計格子 | 損失 | 一般 DM | ep_split (π=0.25) | split (π=1) | GW 固定視窗 |
|---|---|---|---|---|---|
| D3 R=250, p=20 | 對數平方誤差 | 11.3% | 23.9% | 34.3% | 11.7% |
| D3 R=250, p=200 | 對數平方誤差 | 9.5% | 28.0% | 45.5% | 12.5% |
| D3 R=1000, p=20 | 對數平方誤差 | 13.2% | 18.2% | 28.8% | 11.0% |
| D3 R=250, p=20 | QLIKE | 5.7% | 18.8% | 27.3% | 6.9% |
| D3 R=1000, p=20 | QLIKE | 4.4% | 12.3% | 18.2% | 4.8% |
樣本外分割那兩欄,拒絕率是一般 DM 的兩到四倍。名目 5% 的檢定在 45.5% 的重複裡拒絕一個為真的虛無,那不是檢定,那是隨機數產生器加一個學術外觀。
實驗另外把每一格的實測拒絕率,對上該格自己量到的 A4 過度風險代理量(Escanciano–Parra 的中心化 sqrt(P) * Var_t[log m_hat - mu_log],逐格測量、不假設):

所以裁決標籤是 CONDITIONAL_ORDINARY_MISSIZED_BUT_NO_SUPPORTED_FIX:一般檢定確實失準(20 列裡 14 列 Holm 後仍超標),但這份設計裡沒有任何一個受支持的替代程序把它修回名目。
唯一站得住的那一格
上面那張表最右邊兩欄裡藏著一個東西:GW 固定視窗配 QLIKE,6.9% 跟 4.8%,後者的區間 [3.6%, 6.3%] 蓋住 5%。
翻遍 D1 到 D3 的主統計量,同一個組合反覆出現在沒失準的那一側。這跟理論說的對得上:Giacomini–White 的固定有限估計視窗,虛無本來就是「已估計程序」的等預測能力,估計誤差是虛無的一部分而不是要被忽略的干擾;QLIKE 則是 Patton 意義下對代理誤差穩健的損失。
但這不是本實驗的裁決,它沒有走完那四道條件。誠實的說法是:這是一個有理論支撐、在多個格子裡一致的觀察,不是被認證的修法。
這對倉庫裡的舊結論是什麼意思
實證那一側跑了 48 個主要比較(2 資產 × 3 學習器 × 2 損失 × 4 預測方案)。名目層次有 20 個顯著,Holm 家族校正後剩 8 個。單是多重性就吃掉六成。
再疊上上面那些 size 數字,在 D2、D3 那種複雜度下,名目 5% 的實際犯錯率落在 9% 到 15%——那 8 個裡還有多少是真的,這份實驗沒有回答,也不該假裝回答。
能說的是這句: 過去那些「t = 2.7,顯著」的收尾,門檻本身沒有它宣稱的那個意義 。要重新判定舊結論,得回去看每個實驗的預測方案跟損失函數落在上面哪一格。這是接下來要做的事,不是這篇能一次做完的。
這份實驗自己的限制
- R2 的解讀規則是在 v1 結果與 FAIL 審查都已知之後才定的。它的精確二項、McNemar 與 Holm 輸出是事後敏感度分析,不是預先登記的驗證性證據。results 裡
analysis_status逐字寫著post_hoc_after_v1_results_were_known。 - 變異數代理是 Garman–Klass 全距估計量,不是 5 分鐘已實現變異數。
- learner-aware 程序是照 Escanciano–Parra 定理 3.1 與其 80/20 建議、加上 GW 固定視窗,在本倉庫重新實作的設計層配方,不是對該論文估計量的複製。它們表現差,不能直接當成那篇論文的方法失效。
- D5 樹模型補充整組被排除在形式推論之外:GBRT 挑戰者在資訊集上巢狀、在模型類上不巢狀,Clark–West 的推導結構不適用,那些數字只是方向性證據。
- D3 的 p=200 QLIKE 兩格重複數只有 400 且區間仍蓋住 5%,標為 underpowered,不進裁決。
實驗 :K1747(experiments/K1747/),裁決 PASS,重跑規格 reproduce_spec.json
資料 :yfinance 日 OHLC,SPY / QQQ,2005-01-01 至 2026-08-01,10,856 列
表 :tables/mc_size_table.csv 圖 :figures/mc_size_by_cell.png、figures/size_vs_a4_rate.png
主要文獻 :Escanciano & Parra (2026, JBES); West (1996, Econometrica); Giacomini & White (2006, Econometrica); Clark & West (2007, J. Econometrics); Diebold & Mariano (1995, JBES); Patton (2011, J. Econometrics)