交易策略要怎麼驗證?
最簡單的答案有五步。第一,寫出市場、進場、出場、部位與停止條件。第二,替這套規則加上版本和開始日期。第三,每筆符合條件的交易都用相同欄位記錄,不只保留最順利的案例。第四,將回測、模擬與真實交易分開。第五,在固定樣本後檢查結果、費用、規則遵守情況與原始交易。
驗證不是證明策略未來一定獲利。它只是檢查規則是否清楚、資料是否完整,以及過去的樣本在什麼條件下出現什麼結果。市場會改變,交易成本也會改變。任何歷史結果都可能無法在下一段期間重現。若規則還無法讓你判斷某筆交易是否符合,就先修正定義,不要急著累積更多數字。
先把交易策略寫成可核對的規則
策略至少要回答七個問題:交易哪個市場、在什麼時段觀察、哪些條件才算成立、何時不進場、如何決定預定數量、怎麼定義出場、什麼情況停止使用這個版本。不要只寫「順勢交易」或「突破就買」。這些名稱很容易理解,卻不足以在交易後核對。
規則不必很長,但每一項都要能從當時資料判斷。若使用技術指標,寫下名稱和參數。若使用價格型態,寫出完成條件。若有主觀判斷,保存當時的文字與截圖,承認它是主觀欄位。把不確定的部分標出來,比用模糊句子假裝完全客觀更有用。
| 欄位 | 要寫的內容 | 複盤目的 |
|---|---|---|
| 適用範圍 | 市場、商品、方向、時段 | 避免混入不同條件 |
| 進場條件 | 可觀察的必要條件與排除條件 | 確認是否真的符合 |
| 出場條件 | 計畫失效、管理與結束方式 | 比較計畫和實際 |
| 部位規則 | 計算輸入、限制與取整方式 | 重建預定大小 |
| 費用假設 | 手續費、稅、滑價或其他成本 | 避免只看毛結果 |
| 版本資訊 | 版本號、開始日、改動原因 | 分開不同規則 |
固定版本,避免一邊測試一邊改答案
每次修改進場、出場、時段、參數或部位方式,都建立新版本。舊版不要刪除,並留下修改日期、原因與預計何時檢查。若沒有版本,幾個月後的統計會混合不同規則,平均值看起來完整,實際上卻回答不了任何一個清楚問題。
在測試期間遇到例外時,先把例外記錄下來,不要立刻改規則來解釋它。等到原定的檢查點,再決定是否建立新版本。若安全、法規或帳戶限制需要立即停止,當然應先停止,但仍要保存停止原因。版本管理的目的不是僵化,而是讓每次改動留下可追蹤的邊界。
回測、模擬和真實交易要分開
回測使用歷史資料,模擬交易使用即時或接近即時的市場但不發生真實成交,真實交易則會受到實際訂單、流動性、費用、滑價與心理反應影響。三者回答的問題不同,不能直接放在同一個績效數字中。每筆紀錄都要標出資料類型。
回測容易出現資料挑選、參數反覆調整與忽略成本的問題。CME Group 收錄的回測研究提醒,多次嘗試後只保留最好的結果,可能讓歷史績效看起來比實際更強。這不代表回測沒有用,而是每次測試的假設、資料範圍與修改次數都值得留下。
模擬交易能檢查你是否理解規則,但未必反映真實成交與壓力。真實交易則應以券商成交回報和帳戶資料為準。不要因為模擬結果穩定就假設真實結果相同。先用小而清楚的觀察問題,比追求一個漂亮的總報酬數字更容易找出流程差異。
每筆交易要同時記計畫和實際
交易前保存策略版本、符合的條件、預定進場、失效條件、預定出場、計算數量與當時截圖。交易中若改變訂單、部位或出場,保留原值,再加上修改時間和原因。交易後補上每筆成交、費用、淨結果與第二張截圖。
也要記錄沒有執行的有效條件,以及執行了但不符合規則的交易。只保存已下單而且結果明顯的交易,會漏掉策略選擇和執行紀律的重要部分。若日誌只收錄一部分交易,請在複盤結果上標示資料不完整,不要把它當成全部活動。
心理標籤要和行動連結。與其只寫「害怕」,不如寫「條件成立後因害怕而提前出場」。感受本身不是策略錯誤,但它可能改變執行。使用固定且少量的標籤,讓之後能比較同一狀態下實際改變了哪些行動。
用哪些數字檢查交易策略
先看交易筆數與資料完整度,再看淨損益、勝率、平均獲利、平均虧損、獲利因子、期望值與回撤。任何比率都要和樣本數並列。勝率高不代表總結果一定好,因為少數大虧損可能超過多次小獲利。平均結果也可能被一筆極端交易或較大的部位主導。
把費用和資金變動分開。手續費、證券交易稅、滑價或其他已知成本要反映在交易結果中。入金、出金、提領與帳戶修正會改變權益,但不是策略損益。不同幣別、不同帳戶或不同資金規則也應分組,否則數字的基準會改變。
查看整體數字後,打開最好的、最差的、最典型的和偏離規則的交易。確認結果是由多筆相近案例形成,還是少數例外造成。接著比較規則遵守與不遵守的樣本,但不要因為差異存在就直接推斷原因。市場、時段、部位與樣本量都可能同時影響結果。
複盤後只改一個能追蹤的部分
完成一個固定樣本後,寫下原本問題、資料範圍、主要結果、限制與下一步。若要修改策略,先選一個部分,例如讓進場條件更清楚、補上成本、或要求每次修改訂單都寫理由。一次改很多項目,下一輪就無法知道哪個改動造成差異。
替新版本設定開始日期和下一個檢查點。不要在連續幾筆虧損後每天改規則,也不要因為短期獲利就提前宣布有效。檢查點可以用交易筆數或時間定義,但必須配合你的市場頻率。樣本不足時,最誠實的結論是還不能判斷。
常見問題是:需要多少筆交易才夠?沒有一個適合所有策略的固定數字。交易頻率、市場狀況、規則複雜度與結果分布都會影響判斷。至少要讓樣本涵蓋你聲稱適用的條件,並在每次結論旁寫出筆數與限制。Proloca 能協助查看已記錄樣本,但不會替你認證策略。
- 把市場、進場、出場、部位和停止條件寫成可核對規則。
- 每次修改都建立新版本,保存日期和原因。
- 分開回測、模擬與真實交易資料。
- 保留符合、未執行與偏離規則的案例。
- 所有統計旁邊顯示交易筆數、費用和資料完整度。
- 從平均值回到原始交易,查看大小、時段與例外。
- 一次只改一個能追蹤的部分,再收集新樣本。
參考資料
以下資料支持交易紀錄、回測限制與臺灣期貨風險管理的說明。它們不保證任何策略的表現。
-
CME Group:Keep a Trade Log
建議保存策略、進出場、時間、技術條件和每日結論,以便回看。
-
CME Group:Backtesting
討論多次測試與資料探勘可能使歷史策略結果被高估。
-
臺灣期貨交易所:認識期貨交易手冊
以臺灣市場脈絡說明期貨、保證金、停損、資金與交易風險。