龙听期货论坛's Archiver

龙听 发表于 2018-11-23 15:19

移動停利語法怎麼寫

移動停利(也可稱「移動停損」)運作機制是把隨者行情往有利方向發展同時,停損單也亦步亦趨移動,做多時停損賣單不斷上移,做空時停損買單不斷下移,當行情回檔幅度達設定條件才出場,目的在於保護帳上獲利同時又保有繼續參與後續行情的權利,以下提供幾個移動停利的語法範例:


1.破近N根高或低點出場

這是最簡單也合乎邏輯的移動停利出場方式,其實同時也具由停損功能(沒獲利就折返破高或低就是停損出場),寫法也最簡單,語法如下(以破5根K高低為例):

=============================
If marketposition=1 then sell next bar at lowest(low,5) stop;
If marketposition=-1 then buytocover next bar at highest(high,5) stop;
=============================
[attach]5498[/attach]
隨著行情呈趨勢走勢,停損單會跟著新的高或低點移動,形成移動停利的效果。

2.折返N%(或N點)出場

MC有內建一個出場函式setpercenttrailing,但實際運用在自動下單會發生幽靈單問題,建議自己寫,凱衛MC官網此篇貼文有討論並提供程式碼,借花獻佛也貼在下面:

@Exit_PercentTrailing(獲利一定金額後,才啟動移動停利,回檔一定幅度出場):
=============================
Inputs: pProfit(100), pPercentage(10);

if marketposition <> 0 then begin
  value1 = (maxpositionprofit / currentcontracts / bigpointvalue) ;
  if value1 >= pProfit then begin
   sell("BX-PercentTrailing") next bar avgentryprice + value1 - value1*pPercentage/100 stop;
   buytocover("SX-PercentTrailing") next bar avgentryprice - value1 + value1*pPercentage/100 stop;
  end;
end;
=============================

3.用SAR(Parabolic)指標出場

SAR指標本身設計由來就是一個移動停損功能,MC內建「Parabolic LE (多單出場)」及「Parabolic SE(空單出場)」可以直接加入交易訊號使用。 比起上述兩個移動停利機制最大差別是,它的停損點會隨者持倉時間越長設的越近,也就是在抱了一個長波段後,更重視保護獲利(行情結束的機率更高),稍有回檔就出場。

[attach]5497[/attach]

移動停利可以協助我們抱住大波段(特別是心理層面上),不過實務上,如果設計不良,卻常常收到反效果太早觸及出場。建議採用上述方法2(PercentTrailing)者,參數不要設的太小太敏感,而採用方法1破近N根高或低點出場者,可參考方法3的概念,N可以設計根據波動率或是持倉時間自適應動態調整。

苏朝政 发表于 2021-3-25 10:56

谢谢分享

洛古斯 发表于 2022-10-23 22:34

谢谢分享

页: [1]