我們在先前這篇「從內建指標或訊號程式碼學怎麼運用函式」就有提及類似的學習方式,在這篇我們看過了MC裡內建的MACD交易訊號,本篇來試試另一個指標策略—布林通道訊號。首先我們先打開內建的訊號「BollingerBand LE」,程式碼如下:
================================================
inputs:
BollingerPrice( Close ),
TestPriceLBand( Close ),
Length( 20 ),
NumDevsDn( 2 ) ;
variables:
var0( 0 ) ;
var0 = BollingerBand( BollingerPrice, Length, -NumDevsDn ) ;
condition1 = CurrentBar > 1 and TestPriceLBand crosses over var0 ;
if condition1 then
Buy ( "BBandLE" ) next bar at var0 stop ;
================================================
首先,這是個相當簡單明瞭的程式腳本,主要就是運用到BollingerBand這個函式,NumDevsDn取負值就是計算下緣線(反之取正值就是通道上緣線),至於進場邏輯就是收盤價由下往上穿越下緣線就做多。接下來我們以此腳本為基礎,發展成一個較完整的交易策略,需再增加以下內容:
1. 空單進場邏輯
2. 停損機制
3. 停利機制
完整的程式碼先附上如下,後面我們再一一解說:
================================================
inputs:
Length( 20 ),
NumDevsDn( 2 ),
ExitLen( 5 ) ;
variables:
var0( 0 ) ,
var1( 0 ) ;
var0 = BollingerBand( close, Length, -NumDevsDn ) ;
var1 = BollingerBand( close, Length, NumDevsDn ) ;
condition1 = CurrentBar > 1 and close crosses over var0 ;
condition2 = CurrentBar > 1 and close crosses below var1 ;
if condition1 then Buy ( "BBandLE" ) next bar at var0 stop ;
if condition2 then SellShort ( "BBandSE" ) next bar at var1 stop ;
if marketposition=1 then sell next bar at lowest(low, ExitLen) stop;
if marketposition=-1 then buytocover next bar at highest(high, ExitLen) stop;
================================================
與多單進場相反,做空邏輯即是當收盤價由上向下穿越布林通道上緣線則進場,至於停損機制我們以近5根K棒最低點為多單停損點,近5根K棒最高點為空單停損點,這個停損其實也是帶有移動停利的效果(進場方向對的話),所以也一併解決了停利需求,或者,停損停利也可以採用MC內建的停損停利函式。
以上流程示範如何以內建訊號為基礎,完整的拚出一個有進場有出場的交易策略,不過還是要強調,這個範例是基於教學需要而簡化設計,至於後續的動作,包含更進一步加濾網就是策略開發進階要學的。
歡迎加入LINE@
(點擊上方圖示)