2014年5月15日 星期四

回測的陷阱

版上程式交易的人比例上比較少一點,但是我還是分享一下以前做的回測結果。
常常有人PM問我要如何做回測或交易的問題,例如這個問題:

我想請問關於程式回測除了要注意是否最佳化,參數高原,Walk Forward Analysis,交易次數是否有參考性以外
我有部分採用資金管理,將每筆下單風險控制於2%內,也有分批加碼策略,以同樣口數加碼
請問是否還需要留意什麼呢?
我目前以2006當作今年來編寫程式,當2006有獲利時以相同的參數及周期回測2007-2010 每年獲利都還很平均
並沒有產生哪一年大賺或哪一年大賠現象
主要我是想請教您 我還需要注意哪些 可以讓回測更有參考性呢?

我的回答是:因為歷史資料是死的,市場行情是每天在變,用一個死的東西去套活的東西,你想結果會是什麼?不要對未來的結果有太大的期望,這是我想告訴你 的。我覺得如果有什麼可以給你的建議的話,那就是不要太相信你的資料,也不要太相信回測結果,回測只是參考而已。帳戶裏面的錢才是真的獲利。

我做了一個回測說明我的觀點,我用1996-2005的10年的歷史資料找出表現最佳的10個市場,做成一個投資組合A,然後再用同樣的歷史資料找出表現 最差的10個市場,做成另一個投資組合B,分別回測兩者的績效,之後再用2006-2010的資料做out of sample的回測,你猜那一個組合的回測結果會比較好?是A或B?
先看最佳的10個市場和最差的10個市場的in sample的回測

這是最佳的10個市場的組合A的回測
B10A.png

再來看最差的10個市場的組合B的回測
W10A.png

看完這兩個回測的結果,我想應該不會有人會去選組合B去交易吧,讓我們來看看同樣的系統同樣的組合,在後面5年的表現是如何?

這是最佳的10個市場的組合A的Out of Sample回測
B10.png
還算有賺錢,但是和原來前10年的績效差很多

再來看看原來最差的10個市場的組合的Out of Sample回測
W10.png
可以發現跌破大家的眼鏡,過去最差的組合可以打敗過去回測最佳的組合,而且績效超過一倍,看完這個回測,你應該會了解為何我會回答

如果有什麼可以給你的建議的話,那就是不要太相信你的資料,也不要太相信回測結果,回測只是參考而已。帳戶裏面的錢才是真的獲利


這個回測也回答了這篇裏面的一個很重要的問題:請問一下,有先剔除掉這系統無法賺錢的市場嗎??不然放一個本來就不會獲利的標的,這樣只是拖累績效吧??
http://www.coco-in.net/thread-10081-1-1.html

沒有留言:

張貼留言