MQL4 Stoploss

Feb 10, 2016 at 12:59
884流覽
4 Replies
Yurin92
forex_trader_294488
會員從Dec 28, 2015開始   8帖子
Feb 10, 2016 at 12:59
Hello everyone. I've coded this piece here:

for(int i=0;iOrderStopLoss()+atr && Close[1]>OrderOpenPrice()+atr) //is the price already greater than the opening price+ATR, and than the stoploss+ATR?
{
bool order = OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(OrderStopLoss()+atr-0.0005,5),0,0,clrAquamarine);
if(!order){Alert(GetLastError());}
}
else
{
return;
}
}
}

But the stoploss keeps moving on every tick. I know it is due to the "-0.0005", but I would like to have that added "margin". How could I manage it to stop from moving on every tick, without having to remove this -0.0005 margin?

thank you very much in advance.
會員從Nov 21, 2011開始   1601帖子
Feb 10, 2016 at 13:46
If you wanna place SL when you open orders, then you simply need to adjust SL at this moment using OpenOrder function.

If you wanna place SL at a particular event then you have to add the following condition... Does my SL is null, if so, apply your code else nothing.

So it should do it only once.
forex_trader_25447
會員從Dec 21, 2010開始   127帖子
Feb 10, 2016 at 15:46
I think, hi wanted to realize Trailing Stop at distance (ATR-0.0005)
會員從Mar 02, 2010開始   95帖子
Feb 13, 2016 at 09:56
you should separate your conditions from ordermodify command!
ixbone@
會員從Apr 20, 2010開始   808帖子
Feb 14, 2016 at 07:47
You need add the StopLoss Condition.

double stoplossBuy;
if(stoplossBuy < Bid- Close[1]- atr ) stoplossBuy = Bid- - Close[1]- atr ;

// This ensure your stopLossBuy will only move up
Information is Gold when come to organised.
登錄 / 註冊 to comment
You must be connected to Myfxbook in order to leave a comment
*商業用途和垃圾郵件將不被容忍,並可能導致帳戶終止。
提示:發佈圖片/YouTube網址會自動嵌入到您的帖子中!
提示:鍵入@符號,自動完成參與此討論的用戶名。