OrderModify error 1 - как исправить ошибку?

 
Не могу понять в чём дело! Почему на сервер посылается тот же стоп, что и стоит уже? Ведь сразу перед ордером стоит проверка на то больше он или меньше  установленного! Подскажите ПОЖАЛУЙСТА в чём тут соль - не дайте дураком умереть. Причём код взят из классического MACD sample -  там кстати та же ошибка вылазит. Вот он на всякий случай

// check for trailing stop
if(TrailingStop>0)
{
if(Bid-OrderOpenPrice()>Point*TrailingStop)
{
if(OrderStopLoss()<Bid-Point*TrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(), 0,Green);
return(0);
}
}
}

// check for trailing stop
if(TrailingStop>0)
{
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(), 0,Red);
return(0);
}
}
}
 
Вы уже третий, кто открывает подобную тему. Оглядитесь на форуме.
 
Rosh:
Вы уже третий, кто открывает подобную тему. Оглядитесь на форуме.
И заметьте, все пытаются аппелировать к "MACD sample". Это не притензия, но все же может подправить этот самый "MACD sample" в дистрибутиве терминала. Ведь при непонятках новички пытаются разбирать коды примеров из поставки терминала.
 
Вот на это я не обращал внимания, спасибо. Надо будет проверить пример MACD.mq4.
Причина обращения: