Замучила ошибка there are no trading operations - страница 3

 
это очень частая ошибка при публикации в маркет. можно даже в рамочку закрепить этот пост и повесить )
обычно она возникает в очень сложных системах с редким входом, но у вас не так.

Однако посмотрим на ваш код.
идет проверка "AllChecks" на часть возможных ошибок с одним результатом при любых обстоятельствах - false
если false то попытки совершить сделку у вашего советника нет.
Логично, но топорно. нужно работать более гибко. Нельзя открыть такой маленький лот? окей откроем минимальный, и так далее.

Кстати в mql4 ENUM_ORDER_TYPE и все его значения не используется, хотя они как бы есть. Это случайно перенесенные перечислимые константы из mql5.
Использовать можно, но не совсем корректно. 
 
Кстати сигнал у вас тоже не корректный.
TopPrice > 80 && LowerPrice >80
вы double на прямую сравниваете с int. 
ну как минимум стоило написать так: 
TopPrice > 80.0 && LowerPrice >80.0
потому что 80 это int, а 80.0 это уже double, можете проверить: 
Print(440/80)  //5
Print(440/80.0) //5.5
как правильно сравнивать double с double думаю найдете. 

не критично в данном случае, но все же ошибка.
 
Nikolay Khrushchev:
это очень частая ошибка при публикации в маркет. можно даже в рамочку закрепить этот пост и повесить )
обычно она возникает в очень сложных системах с редким входом, но у вас не так.

Однако посмотрим на ваш код.
идет проверка "AllChecks" на часть возможных ошибок с одним результатом при любых обстоятельствах - false
если false то попытки совершить сделку у вашего советника нет.
Логично, но топорно. нужно работать более гибко. Нельзя открыть такой маленький лот? окей откроем минимальный, и так далее.

Кстати в mql4 ENUM_ORDER_TYPE и все его значения не используется, хотя они как бы есть. Это случайно перенесенные перечислимые константы из mql5.
Использовать можно, но не совсем корректно. 

А в чем ошибка и как ее в дальнейшем избежать? 

 
Алексей Тарабанов:

А в чем ошибка и как ее в дальнейшем избежать? 

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

 
Nikolay Khrushchev:

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

Иначе говоря, Вы уверены, что при тесте наших с Вами советников Метаквоты выводят наши сделки на реал. За свои (их) деньги. 

 
Алексей Тарабанов:

Иначе говоря, Вы уверены, что при тесте наших с Вами советников Метаквоты выводят наши сделки на реал. За свои (их) деньги. 

нет, я и близко этого не говорил

 
Значит, я Вас не понял
 
Алексей Тарабанов:
Значит, я Вас не понял

очевидно)

у человека в коде все жестко. нельзя открыть лот который я хочу - не буду. Открыть кстати пытается 0.01 лота
вот и получается что его советник на счете с минимальным лотом 0.1 (или в тестере у брокера с минимальным лотом 0.1) ничего не откроет.

в такой ситуации нужно чтобы советник открывал 0.1 лот, тогда все будет ок.

 
Народ кто-нибудь решил эту проблему с no trading operations при публикации в маркет. Это просто жесть какая та. Я уже захардкодил и сделал 100% открытие 1 позиции при старте советника, а он мне все равно возвращает это... уже недели 2 с этим бьюсь, и предыдущие версии тоже не проходят проверку, хотя они уже побывали в маркете и раньше проходили проверки
 
Roman Gergert:
Народ кто-нибудь решил эту проблему с no trading operations при публикации в маркет. Это просто жесть какая та. Я уже захардкодил и сделал 100% открытие 1 позиции при старте советника, а он мне все равно возвращает это... уже недели 2 с этим бьюсь, и предыдущие версии тоже не проходят проверку, хотя они уже побывали в маркете и раньше проходили проверки

Компьютер это идиот. © М.М. Ботвинник.

Так-вот притворись идиотом и попытайся пройти по алгоритму с точки зрения идиота и с параметрами установленными идиотом. Именно с такой точки зрения подходит автовалидатор. Обратите внимание на "обратную связь". Оповещает-ли советник об ошибках?

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