OrderModify erorr 145

 

Привет, использую вот такой трейлинг  в советнике, при работе постоянно выбивает ошибку OrderModify erorr 145, как исправить, похожие темы читал, пробывал, ничего не помогло. Вот код трейлинга


void Trailing ()

{
    for (int i=0; i<OrdersTotal () ; i++)  
    {
       if (OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
    
    {
        if (OrderSymbol () == OrderSymbol ())
        {
        if (OrderType () == OP_BUY)
        {
        if(TrailingStopB>0)
              {
               if(Bid-OrderOpenPrice()>Point*TrailingStopB)
                 {
                  if(OrderStopLoss()<Bid-Point*TrailingStopB)
                    {
                     //--- modify order and exit
                     if(!OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStopB,OrderTakeProfit(),0,Green))
                        Print("OrderModify error ",GetLastError());
                     return;
                    }
        }
        
        }
        
        }
        
        if (OrderType () == OP_SELL)
        {
       if(TrailingStopS>0)
              {
               if((OrderOpenPrice()-Ask)>(Point*TrailingStopS))
                 {
                  if((OrderStopLoss()>(Ask+Point*TrailingStopS)) || (OrderStopLoss()==0))
                    {
                     //--- modify order and exit
                     if(!OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStopS,OrderTakeProfit(),0,Red))
                        Print("OrderModify error ",GetLastError());
                     return;
                    }
                 }
        
        }
        
        }
        
        
        
        }
    
    
    
    }
    }
    

}
 
inuboh:

Привет, использую вот такой трейлинг  в советнике, при работе постоянно выбивает ошибку OrderModify erorr 145, как исправить, похожие темы читал, пробывал, ничего не помогло. Вот код трейлинга

Предположу, что значение трала меньше значения стопаута.

И добавить шаг изменения стоплосса надо бы, а то в этом алгоритме на каждом пипсе стоплосс двигает. Шаг должен быть больше текущего спреда.

 
evillive:

Предположу, что значение трала меньше значения стопаута.

И добавить шаг изменения стоплосса надо бы, а то в этом алгоритме на каждом пипсе стоплосс двигает. Шаг должен быть больше текущего спреда.

а чем это плохо, что на каждом пипсе он будет передвигать?

а при чем стопаут, если советник работает в плюс?

 

Модификация стопа на каждом тике не очень нравится брокерам, могут и тормоз включить или запрет торговли автоматами.

А стопаут при том, что задвинуть стоплосс вплотную к цене запрещается правилами некоторых ДЦ. И неважно, в плюсе или в минусе.

 
evillive:

А стопаут при том, что задвинуть стоплосс вплотную к цене запрещается правилами некоторых ДЦ. И неважно, в плюсе или в минусе.

Видимо, имелся в виду стоплевел...
 
evillive:

Модификация стопа на каждом тике не очень нравится брокерам, могут и тормоз включить или запрет торговли автоматами.

А стопаут при том, что задвинуть стоплосс вплотную к цене запрещается правилами некоторых ДЦ. И неважно, в плюсе или в минусе.

Спасибо, проблему решил!

Получалось вот что:

 145 Модификация запрещена, так как ордер слишком близок к рынку у советника возникает потому, что он пытается изменить ордер который находится в пределах 10 п. от тейкпрофита!

 
Scriptong:
Видимо, имелся в виду стоплевел...
Да, виноват, конечно же стоплевел, выходные, допинг, всё такое )))
 
inuboh:

Спасибо, проблему решил!

Получалось вот что:

 145Модификация запрещена, так как ордер слишком близок к рынку у советника возникает потому, что он пытается изменить ордер который находится в пределах 10 п. от тейкпрофита!

Такое случается когда в кухнях торгуешь.