驗證基礎
OOS 驗證能告訴你甚麼,又不能告訴你甚麼。
OOS 驗證是把已凍結規格套用到未參與選擇的資料。它可揭示過度擬合與不穩定,但不能證明未來交易必然盈利。
開始前先確認
學習目標
- 能夠解釋:分隔必須真實
- 能夠解釋:乾淨測試需要保存甚麼
- 能夠解釋:結果代表甚麼
分隔必須真實
研究資料可用來形成假設並選定固定規格;邏輯、參數、交易時段、成本及資料源記錄完成前,不可查看保留期間。
例子:若模型以截至六月的資料選出,看完七月結果後再修改門檻,七月便不再是 OOS。
乾淨測試需要保存甚麼
可重現測試會在評估前保存 protocol,也會保留失敗結果。
- 凍結程式碼與參數 hash
- 資料期間、來源及成本假設
- 在看到結果前寫下 pass/fail 規則
- 保存所有嘗試,而非只留勝出者
結果代表甚麼
乾淨結果只能顯示一個固定假設在指定條件下是否通過一段未見資料,不能消除市場、執行、平台或資料風險;發布後仍須持續監控實時營運。
常見錯誤
- 只看結果,忽略文章列明的適用範圍與假設。
- 看完結果後才修改規則,卻仍把原資料稱為未見證據。
Trader Checklist
- 凍結程式碼與參數 hash
- 資料期間、來源及成本假設
- 在看到結果前寫下 pass/fail 規則
- 保存所有嘗試,而非只留勝出者
實作練習
選擇一個自己的交易例子,按「OOS 驗證能告訴你甚麼,又不能告訴你甚麼。」列明的原則寫下一頁規則、證據與停止條件。
甚麼證據會推翻結論
若關鍵假設在支援範圍內無法重現、控制在實際執行中不可行,或新的樣本外證據與結論持續相反,便應推翻或收窄本文結論。