請問如何更改自動停利停損

  •   425 
  • 最後發表   HsuanHC  2023 三月 16
HsuanHC 發文於   2023/02/23

//多單停損(%)

input: profit_percent(2, "停利(%)");

input: loss_percent(1.5, "停損(%)");

if Filled > 0 then begin

 { 依照成本價格設定停損/停利 } 

 if profit_percent > 0 and 

 Close >= FilledAvgPrice*(1+0.01*profit_percent) then begin

 { 停利 }

 SetPosition(0, label:="停利出場");

 end else if loss_percent > 0 and 

 Close <= FilledAvgPrice*(1-0.01*loss_percent) then begin 

 { 停損 }

 SetPosition(0, label:="停損出場");

 end;

end;

 

想改成用TICK停利停損請問要如何更改??

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/03/01

 Hello HsuanHC,

 

如果您在策略設定時勾選逐筆洗價的話,那麼就會是每次洗價時計算是否要停損停利。

目前XQ沒有Tick頻率,逐筆洗價是最接近的方式。

boku 發文於   2023/03/14

請問小幫手

你說的「目前XQ沒有Tick頻率,逐筆洗價是最接近的方式。」

這兩者差別在哪裡?

 

謝謝

XQ小幫手 發文於   2023/03/15

Hello boku,

 

逐筆洗價在快市的時候沒辦法每筆Tick都洗到讓腳本運算,和Tick頻率有些差別。

細節可以參考此篇文章

boku 發文於   2023/03/15

謝謝,有另一個問題若我選擇逐筆洗價,則在出場機制的寫法裡頭,Close則是會代表每一次洗價最後的成交價嗎?而不會是每個bar結束後的最後一筆成交價,這樣理解 對嗎?

若我在自動交易程式裡(現沖),想要做一次進場,但分批移動停損停利出場。可以舉個例子給我嗎?(我有參考XS裡頭的例子,但只移動停損停利),沒有分批。

謝謝!

 

 

XQ小幫手 發文於   2023/03/16

Hello boku,

 

是的 close 會是最新一筆的成交價。

您可以用setposition來控制,在不同停損/停利點用position和filled控制一次次分批出場。

舉例來說,進場2張,跌1%以及2%時各出場一張:

 

if position = 0 and filled = 0 then setposition(2, marker);

 

if position = 2 and filled = 2 and close <= filledavgprice * 0.99 then setposition(1, market)

    else if position = 1 and filled = 1 and close <= filledavgprice * 0.98 then setposition(0, market);

發表回覆
Close