延續先前的文章,我這裡用簡單的策略進行不同進出方式的測試,主要是給大家有一些比較數據上的感覺,台指期為例,測試策略的邏輯及語法如下所示,其中索羅斯使用的方式是其中的「面進面出」模式(文章末段有擷取書中示意圖),有興趣鑽研的人不妨多下一點功夫在這邊。
[進出場方式]
–進場:當MACD大於0軸進場作多10口。
–出場:當MACD小於0軸全數出場。
[測試程式碼]
value1=macd(c,12,26);
if value1>0 then buy 10 contracts next bar market;
if value1<0 then sell 10 contracts next bar market;
[歷史回測比較]
(1) 原始策略(點進點出)
(2) 點進面出模式:
我簡單修改策略,當MACD數值下滑時,逐漸出場,直到MACD完全小於零,全部出清。由此可以看到雖然回測的淨利微幅下滑,但是最大策略虧損MDD卻下降3成,值得一提的是勝率因此變成57%。
(3) 面進點出模式:
將原始策略分成2次進場(每次5口),當MACD大於0時才進場分批作多。出場則維持不變,可以看到淨利稍稍下滑,MDD則與原來差不多。因此這種修改模式可能沒有很適合原始策略。
(4) 面進面出模式 (索羅斯模式):
將原始策略分成2次進場(每次5口),當MACD大於0時才進場分批作多,除此之外將出場策略改寫成只要MACD數值轉數,就1口、1口慢慢出場。可以看到淨利微幅下降,MDD較原來的策略小,略遜於點進面出策略,但勝率仍大幅領先原始策略。
後記:
我在閱讀索羅斯在1995年受訪的書《Soros on Soros: ahead of the curve》,裡面索羅斯就有描述他的進出方式,當有把握的時候持續加碼(Keep topping up);當行情回檔的時候,陸續出場。而他在書中也提到,分批出場是很重要的,即使手中部位已經很少,但是只要想法還未改變,仍然建議持有部位到最後一刻。在其1987年撰寫的書中《Alchemy of Finance》更直接貼出部位與K線圖的變化,下圖為索羅斯在1986年操作輕原油期貨的部位變化,可以看到當有把握的時候加碼放空(不一定是順勢加碼),即使快速被軋空而縮小部位,也沒有馬上全部出清。
延伸閱讀