72lab
免費註冊
指標實戰與回測· 第 3 / 7 課· 8 分鐘

回測一個均線策略 Backtesting

把規則交給歷史資料檢驗:報酬、勝率、最大回撤,一個都不能少。

本課免費,註冊帳號後即可使用互動模擬

每節課都有可以拖曳、播放的互動模擬和隨堂小測驗,註冊後免費使用,並自動儲存學習進度。下面先附上本課的文字版講解。

還沒想好?先看看第一課(免註冊)「多指標共振」。

文字版講解 · 指標實戰與回測 第 3 課「回測一個均線策略」

把規則交給歷史資料檢驗:報酬、勝率、最大回撤,一個都不能少。

把規則交給歷史檢驗

回測就是用歷史資料模擬「如果當時嚴格按規則交易,會怎樣」。成績單要看報酬,也要看最大回撤、勝率、交易次數,並和「買入持有」比較。

不能用你當時還不知道的資訊

收盤價算出的訊號,只能在下一根開盤成交。用當天收盤訊號按當天開盤價成交,就是未來函數——回測會好看得離譜。

別忘了交易成本

每次買賣都要付手續費,還會有滑價。交易越頻繁,成本吃掉的越多:一個毛報酬不錯的策略,扣掉成本可能就不賺錢了。

本課要點

  • 回測 = 用歷史資料模擬嚴格按規則交易的結果。
  • 看報酬的同時,一定要看最大回撤和交易次數,並與「買入持有」比較。
  • 計入手續費和滑價;訊號用收盤價算出,就只能在下一根開盤成交,避免使用「未來資料」。
  • 回測好看不代表未來能賺錢,它只是排除壞主意的第一道關卡。

動手試試

下面這些練習可以在本課的互動模擬裡完成:

  1. 保持「趨勢市」和 5 / 20,點「執行回測」:策略報酬跑贏買入持有了嗎?最大回撤誰更小?
  2. 看下方例題卡:A 報酬 30% 但回撤 50%,B 報酬 20%、回撤 10%。按「報酬 ÷ 回撤」,哪個更好?
  3. 開啟「未來函數」:作弊版多賺了多少?游標移到一筆交易,看看它在哪一根「偷看」了收盤價。
  4. 切到「震盪市」再回測,並把手續費拉到 0.3%:來回交易的成本如何吃掉報酬?

小測驗與解析

1. 策略 A 報酬 30%、最大回撤 50%;策略 B 報酬 20%、最大回撤 10%。風險調整後通常哪個更好?
答案:B。B 每承受 1 份回撤換來的報酬高得多。
2. 回測中用當天收盤價算出訊號,卻按當天開盤價成交,犯了什麼錯誤?
答案:使用了未來資料。開盤時你還不知道收盤價。
3. 單邊手續費 0.1%,策略一年完成 200 筆交易(每筆一買一賣)。把手續費簡單相加,大約會吃掉多少報酬?
答案:約 40%。200 筆 × 2 次單邊 × 0.1% ≈ 40%。回測裡忽略成本,頻繁交易的策略會被嚴重高估。

本課術語

  • 回測 (Backtest):用歷史資料模擬按規則交易的過程,用來評估策略表現。
  • 佣金 / 手續費 (Commission):每次買賣時付給券商的費用,會直接減少你的利潤。
  • 死亡交叉 (Death Cross):短期均線(或指標快線)從上向下穿過長期均線(慢線)。
  • 淨值曲線 (Equity Curve):帳戶資金隨時間變化的曲線。
  • 黃金交叉 (Golden Cross):短期均線(或指標快線)從下向上穿過長期均線(慢線)。
  • 未來函數 (Look-Ahead Bias):回測時不小心用到了當時還不可能知道的資料,會讓結果虛高。
  • 最大回撤 (Max Drawdown):淨值從歷史最高點到之後最低點的最大跌幅。
  • 賺賠比 (Profit Factor):全部獲利交易之和 ÷ 全部虧損交易之和。
  • 滑價 (Slippage):預期成交價與實際平均成交價之間的差。大市價單吃掉多檔掛單時產生。
  • 停損 (Stop Loss):價格朝不利方向走到預設位置時自動平倉,用來限制最大虧損。
  • 勝率 (Win Rate):獲利交易次數佔全部交易次數的比例。
回測一個均線策略(指標實戰與回測) · 72lab