Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
На MQL5.community есть возможность хранить исходные коды в MQL5 Storage. Попробуй сам!
MrSnaKe
94
MrSnaKe 2014.10.13 13:55 

Привет,

проблема есть несколько ордеров на бай и на сел надо сделать трейлинг стоп но для все ордеров (прибыльних и убыточных )

void ProfitBuy()
{
int i, TotalOrder = OrdersTotal();
bool res;

for (i = TotalOrder-1; i >= 0; i--)
 {
  if(OrderSelect(i, SELECT_BY_POS) && OrderType()==OP_BUY && OrderSymbol() == _Symbol && OrderMagicNumber() == magic)
   {
    if(OrderOpenPrice()+3*Point < Bid)
     {
      if (OrderStopLoss() < Bid-3*Point)
       {
        res = OrderModify(OrderTicket(),OrderOpenPrice(),Bid-3*Point,OrderTakeProfit(),0,Blue);
       }
     }
   }

  if(OrderSelect(i, SELECT_BY_POS) && OrderType()==OP_SELL && OrderSymbol() == _Symbol && OrderMagicNumber() == magic)
   {
    if(OrderOpenPrice()+3*Point < Ask)
     {
      if(OrderStopLoss() < Ask+3*Point)
       {
        res = OrderModify(OrderTicket(),OrderOpenPrice(),Ask+3*Point,OrderTakeProfit(),0,Blue);
       }
     }
   }
 }
}

когда тренд восходящий то ордера на бай оно тралит а ордера на сел пишет  OrderModify error 1

а надо все ордера закрыть по одной цене 

подскажите где я допустил ошибку?

Vitalie Postolache
11069
Vitalie Postolache 2014.10.13 14:02  
новый лисапет...
david2
314
david2 2014.10.13 18:17  
MrSnaKe:

Привет,

проблема есть несколько ордеров на бай и на сел надо сделать трейлинг стоп но для все ордеров (прибыльних и убыточных )

когда тренд восходящий то ордера на бай оно тралит а ордера на сел пишет  OrderModify error 1

а надо все ордера закрыть по одной цене 

подскажите где я допустил ошибку?

 

 

Стоп который ставится ниже текущей цены для ордера BUY является стоплоссом, а для ордера SELL тейкпрофитом (независимо от того ордер в плюсе или в минусе). У вас для обоих типов ордеров модифицируется стоплосс. 
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий