程式交易進場的方法(下)

程式交易進場的方法(下)

延續先前的文章,我這裡用簡單的策略進行不同進出方式的測試,主要是給大家有一些比較數據上的感覺,台指期為例,測試策略的邏輯及語法如下所示,其中索羅斯使用的方式是其中的「面進面出」模式(文章末段有擷取書中示意圖),有興趣鑽研的人不妨多下一點功夫在這邊。

 

 
[進出場方式]
–進場:當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) 原始策略(點進點出)

1

 

(2) 點進面出模式:

我簡單修改策略,當MACD數值下滑時,逐漸出場,直到MACD完全小於零,全部出清。由此可以看到雖然回測的淨利微幅下滑,但是最大策略虧損MDD卻下降3成,值得一提的是勝率因此變成57%。

2

 

 

(3) 面進點出模式:

將原始策略分成2次進場(每次5),當MACD大於0時才進場分批作多。出場則維持不變,可以看到淨利稍稍下滑,MDD則與原來差不多。因此這種修改模式可能沒有很適合原始策略。

3

 

31

 

(4) 面進面出模式 (索羅斯模式):

將原始策略分成2次進場(每次5),當MACD大於0時才進場分批作多,除此之外將出場策略改寫成只要MACD數值轉數,就1口、1口慢慢出場。可以看到淨利微幅下降,MDD較原來的策略小,略遜於點進面出策略,但勝率仍大幅領先原始策略。

4

41

 

後記:

我在閱讀索羅斯在1995年受訪的書《Soros on Soros: ahead of the curve》,裡面索羅斯就有描述他的進出方式,當有把握的時候持續加碼(Keep topping up);當行情回檔的時候,陸續出場。而他在書中也提到,分批出場是很重要的,即使手中部位已經很少,但是只要想法還未改變,仍然建議持有部位到最後一刻。在其1987年撰寫的書中《Alchemy of Finance》更直接貼出部位與K線圖的變化,下圖為索羅斯在1986年操作輕原油期貨的部位變化,可以看到當有把握的時候加碼放空(不一定是順勢加碼),即使快速被軋空而縮小部位,也沒有馬上全部出清。

 

5

 

延伸閱讀

程式交易進場的方法(上)

Comments

X

忘記密碼?

加入會員

重設密碼
請輸入您的信箱,新的密碼將以mail的方式寄給您