本篇介紹的是手動回測,不涉及量化回測的內容。配圖截取了我的一箇中長期交易策略在近三年內的回測表現,僅供參考。

一、什麼是回測?

將一套完整的交易策略在一段歷史行情中模擬交易,得到這段時間內交易策略的各類參數以及資金曲線。回測得到的數據是排除了心態、執行力、環境等因素影響得到的交易策略表現的上限。如果附加其他任何因素會降低表現。

也可以理解爲,在心態、執行力、環境都盡力做好的條件下,才能逼近回測時交易策略的表現。所以按照回測收益率對比實盤收益率,能夠從側面反映出心態和執行力等因素的影響程度。

二、爲什麼要回測?

通過回測,得到過去一段時間內交易系統的表現。這個表現根據交易系統的特點包含不同參數,包括交易時間、交易方向、入場點位、出場點位、止損設置、單筆風險、收益、盈虧比、總盈虧等基本參數。如果記錄得較爲詳細,也可以包含入場出場條件判斷細節,發生時的市場環境等。

通過對這些數據的分析,可以達到以下三個目的:

1.掌握交易策略在過去一段時間內表現的上限。

2.調整參數,優化策略。

3.通過真實數據建立對交易策略的信心,解決執行時的心態問題。

三、怎麼回測?

回測很簡單,只要能找到歷史數據,就按照交易策略中規定的條件在對應的時間週期內尋找交易條件就好了。只不過這個過程通過手動來執行會非常耗費時間和精力。

但交易策略在最初被設計出來時,都是根據經驗或者理論設置的初始值。初始值必須在足夠長時間的回測下,才能逐漸被優化。

交易策略中每一個參數都是凝聚了交易者心血的結晶。比如爲什麼從3倍ATR止盈修改成2.5倍ATR止盈,可能是在回測了20年的交易數據後,發現後者的長期表現遠優於前者,於是調整成2.5ATR。如果不回測,是沒辦法做出這個調整的。

所以回測方法不難,就是對着歷史行情逐筆交易地記錄、分析、調整參數。真正考驗的是交易者日復一日堅持的品質。

四、回測注意點

1.回測畢竟不是實盤,實盤時未來行情走勢是未知的。而回測時後續走勢已定,此時要假裝不知道後續行情地判斷是否入場,是很難不受影響的。很可能針對走出來的行情就多找找入場理由,對沒走出來的行情就多找找不入場的理由。

所以最好在回測時蓋住後續行情,或者使用看盤工具的回測功能,進行行情回放。儘量準確地對交易條件做判斷。這是保證回測數據客觀的關鍵。

2.回測的時間要足夠長,至少回測兩輪牛熊,才能基本確定策略的平均表現。這一點也很重要。大部分交易策略都只是在捕捉市場中的某一類行情,有的在趨勢行情中表現很好,但是陷入震盪行情就會出現連續止損。相反有的策略適合於震盪市,趨勢行情反而會虧損。

所以要讓回測的行情儘可能多地涵蓋各類走勢,就需要儘可能拉長時間。但也不是無限地拉長,畢竟回測是十分耗費精力的。能夠說明問題,經歷兩輪牛熊交替就可以了。