iT邦幫忙

2026 iThome 鐵人賽

DAY 5
0
Build on Google AI

基本面與技術面組合投資模型建置系列 第 21 篇

實作前向最佳化架構:將資料分為訓練集與滾動樣本外 (OOS) 測試集。

  • 分享至 

  • xImage
  •  

第 22 天 10/06/2026
實作前向最佳化架構:將資料分為訓練集與滾動樣本外 (OOS) 測試集。
在建置 AI 多代理(Multi-Agent)量化交易系統的演進中,我們依序完成了標準化 BigQuery 資料模擬迴圈、消除 Point-in-Time 財報與存活者偏誤、納入交易摩擦、3 年初始回測、代理權重校準,以及在 2022 年極端市場下的壓力測試與偏誤控制。
然而,如果只使用「固定歷史區間」優化出來的參數,策略終究難以避免對過去數據產生過度擬合(Overfitting),導致策略一上線實盤就發生績效斷崖式下跌。為了建立具備自我進化與抗適應能力的模型,「實作前向最佳化架構(Walk-Forward Optimization, WFO)」是將靜態模型升級為動態自我校準系統的最終關鍵。
一、 訓練集(In-Sample)與滾動樣本外(OOS)測試集的差距
在實作前向最佳化(WFO)時,我們將歷史資料切分為「滾動訓練集(In-Sample, IS)」與「滾動樣本外測試集(Out-of-Sample, OOS)」。例如:使用 12 個月滾動訓練集優化代理參數,並在接下來的 3 個月樣本外測試集執行盲測,隨後將視窗向後推進 3 個月,不斷循環。

┌─────────────────────────────────────────────────────────────┐
│ 前向最佳化 (WFO) 滾動視窗示意 │
├─────────────────────────────────────────────────────────────┤
│ [ Train: Year 1 ] ──> [ OOS: Q1 ] │
│ [ Train: Year 1 Q2 - Year 2 Q1 ] ──> [ OOS: Q2 ] │
│ [ Train: Year 1 Q3 - Year 2 Q2 ] ──> [ OOS: Q3 ]│
└─────────────────────────────────────────────────────────────┘

在實務運作中,訓練集(IS)與樣本外(OOS)之間通常會展現出顯著的「績效衰減差距(Performance Degradation Gap)」:

  1. 績效指標落差(Sharpe & Return Decay)
    • 現象:訓練集中的夏普比率(Sharpe Ratio)可能高達 2.5,勝率 65%;但到了 OOS 測試集,夏普比率往往會顯著修正至 1.2~1.5,勝率降至 52%~55%。
    • 主因:訓練集的參數尋優演化會自動捕捉到該段歷史中的「特異雜訊(Noise)」。一旦進入 OOS,雜訊改變,僅有真正具備穩健性的 Alpha 因子能夠存活並獲利。
  2. 市場狀態切換造成的「時空斷層(Regime Shift)」
    • 現象:若訓練集剛好處於低波動升段(如 2021 年),優化出的參數會偏向高槓桿與動能追漲;但接續的 OOS 測試集若突逢升息或盤整行情(如 2022 年),OOS 的表現會瞬間陷入嚴重的最大回撤(MDD)。
    二、 如何調整參數以達成模型最佳化?
    為了縮小 IS 與 OOS 之間的績效差距,並確保模型在未知的未來市場中維持最佳化,參數調整與架構設計必須遵循以下四大核心機制:
  3. 採納「參數高原(Parameter Plateau)」而非「單點極值」
    • 錯誤做法:選擇在訓練集中回測績效最高(最高 Sharpe/Return)的那組「單點最佳參數」(Peak Parameter Set)。這組參數多半是嚴重過擬合的產物。
    • 正確做法:在參數空間(Parameter Space)中尋找平坦的高原區域。例如:將技術代理的均線週期在 $N \pm 20%$ 範圍內進行敏感度測試(Sensitivity Analysis),選擇鄰近區域表現皆穩定且標準差最小的參數組合。即便其 IS 績效不是第一名,但在 OOS 測試中具備極高的抗噪韌性。
  4. 導入「動態評估指標 (WFE)」限制參數搜尋空間
    • 使用前向最佳化效率(Walk-Forward Efficiency, WFE)作為評估參數調整的硬性門檻:
    $$\text{WFE} = \frac{\text{Annualized Return}{\text{OOS}}}{\text{Annualized Return}{\text{IS}}}$$
    • 若策略的 $\text{WFE} < 50%$,代表參數過度擬合訓練集。此時系統必須強制簡化模型——減少代理模組數量、限制神經網路或樹狀模型的深度(Depth)、或拉長訊號確認的週期。
  5. 多代理評分權重的「滾動式 IC 動態調整」
    在 WFO 架構中,多代理(基本面、技術面、情緒面、風控)的權重不應由全域優化決定,而是根據每個滾動訓練集(IS)內的資訊係數(Information Coefficient, IC)與夏普貢獻度進行動態重分配:
    • 若最近 12 個月(IS)技術代理的 IC 值快速下降,系統會在下一個 3 個月(OOS)自動降低 $w_{\text{tech}}$,並將權重移轉至 IC 較為穩定的基本面代理或風控代理。
  6. 設定「狀態感知」與「訓練視窗重置」機制
    • 視窗長度(Window Length)調校:訓練集視窗並非越長越好。過長的視窗會引入過時的市場架構,過短的視窗則易受短期的雜訊干擾。
    • 動態重置(Event-driven Re-training):當系統監測到當前市場波動率(如 VIX)或資產相關性超過訓練集均值 2 個標準差時,自動觸發重新訓練與參數校準(Re-calibration),而非僵化等待 3 個月滾動週期結束。
    三、 結論
    前向最佳化架構的靈魂在於承認「過去的最佳參數並不等於未來的最佳參數」。透過觀察訓練集與滾動樣本外(OOS)測試集的差距,並以參數高原選擇、WFE 效率指標約束、動態 IC 權重重分配來調整參數,才能打造出具備自我進化能力、真正能適應市場變化的實盤 AI 交易引擎。

上一篇
驗證里程碑 3:驗證偏誤控制;在歷史回撤事件(例如 2022 年市場下跌)期間對代理進行壓力測試。
系列文
基本面與技術面組合投資模型建置 共 21 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言