回測過度擬合是什麼,跟「策略表現真的很好」有什麼不同?
回測過度擬合指的是策略開發者(或自動化參數優化流程)在調整策略邏輯與參數時,不斷針對某一段特定的歷史數據去微調,直到回測結果達到極高的勝率或報酬率。問題在於,市場數據裡除了真正有規律的模式,也包含大量隨機雜訊,過度擬合的策略往往學到的不是「市場的規律」,而是「這段特定歷史數據裡剛好出現的巧合」。
真正表現好的策略,是抓住了具有持續性、能在不同時間段重複出現的市場規律;過度擬合的策略則是精準複製了過去某段特定雜訊的形狀,這兩者在單一段回測報告上可能長得一模一樣(同樣是漂亮的報酬曲線),但拿到新的數據去驗證,前者通常還能維持一定表現,後者的表現往往斷崖式下滑。
回測過度擬合為什麼會發生,是什麼機制導致的?
過度擬合經常發生在策略參數數量過多、或優化過程過度自由的情況下。舉例來說,如果一個策略有十幾個可調參數(進場門檻、出場門檻、停損比例、持倉週期等等),而回測數據的樣本量又不夠大,理論上總能找到一組參數組合,剛好讓這段歷史數據的表現達到近乎完美——但這組參數之所以完美,只是因為它被「量身訂做」去擬合這段特定數據,而不是因為它抓到了真正可重複的市場邏輯。
另一個常見成因是重複測試同一份數據:開發者一次次調整策略、拿同一段歷史數據回測、看結果不夠好又繼續調整,這個反覆試錯的過程本質上是在用「事後諸葛」的方式,讓策略越來越貼合這段已知的歷史,而不是真正提升策略對未知市場的適應能力。
回測過度擬合實際上怎麼被發現,有哪些具體的判斷方法?
業界常用的檢測方法包括樣本外測試(out-of-sample testing)——把歷史數據切成兩段,一段用來開發與調整策略(樣本內),另一段完全不用於調整、只用來驗證最終策略的表現(樣本外)。如果策略在樣本內數據上表現極佳,但樣本外數據上表現明顯變差,這是過度擬合的典型訊號。更嚴謹的做法還包括滾動窗口回測(在不同時間段反覆驗證策略是否都能維持穩定表現)與跨市場驗證(同一套邏輯換到不同的資產或不同的鏈上是否還能運作)。
另一個實用的判斷線索是參數的「合理性」:如果一個策略的最佳參數組合是一些看起來很奇怪、缺乏邏輯解釋的數字(例如停損設在 17.3% 而不是常見的整數比例),這通常代表這組參數是為了擬合特定歷史數據而精算出來的,而不是基於市場邏輯合理推導出來的,這種參數組合往往泛化能力較差。
回測過度擬合對一般用戶有什麼實際影響,該怎麼避免被誤導?
如果一個 DeFAI 產品的行銷素材只展示「回測勝率 90%」這類數字,卻沒有說明這個回測是否經過樣本外驗證,你看到的很可能是一個過度擬合的結果——實際部署後的表現大機率會明顯低於行銷素材展示的數字,這也是為什麼「回測表現亮眼」不能直接等同於「這個策略值得信任」。
實際評估時,值得追問的問題包括:這份回測數據是否公開了樣本外驗證的結果、策略參數的選擇邏輯是否有合理解釋、以及這個策略上線後的實盤表現跟當初回測數字的落差有多大(有落差是正常的,落差過度懸殊才是警訊)。願意誠實揭露這些細節的產品,通常代表團隊本身對過度擬合這個問題有足夠的認知與警覺。
量化交易產業裡曾出現知名案例:某策略在 2015–2019 年的歷史數據上回測年化報酬率超過 80%,但因為參數是針對這段期間反覆優化到極致,2020 年市場結構出現變化後,同一套邏輯實盤表現轉為連續虧損,事後分析發現該策略的多個參數組合缺乏合理的市場邏輯支撐,屬於典型的過度擬合案例。
策略優化本身是必要的過程,適度優化能提升策略對真實市場規律的捕捉能力;但優化過頭會讓策略從「學習市場規律」滑向「精算複製歷史雜訊」,兩者的差別往往只能透過樣本外驗證才能分辨,單看單一段回測報告的表面數字容易被誤導。