Вопрос ка разработчикам! Не работает OrderCloseBy - страница 2

 
dimeon >>:
нашел скрипт закрывающий встречные ордера. а он не работает,
Сам писал эксперта, явно указывал номера тикетов - тоже не работает. Вылазит ошибка 4109.

Может кто сталкивался с такой проблемой ?
Как решили ?

https://docs.mql4.com/ru/runtime/errors

OrderCloseBy    ERR_CUSTOM_INDICATOR_ERROR (4055), ERR_INTEGER_PARAMETER_EXPECTED (4063), ERR_INVALID_FUNCTION_PARAMVALUE (4051), 
ERR_INVALID_TICKET (4108), ERR_UNKNOWN_SYMBOL (4106), ERR_TRADE_NOT_ALLOWED (4109), коды от торгового сервера
обычно решается примерно таким способом :
int n=0;
while((!IsTradeAllowed())&&(n<MAXCYKLESCNT))
{ 
    Sleep(500);
    n++;
}
Удачи.
 
dimeon писал(а) >>

да причем тут автор.. функция тупо не работает! В эксперте прописывал явно тикеты ордеров и выдает ту же ошибку


ERR_TRADE_NOT_ALLOWED 4109 Торговля не разрешена. Необходимо включить опцию "Разрешить советнику торговать" в свойствах эксперта.

 
getch >>:
Также существует нюанс с MinLot.

Кстати, да.

Т.е. нужно ещё смотреть какие именно лоты пытаешься "сократить". Если лоты не равны и разность меньше МинЛот - не получится.

 
MetaDriver >>:

Кстати, да.

Т.е. нужно ещё смотреть какие именно лоты пытаешься "сократить". Если лоты не равны и разность меньше МинЛот - не получится.


ну так руками то все работает !! аналогичные действия с помощью скрипта выдают ошибку... вот правда ошибка 4108 (неправильный номер тикета)
 
все заработало ! забыл разрешить советнику торговать!

Всем огромное спасибо за указанные возможные проблемы!
 
dimeon писал(а) >>
все заработало ! забыл разрешить советнику торговать!

Всем огромное спасибо за указанные возможные проблемы!


При появлении ошибки всегда следует смотреть:
Справочник MQL4 - Стандартные константы - Коды ошибок
Причина обращения: