教學

交易回測:怎麼驗證你的策略

2026年2月27日
9分鐘閱讀

學會在拿真錢冒險之前,用歷史數據驗證你的交易策略。期貨手動回測與自動回測的逐步指南。

你有一個交易的想法。你覺得它有效。你在圖上看過幾個例子,覺得很有搞頭。問題是:你會憑這種直覺押 $5,000 下去嗎?

答案應該是斬釘截鐵的不會。在你冒險投下任何一塊錢之前,你需要用歷史數據驗證你的策略。回測做的就是這件事:讓你在過去模擬幾百筆交易,看看你的想法到底有沒有真正的統計優勢,還是只是錯覺。

什麼是回測?

回測是把一套交易策略套用在市場的歷史數據上,評估它在過去表現如何的過程。它就像策略的時光機:你退回到幾週、幾個月或幾年前,照著即時交易的方式執行你的計畫。

如果你的策略是「價格回測到前一日的 POC、出現看漲的 pin bar 就買進」,回測可以讓你翻過去 6 個月的每一場交易時段,找出每一次符合條件的地方,並記錄結果。模擬完 100 筆以上的交易之後,你就有具體數據判斷這套策略是賺錢還是賠錢。

回測不預測未來。 它做的是給你統計上的信心。如果一套策略在 200 筆歷史交易中穩定有效,那就有紮實的理由相信它會繼續有效——前提是市場條件沒有劇烈改變。

為什麼回測不能省?

驗證你的優勢(edge)。 沒有回測,你不知道自己是真的有優勢,還是看到的那 5 筆獲利交易純屬運氣。穩定獲利的交易者和賠錢的交易者,差別往往就在於策略的優勢有沒有被驗證過,還是全憑直覺。

建立信心。 當你用真錢連續虧三筆,放棄策略的誘惑非常大。但如果你知道回測裡出現過類似的回撤、後面也都恢復了,你就守得住紀律。對數據的信心會壓過情緒上的懷疑。

找出弱點。 回測會揭露你策略的盲點。也許它在趨勢行情裡表現極好,在盤整裡卻全部吐回去。也許它勝率很高,但風報比低到一筆虧損就抹掉五筆獲利。沒有數據,你永遠不會知道。

手動回測:回放法

手動回測是用你交易平台的回放(replay)功能,在歷史數據上一根 K 棒一根 K 棒往前走,像即時交易一樣做決策。

一步一步怎麼做:

  1. 設定好你的平台。 在 NinjaTrader 上啟用 Market Replay。在 TradingView 上用 Bar Replay 功能。退回到你想測試的區間起點。
  2. 把規則白紙黑字寫下來。 開始之前,明確寫出你什麼時候進場、停損放哪裡、獲利在哪裡了結,以及必須滿足哪些條件。不能有模糊空間。
  3. 一根一根往前走。 不要偷看後面發生什麼事。只根據當下看得到的資訊做決定。
  4. 記錄每一筆交易。 用一份試算表記下:日期、商品、方向(多/空)、進場價、停損、目標、結果(以跳動點和美元計的盈虧),再加一句對這個進場型態品質的註記。
  5. 對自己誠實。 如果你不確定即時交易時會不會做這筆,就標成「存疑」,另外分開分析。

手動回測的優點:

  • 練出你讀圖的眼力
  • 逼你在模擬的不確定性下做決策
  • 不需要寫程式
  • 抓得住每套策略在實務上都存在的主觀成分

缺點:

  • 慢(一個月的數據可能要花好幾個小時)
  • 容易有無意識的偏誤(你的大腦希望這套策略有效)
  • 很長的區間很難重複跑

自動回測:讓機器去做

自動回測需要把你的策略規則寫成程式,讓軟體在歷史數據上自動執行。它更快也更客觀,但需要技術能力。

期貨的主要工具:

平台語言適合
NinjaTrader Strategy AnalyzerNinjaScript(C#)期貨的機械式策略
TradingView Pine ScriptPine Script快速原型、用指標的策略
Sierra ChartACSIL(C++)複雜策略、高頻
Python(backtrader/zipline)Python深入的統計分析、投資組合

自動回測的工作流程:

  1. 把進場、停損和目標的規則寫成程式
  2. 選好商品與歷史區間
  3. 執行回測
  4. 分析結果報告
  5. 需要時調整參數(小心不要掉進曲線擬合)

自動回測可以在幾秒內跑完上千筆交易,給你大得多的統計樣本。不過它有個重要限制:抓不太住主觀成分。如果你的策略仰賴「讀懂盤面脈絡」或「感覺動能」,就很難寫成程式。

你必須量的關鍵指標

只知道策略「賺」或「賠」是不夠的。你需要具體的指標來評估它的品質。

指標量的是什麼理想數值
勝率(Win Rate)獲利交易的百分比風報比 1:1 要 >50%,2:1 要 >40%
平均風報比(Average R:R)平均的獲利/虧損比理想 >1.5:1,最低 >1:1
獲利因子(Profit Factor)毛獲利 ÷ 毛虧損>1.5 不錯,>2.0 很好
最大回撤(Max Drawdown)從高點算起最大的資金跌幅看你的承受度;<20% 算保守
期望值(Expectancy)每筆交易的平均獲利為正(任何正數都行)
夏普比率(Sharpe Ratio)用波動度調整後的報酬>1.0 可接受,>2.0 很好

期望值的公式:

Expectancy = (Win Rate x Avg Win) - (Loss Rate x Avg Loss)

如果你的期望值為正,代表你的策略有統計優勢。數字越高越好。每筆 $50 的期望值,意思是平均而言,你每開一筆交易可以期待賺 $50(已經把虧損算進去了)。

獲利因子大概是最直覺的指標。如果它是 2.0,代表你每虧一塊錢就賺兩塊。獲利因子低於 1.0,就代表這套策略是賠錢的。

樣本數:你需要多少筆交易?

這是最常見的錯誤之一:測了 20 筆交易,看到 14 筆賺錢,就宣告策略有效。樣本這麼小,你面對的可能只是運氣。

通則:至少 100 筆交易。 到 100 筆,才開始有統計意義。到 200-300 筆,樣本才算穩固。少於 50 筆,你的結論基本上沒有用。

另外,要確保你的樣本涵蓋不同的市場條件:強勢多頭趨勢、空頭趨勢、橫盤整理、高波動期和低波動期。一套只在多頭趨勢裡有效的策略,不是一套完整的策略。

實務建議:當沖至少測 6 個月的數據,波段交易測 2-3 年。如果你做指數期貨(NQ、ES),要涵蓋有重大事件的區間(FOMC、非農就業數據、財報)。

你必須避開的嚴重錯誤

曲線擬合(過度最佳化)

這是第一號錯誤。你一次又一次調整策略參數,直到它在歷史數據上跑出完美的結果。問題是,你是為過去最佳化,不是為未來。

曲線擬合的徵兆:

  • 你的策略有 10 個以上可調參數
  • 某個參數改動 1 個跳動點,結果就整個崩掉
  • 結果「好到不像真的」(獲利因子 5 以上)
  • 在某一段期間完美,在另一段慘不忍睹

怎麼避開:用樣本外(out-of-sample)方法。把數據切成兩半,用前半段(樣本內)開發策略,再用後半段(樣本外)驗證。如果兩邊結果接近,就沒有曲線擬合。

忽略滑價與手續費

做回測時,很容易假設成交完美。但現實中你會遇到滑價(下單到成交之間價格會動)和每一筆交易的手續費。做剝頭皮時,這些摩擦成本可以把一套賺錢的策略變成賠錢的。

期貨的實務原則:每筆交易加上 1 個跳動點的滑價,以及你的平台/券商的實際手續費。如果加上這些成本後策略還是賺錢,那它就夠穩固。

倖存者偏誤

你只在「你知道行得通」的商品或期間測試策略,無意識地避開難做的時期。解法很簡單:把可用的整段期間全部測過,不留例外。

前推測試:通往實盤的那座橋

回測告訴你策略在過去有效。前推測試(也叫紙上交易或模擬交易)則向你確認它在當下、在即時行情裡、沒有偏誤的情況下也有效。

流程很簡單:

  1. 你的回測已經跑出正面結果
  2. 你用即時行情操作策略,但不用真錢(模擬或紙上交易)
  3. 你用跟回測完全一樣的方式記錄每一筆交易
  4. 做完 30-50 筆之後,把前推測試的指標和回測的指標拿來比對

如果指標接近(在合理的誤差範圍內),你的策略就通過驗證了。如果前推測試的結果明顯更差,可能是有曲線擬合、決策上的情緒偏誤,或市場條件不一樣了。

Prop Firm:有切身利害的前推測試

這就是 Prop Firm 在整個流程裡完美卡進來的位置。當你的策略通過回測、也通過模擬的前推測試之後,Prop Firm 的評估就是下一層驗證。

評估會逼你在真實規則下交易(最大回撤、獲利目標、最少交易天數),還帶著賠掉評估費用的壓力。這是在用大筆真金白銀之前,最終極的前推測試。

這個階段最適合的帳戶,是那些規則有彈性品質價格比又好的。如果你的策略已經被回測驗證過,一個規則合理的評估不應該構成障礙。

如果這是你第一次接觸 Prop Firm,去看我們的從這裡開始指南;或者用比較工具找出最搭配你驗證過的策略的那個帳戶。你也可以看看目前的折扣,把第一次評估的成本壓下來。

一套完整的驗證流程

講清楚一點,這是每個認真的交易者都該走的完整流程:

  1. 想法 → 提出一個交易假設
  2. 手動回測 → 用回放功能測試(100 筆以上)
  3. 指標分析 → 勝率、風報比、獲利因子、最大回撤
  4. 自動回測(選用) → 如果你會寫程式,把樣本放大
  5. 模擬前推測試 → 即時行情、不用真錢,做 30-50 筆
  6. Prop Firm 評估 → 第一次有切身利害的測試
  7. 資金帳戶 → 用受管理的資金實際交易

跳過步驟會讓你付錢買教訓。沒有捷徑。

常見問題

在實盤之前,我應該花多久做回測?

當沖策略至少要 2-4 週的密集回測。你需要至少 100 筆模擬交易,而且指標為正。如果你急著上場,就會在真實帳戶上用本來可以避免的虧損付出代價。

手動回測和自動回測,哪個比較好?

兩者各有各的位置。手動比較適合帶主觀成分的策略(價格行為、盤面脈絡的解讀)。自動比較適合規則精確、純機械式的策略。理想做法是先手動、把策略摸透,再自動、用更大的樣本驗證。

我的回測要不要把 Prop Firm 的手續費算進去?

要,一定要。把平台費、行情數據費和滑價都算進去。如果你的策略只有在沒有摩擦成本時才賺錢,那它就不是一套可行的策略。期貨的手續費通常是每口來回 $3-5。

如果我的回測結果平平,該怎麼辦?

獲利因子落在 1.0 到 1.3 之間,代表優勢很邊際,很可能撐不過真實環境。分析策略在哪裡虧錢:在盤整?在高波動?替那些條件加一個過濾器,或修改你的進出場規則。如果調整之後還是平平,就丟掉它、換另一個想法。

我可以用 TradingView 做期貨回測嗎?

可以,TradingView 有期貨的歷史數據,Bar Replay 功能也能做手動回測。自動的部分,Pine Script 拿來做原型還不錯。不過如果要用逐筆(tick-by-tick)數據做專業回測,NinjaTrader 或 Sierra Chart 比較強,因為它們處理的數據更細緻。

#backtesting#strategy#trading#historical data

相關文章

準備好開始了嗎?

比較最頂尖的期貨 Prop Firm,找到最適合你的一家。