保持簡單。 一套經得起時間考驗、被確實執行的簡單方法,永遠勝過花俏複雜的方法。
本章要比較的六套系統#
本章把「海龜式交易」的常用變形拆開做歷史回測,挑選了六套:
- ATR Channel Breakout:以 ATR 為波動度量的通道突破系統
- Bollinger Breakout:以標準差為波動度量的通道突破系統
- Donchian Trend:突破 + 趨勢過濾
- Donchian Trend with Time Exit:突破 + 趨勢過濾 + 時間出場
- Dual Moving Average:兩條均線交叉買賣,永遠在市場中(多或空)
- Triple Moving Average:三條均線,但只在「同方向」時進場
「該不該回測」?#
許多成功交易者不相信歷史回測(backtesting),認為「過去不會重演」。但作者反問一個問題:
如果不靠過去,你還有什麼資訊可用?
- 即使是裁量型交易者,也是用「個人對歷史價格的詮釋」做交易
- 新手在開始交易前盯著線圖看好幾個月,也是想理解市場的歷史
- 因為他們知道:未來最可靠的指引就藏在過去
電腦回測讓我們能在花費實際資金之前更嚴謹地驗證想法:
- 很多看似不錯的策略,會因預期之外的因素失靈
- 用電腦發現比用真錢發現便宜得多
不信回測的真正理由#
- 回測有許多扭曲方式
- 電腦讓「找出在過去看起來有用、實際上沒用的方法」變得容易
- 但這些問題可解決——只要避開最大陷阱:過度最佳化(overoptimization)(第 13 章詳述)
適當的回測需要經驗與技巧——但這不代表你不該用。
「不能把鋒利的刀子交給小孩」≠「不在廚房裡用銳利的刀」,只要小心使用即可。
回測無法預測未來,但能告訴你某個方法未來繼續獲利的可能性。沒有水晶球的世界裡,這已是最好的工具。
「專家迷思」#
「不要最佳化」這條建議,背後反映的是「專家迷思」(the myth of the expert):
- 真正的專家不需要僵化規則,因為他們理解原理
- 偽專家不理解原理,於是模仿真專家、把建議變成僵化規則
- 識別偽專家的方法之一:寫作不清楚——不清楚的寫作來自不清楚的思考
- 真專家能把複雜概念講得清楚易懂
- 偽專家會跑出 1,000 筆模擬交易,卻沒注意到那些只是兩週短期資料的截面,仍以為可以下結論
不要把「經驗」與「專業」混為一談;不要把「知識」與「智慧」混為一談。
統一的測試條件#
本章的所有測試使用同一組變數,確保差異只來自系統規則本身。
測試的市場組合#
選自高流動性美國市場(與其他更具流動性的市場高度相關者已剔除):
- 澳幣、英鎊、玉米、可可、加幣、原油、棉花、歐元、歐元美元、肉牛飼育、黃金、銅、取暖油、無鉛汽油、日圓、咖啡、活牛、活豬、墨西哥披索、天然氣、黃豆、糖、瑞士法郎、白銀、T-note、T-bond、小麥
選擇美國市場的理由:很多歷史資料供應商把外國市場另外賣,新手較容易重現結果。
資金管理設定#
- 與海龜原規則類似,但激進度減半:
- 海龜:1 ATR = 1% 帳戶資金
- 本章:1 ATR = 0.5% 帳戶資金
- 口數計算:0.5% × 帳戶資金 ÷(市場 ATR 對應金額)
測試期間#
1996/1 至 2006/6(後段也會延伸到 2006/11 比較)。
六套系統的具體規則#
ATR Channel Breakout#
- 中軸:350 日收盤價的移動平均
- 上軌:中軸 + 7 ATR
- 下軌:中軸 − 3 ATR
- 進場:前一日收盤穿越上軌 → 隔日開盤做多;穿越下軌 → 做空
- 出場:收盤回穿 350 日均線
此系統由交易員 Mark Johnson 在 traderclub.com 上以 PGO(Pretty Good Oscillator)系統推廣,也是 Bollinger Breakout 的變形。

Figure 10-1: ATR Channel Breakout System
Bollinger Breakout#
由 Chuck LeBeau 與 David Lucas 在 1992 年的《Technical Traders Guide to Computer Analysis of the Futures Markets》提出(原書用不同參數)。
- 中軸:350 日收盤平均
- 上下軌:中軸 ± 2.5 個標準差
- 進出場規則同 ATR Channel Breakout

