|
很多外匯新手在學寫策略時,會把「參數調得越多、回測績效越好」當成努力方向。這正是過度擬合最容易上當的地方。本文只做概念說明,不推薦任何進場、出場或參數設定。
目錄
01過度擬合是什麼:把巧合當規律
02先懂兩個底層概念:參數與回測
03參數多了,怎麼「逼出」好看的回測
04常見誤區:樣本內好,不代表未來會好
05它衡量什麼,不是什麼
過度擬合是什麼:把巧合當規律
過度擬合(overfitting)來自統計學與機器學習,原本是指模型把訓練資料裡的隨機雜訊也學進去,導致對新資料的表現變差。在交易策略裡,回測就是把歷史行情拿來「訓練」;若為了讓曲線好看而增加太多參數,策略就可能只是在背歷史考題。它衡量的不是策略有沒有用,而是貼合歷史的程度是否超過了真實規律。例如,一個只靠單一長期均線的策略大致能描述趨勢;當你再加上十幾個微調參數,反而可能只是在追隨那一段行情的特定跳動。
先懂兩個底層概念:參數與回測
- 參數:策略裡可以調整的旋鈕,例如移動平均線的週期、停損距離、進場時段等。每個參數多一個選項,策略能畫出的曲線就多一種。
- 回測:把策略套用到過去一段行情,算出假設的績效。回測數字好壞,常常被新手誤當成未來保證。
- 樣本內:用來調整參數的那段歷史。樣本外:完全沒拿來調整、只用來檢驗的另一段歷史。這兩個詞是判斷過度擬合的關鍵。
這兩個概念放在一起,就能看出過度擬合的來源:回測樣本內績效同時包含「真實規律」與「隨機雜訊」;參數越多,模型越有本領把雜訊也記下來。簡單寫成: 歷史績效 = 真實規律 + 雜訊
參數多了,怎麼「逼出」好看的回測
以下為假設示範,不是任何真實策略或操作建議。假設一個簡單的外匯策略只有 1 個參數:短均線週期。回測一段樣本內期間,勝率 55%;換到樣本外,勝率 48%。接著,你把參數增加到 10 個:快線、慢線、出場均線、停損點數、時間過濾、動量門檻等。樣本內勝率變成 82%,看起來非常強;但同樣的 10 參數版本放到之前那一段樣本外,勝率只剩 35%。這個對比顯示,樣本內越漂亮,樣本外越可能崩壞,因為多出來的參數把歷史雜訊也當成了訊號。 以 10 個參數的例子來說,過程大概是這樣: - 先用同一段樣本內資料反覆測試不同參數組合。
- 選出樣本內勝率最高的一組。
- 這組高勝率有一部分是記住了那段行情的特殊噪音。
- 換到沒被調整過的樣本外,那些噪音不再重複,勝率就大幅下降。
假設:參數數量不同的策略,樣本內與樣本外勝率對比。
常見誤區:樣本內好,不代表未來會好
- 誤以為參數越多越聰明:其實是在記錄過去發生的特定巧合,而不是歸納可重複的規律。
- 回測曲線越平滑、最大回撤越小,越要懷疑:真實行情本來就有不規則波動,過於漂亮的曲線常是過度貼合的結果。
- 用同一段歷史反覆調整參數,等於先背好考題再拿同一份考卷評分;這樣的高分沒有預測意義。
- 樣本外檢驗如果也一再拿來調整,它就會變成第二個樣本內,失去獨立檢驗的價值。
它衡量什麼,不是什麼
過度擬合提醒你的是「策略對歷史的貼合程度是否超過了真實規律」,它不預測行情方向,也不代表你該用幾個參數。當回測數字太漂亮時,先問一句:這是規律,還是巧合?這才是新手最該帶走的判斷力。 |