程式交易:回測資料不正確,再多努力也枉然2/Job-Back adjus - 財經
By Jessica
at 2009-05-07T11:03
at 2009-05-07T11:03
Table of Contents
程式交易:回測資料不正確,再多努力也枉然2/Job-Back adjusted換月跳空修正
圖形分析請見:
http://www.wretch.cc/blog/phigroup/15741473
圖:最佳化後的績效-沒有修正換月跳空(沒有Back adjusted)的歷史資料
圖:最佳化後的績效-有修正換月跳空(Back adjusted)的歷史資料
.第二個例子:換月跳空
許多人回測歷史資料時,使用的是沒有修正換月跳空的連續月資料(沒有Back adjusted)。
例如:我們在7月的合約放空一口大台,並在最後交易日前換倉到8月。但由於8月是除息
旺季,所以8月的價格都至少比7月低了100點以上。於是我們回測時,就會抓到原本賺不
到的錢。
使用未修正的連續月資料,就會在放空時,把這樣的跳空當成利潤計算。但換月跳空的影
響多大呢?我們以均線策略為例:
一般來說,近年都會高估10%、20%的獲利,甚至在某些條件下,會高估50%的獲利
我找了一個高估的例子:
2008年1月~2009年3月,最近15個月的資料,以淨利最佳化為例:
1.站上n日均線,則下根k線開盤做多。
2.跌破n日均線,則下根k線開盤做空。
3.不考慮手續費,是為了看策略原型的效果。
請看最上方的圖…
你會發現,約15個月的資料,使用沒有修正的資料回測。「最佳化」後,一口大台就高估
了21.5%的獲利。高估了122600元,613點的行情。一口就是4個月的薪水啊…你怎麼能不
在意呢?
.原因在於?
以歷史來說,7、8、9月是除息旺季,但第二、三季往往是空頭市場。所以均線策略經常
會在第三季時做空,在做最佳化時,就會抓到它原本賺不到的跳空。
另外,空頭市場總是會逆價差,而多頭市場,也經常會出現正價差的情況。均線策略,都
會補捉到這些原本就賺不到的跳空。
如果有人說:「因為有時是正價差、有時逆價差、有時我們做多,有時我們做空。因為這
一切會互抵,所以期貨連續月的跳空不需要修正。」下次聽到這句話時,就可以讓它左耳
進、右耳出了。
結論是,做程式交易的人一定都會最佳化,去尋找那獲利的高原。上述是很明顯的例子,
你一眼就能看出錯誤之所在。但最佳化是隱晦的惡魔,它會在你不經意的時候欺騙你,引
誘你走上自毀的道路。
要走出這些迷途,仍然需要真槍實彈去賠,才會真正覺悟,才會了解這些「小事」的重要
性。
我承認我也在程式交易上賠過很多,我是真的賠過,也賠怕了,任何細節都不敢大意。因
為我知道,魔鬼就在細節中。
結論:
第一個例子說的是,發生從未發生的事件時,只要你做了最佳化,就一定會抓到那個「跳
空」。
第二個例子說的是,當資料不正確時,只要你做了最佳化,就一定會抓到那個「你原本賺
不到的獲利」。
結論是,不論是人為的、或非人為的跳空,甚至是資料的錯誤。「最佳化」都會盡力抓到
它,於是你必然會高估的你獲利,然後讓自己用了過度的槓桿,
最後,
自毀前程。
程式交易延伸閱讀
2009.05.04 程式交易:回測資料不正確,再多努力也枉然1/Job-以2004年為例
http://www.wretch.cc/blog/phigroup/15741425
--
PHI金融夢想家 部落格
http://www.wretch.cc/blog/phigroup
--
圖形分析請見:
http://www.wretch.cc/blog/phigroup/15741473
圖:最佳化後的績效-沒有修正換月跳空(沒有Back adjusted)的歷史資料
圖:最佳化後的績效-有修正換月跳空(Back adjusted)的歷史資料
.第二個例子:換月跳空
許多人回測歷史資料時,使用的是沒有修正換月跳空的連續月資料(沒有Back adjusted)。
例如:我們在7月的合約放空一口大台,並在最後交易日前換倉到8月。但由於8月是除息
旺季,所以8月的價格都至少比7月低了100點以上。於是我們回測時,就會抓到原本賺不
到的錢。
使用未修正的連續月資料,就會在放空時,把這樣的跳空當成利潤計算。但換月跳空的影
響多大呢?我們以均線策略為例:
一般來說,近年都會高估10%、20%的獲利,甚至在某些條件下,會高估50%的獲利
我找了一個高估的例子:
2008年1月~2009年3月,最近15個月的資料,以淨利最佳化為例:
1.站上n日均線,則下根k線開盤做多。
2.跌破n日均線,則下根k線開盤做空。
3.不考慮手續費,是為了看策略原型的效果。
請看最上方的圖…
你會發現,約15個月的資料,使用沒有修正的資料回測。「最佳化」後,一口大台就高估
了21.5%的獲利。高估了122600元,613點的行情。一口就是4個月的薪水啊…你怎麼能不
在意呢?
.原因在於?
以歷史來說,7、8、9月是除息旺季,但第二、三季往往是空頭市場。所以均線策略經常
會在第三季時做空,在做最佳化時,就會抓到它原本賺不到的跳空。
另外,空頭市場總是會逆價差,而多頭市場,也經常會出現正價差的情況。均線策略,都
會補捉到這些原本就賺不到的跳空。
如果有人說:「因為有時是正價差、有時逆價差、有時我們做多,有時我們做空。因為這
一切會互抵,所以期貨連續月的跳空不需要修正。」下次聽到這句話時,就可以讓它左耳
進、右耳出了。
結論是,做程式交易的人一定都會最佳化,去尋找那獲利的高原。上述是很明顯的例子,
你一眼就能看出錯誤之所在。但最佳化是隱晦的惡魔,它會在你不經意的時候欺騙你,引
誘你走上自毀的道路。
要走出這些迷途,仍然需要真槍實彈去賠,才會真正覺悟,才會了解這些「小事」的重要
性。
我承認我也在程式交易上賠過很多,我是真的賠過,也賠怕了,任何細節都不敢大意。因
為我知道,魔鬼就在細節中。
結論:
第一個例子說的是,發生從未發生的事件時,只要你做了最佳化,就一定會抓到那個「跳
空」。
第二個例子說的是,當資料不正確時,只要你做了最佳化,就一定會抓到那個「你原本賺
不到的獲利」。
結論是,不論是人為的、或非人為的跳空,甚至是資料的錯誤。「最佳化」都會盡力抓到
它,於是你必然會高估的你獲利,然後讓自己用了過度的槓桿,
最後,
自毀前程。
程式交易延伸閱讀
2009.05.04 程式交易:回測資料不正確,再多努力也枉然1/Job-以2004年為例
http://www.wretch.cc/blog/phigroup/15741425
--
PHI金融夢想家 部落格
http://www.wretch.cc/blog/phigroup
--
Tags:
財經
All Comments
By Elvira
at 2009-05-10T02:35
at 2009-05-10T02:35
By Kumar
at 2009-05-11T07:48
at 2009-05-11T07:48
By Linda
at 2009-05-13T10:01
at 2009-05-13T10:01
By Victoria
at 2009-05-17T06:46
at 2009-05-17T06:46
By Kumar
at 2009-05-17T23:37
at 2009-05-17T23:37
By Catherine
at 2009-05-22T20:28
at 2009-05-22T20:28
By Daniel
at 2009-05-25T10:13
at 2009-05-25T10:13
By John
at 2009-05-25T20:53
at 2009-05-25T20:53
By Catherine
at 2009-05-27T22:28
at 2009-05-27T22:28
Related Posts
程式交易:回測資料不正確,再多努力也枉然1/Job-以2004為例
By Emma
at 2009-05-04T15:01
at 2009-05-04T15:01
Global Server 時間問題
By Anonymous
at 2009-04-22T18:14
at 2009-04-22T18:14
Global Server 時間問題
By Blanche
at 2009-04-22T11:55
at 2009-04-22T11:55
Global Server 時間問題
By Anonymous
at 2009-04-22T11:16
at 2009-04-22T11:16
Global Server 時間問題
By Gary
at 2009-04-22T10:55
at 2009-04-22T10:55