Figure 10-2: Bollinger Breakout System
Donchian Trend#
第 5 章提到的簡化版海龜系統:
- 進場:20 日突破
- 出場:10 日突破
- 趨勢過濾:350 日 / 25 日 EMA
- 25 日 > 350 日 → 只做多
- 25 日 < 350 日 → 只做空
- 停損:與原版海龜一致的 2-ATR

Figure 10-3: Donchian Trend System
Donchian Trend with Time Exit#
Donchian Trend 的變形:
- 用「時間出場」取代突破出場
- 持有 80 天後出場
- 不使用任何停損
這個系統是作者對「進場不重要、只有出場重要」這種說法的回應——後續測試會直接打臉這種觀點。
Dual Moving Average#
最簡單的系統:
- 100 日 MA 與 350 日 MA 交叉時買賣
- 永遠在市場中(不是多就是空)
- 唯一的出場時點:快線再次交叉慢線——同步反向新建部位

Figure 10-4: Dual Moving Average System
Triple Moving Average#
使用 150、250、350 日三條均線:
- 進出場依「150 日 vs 250 日」
- 但只在「150、250 都與 350 同方向」時才會出手
- 不像 Dual Moving Average 永遠持倉

Figure 10-5: Triple Moving Average System
回測結果:時間出場竟然贏了#
Table 10-1 的結論裡,最讓作者震撼的是:
- 時間出場(time-based exit)的表現遠超預期,甚至優於突破出場
- 這直接打臉「系統只看出場」這種說法
- 結論:有 edge 的進場,可以單獨撐起整套系統的獲利
其他重要觀察#
- Donchian Trend 表現相對較弱——突破在海龜年代之後逐漸失去部分優勢,作者推測與「交易者效應」有關(第 13 章)
- Dual Moving Average 反而比 Triple Moving Average 表現更佳
- 「複雜不等於更好」的又一個例子
規則最少的系統表現出乎意料#
- Dual Moving Average、Triple Moving Average、Donchian Trend with Time Exit 都沒設停損
- 違反了「永遠要設停損」這條金科玉律
- 但風險調整後績效一樣好甚至更好
加上停損會怎樣?#
許多交易者無法接受「沒有停損」。但作者的習慣是「直接測試,用具體答案建立信心」。
在 Dual Moving Average 系統上加不同寬度的 ATR 停損(Figure 10-6)#

Figure 10-6: Effect of Stops on the Dual Moving Average System
- 沒有停損 的版本,每一項指標都最佳:CAGR%、MAR、Sharpe、最大回檔、最長回檔
- Triple Moving Average 加任何停損後,每項指標都變差
- Donchian Trend with Time Exit 加上 10 ATR 以上的「超寬停損」會接近沒停損的效果
這直接違反了「停損保護資本」的常識。為什麼?
趨勢跟隨者的回檔,多半不是「進場風險」造成的#
- 短線交易者擔心的是「一連串虧損」
- 趨勢跟隨者主要的回檔來源是 趨勢反轉時的獲利吐回
- 大趨勢之後常出現極為波動的市場,難以有效操作
海龜時代就知道:吐回部分獲利是趨勢跟隨的常態。
對心理素質較弱的海龜來說,看著剛剛賺到的獲利消失,是這種風格中最痛的部分。
但結論依然:對趨勢跟隨者,造成回檔的不是進場風險,而是吐回獲利——進場停損幫不上忙。
延伸測試:到 2006/11 又如何?#
延伸測試到 2006/11(Table 10-2、Table 10-3):
- CAGR% 與 MAR ratio 都顯示這幾個月對趨勢跟隨整體不利
- 最佳系統的最大回檔放大了 50%
- 但「最簡單的時間出場系統」這幾個月幾乎沒變化
- 表現與規則的關係並不直觀
留下兩個關鍵問題:
- 「為什麼結果在短短幾個月內變化這麼大?」
- 「如何建立一套更容易『符合預期』的系統?」
- 也可以反過來問:「該如何調整你的預期,去配合系統真實會出現的結果?」
這些問題就是下一章「謊言、漫天大謊與回測」的入口——回測結果與真實交易差距的成因,以及如何縮小這個差距。