Вылетает invalid integer number as parameter 5 for OrderModify function.Как можно не указывать параметр что бы не вылетала ошибка

 

В следующем коде при модификации ордеров,(я хочу только модифицировать SL а TP вообще не указывать) вылетает

invalid integer number as parameter 5 for OrderModify function

invalid double number as parameter 2 for OrderModify function


а потом ошиба

OrderModify error 130


Как можно не указывать параметр что бы не вылетала ошибка??





total=OrdersTotal();
symb=Symbol();
for (pos=1;pos<=total;pos++)
if (OrderSelect(pos-1,SELECT_BY_POS,MODE_TRADES)==true)
{
if (symb==OrderSymbol())
OrderModify(OrderTicket(),"",iSAR(NULL,0,0.035,0.2,1),"","");
}

 
OrderModify(OrderTicket(), OrderOpenPrice() ,iSAR(NULL,0,0.035,0.2,1), OrderTakeProfit(), 0, CLR_NONE);
 

Спасибо.

Но OrderModify error 130 все равно вылетает

Что может быть?

 
Rattnik >>:

Спасибо.

Но OrderModify error 130 все равно вылетает

Что может быть?


Неправильные стопы.

1) Cтопы слишком близко к рынку. Смотрите MarketInfo(Symbol(), MODE_STOPLEVEL)

2) Стопы ставятся не в ту сторону. Например при buy ставите стопы выше цены открытия.

Судя по вашему коду, я ольше склоняюсь к варианту 2 :)

Причина обращения: