2010年5月5日 星期三

衡量交易系統績效真假與好壞的方法

語法邏輯



不考慮交易成本的話
任何商品都能賺
任何時間尺度都能賺
代表交易策略有邏輯錯誤



同一根K棒內不能有反向的訊號,例如: 多&空、多&多單出場、空&空單出場
但若其中一個是開盤價或收盤價則是合理


買訊成交點位比開盤價低
賣訊成交點位比開盤價高
都代表有邏輯上的錯誤


多空訊號出現後就不應該消失或消失又重複出現  
成交點位不應該隨時間點位移動
如果有這種現象,代表用到了未完成的K棒的參數值(H,L,C,V,OI),為邏輯上的錯誤


=========================================================================================
=========================================================================================



交易成本



因為過去的稅率和手續費會比較高


所以用現在比較低的稅率和手續費
去回測過去的資料
會賺到一些本來沒賺到的錢
會造成績效高估


所以用過去比較高的稅率和手續費
去回測近期的資料
會讓一些本來有賺到的錢沒賺到
會造成績效低估


然而回測績效寧可低估不可高估


所以我們應該用過去比較高的稅率和手續費來設定交易成本


 稅+手續費+滑價 = 交易成本
根據
http://findbook.tw/book/9789868045002/basic
股市期市必勝寶典
作者:鄭永鎮, 出版社:三藝文化, 出版日期:2002-07-01


這本書裡的資料,當時的交易成本


稅10000點*200元/點*0.25/1000 = 500元  (因為台指很少上萬點,交易成本寧可高估不可低估)
網路下單手續費600元
滑價2點*200元/點 = 400元


500+600+400 = 1500
單邊1500
來回3000


所以很多人自以為交易成本設很高,但其實還是太低,造成績效高估而不自知



=========================================================================================
=========================================================================================



參數個數


越多越糟,過多會過度最佳化,曲線擬合( Curve fitting )
一般市面上賣的軟體績效很好,都是因此所致
最多不要超過4個


=========================================================================================
=========================================================================================



參數高原


http://tw.myblog.yahoo.com/Blue-Speculator/article?mid=966&sc=1


http://tw.myblog.yahoo.com/futurex168/article?mid=347&prev=368&next=329&l=f&fid=6



=========================================================================================
=========================================================================================



Out Of Sample


增加穩健度(Robustness)的backtesting方法


http://tw.myblog.yahoo.com/Blue-Speculator/article?mid=693&prev=702&next=608&l=f&fid=7



向前走的backtesting方法(Walk forward Backtesting) - 可以看交易系統是不是有穩健度(Robutness)


http://tw.myblog.yahoo.com/Blue-Speculator/article?mid=702&prev=807&next=693&l=f&fid=7



什麼是Walk Forward Efficiency(WFE)?


http://tw.myblog.yahoo.com/Blue-Speculator/article?mid=1040&prev=1467&l=f&fid=7


=========================================================================================
=========================================================================================



ROA  Return on account


= Total Net Profit / ( Max intraday drawdown * 3 ) / 交易年數


=========================================================================================
=========================================================================================



ZScore
(每年贏錢機率)


http://tinyurl.com/2a78tpv


= (SQRT(((Total # of trades)/ Years))*Avg trade (win & loss))/(SQRT((Percent profitable*(1


-Percent profitable)))*(Average winning trade+|Average losing trade|))

沒有留言:

張貼留言