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

 
Andrey Kaunov:


Для новостных советников в тестере / валидаторе ничего из новостей к сожалению нет. Обманываю в ОнИнит Если в Тестере то выставить рыночный или пару отложенных  ордеров на близком расстоянии. Закрытие по логике советника.

 if(MQLInfoInteger(MQL_TESTER) == true)
     {
      Alert("Онинит выставление ордера.");

     ...........
      OpnOr=true;
     }
Создание новостного торгового советника
Создание новостного торгового советника
  • www.mql5.com
Как указано в Инвестопедии, трейдер, торгующий на новостях, – это "трейдер или инвестор, принимающий торговые или инвестиционные решения на основе сводок новостей". Действительно, выход экономических отчетов, включая ВВП стран, индексы потребительского доверия, данные по безработице в том или ином государстве и многие другие, часто приводит к...
 
Andrey Kaunov:

Артём, профилировщик узких мест не показал. Весь код работает ровно, без каких то патологически долгих процессов.

А итог всей этой истории такой. Правдами/неправдами я всё таки прошёл валидацию. От кода это не зависит вообще (если он правильный, без явных оговоренных в статье ошибок). Как работает валидатор, видимо известно только его создателю. Код проходит проверку через 2 раза, на третий. Бывает что подряд несколько раз проходит, бывает что несколько раз нет. Причём, меняю я только входные параметры (несущественно), или переставляю туда-сюда ничего не меняющие при перестановке строки, или вообще удаляю или добавляю комментарии (что вообще никак не должно влиять на рабочий файл).

В общем, пройдёшь или нет валидацию, зависит только от "настроения" валидатора (напряжения в сети, каких то энергопотоков или х.з. там чего ещё). При этом код в обычном тестере при вменяемых параметрах никогда не зависал и не давал каких либо сбоев, на любых парах и ТФ.

Ну что ж... Хорошо, что прошли.

 
Valeriy Yastremskiy:

Для новостных советников в тестере / валидаторе ничего из новостей к сожалению нет. Обманываю в ОнИнит Если в Тестере то выставить рыночный или пару отложенных  ордеров на близком расстоянии. Закрытие по логике советника

Валерий, пробовал я так обойти валидатор, не помогло. Даже выставлял и тут же закрывал сделки в OnTick (читай мои посты выше), несколько сделок подряд. Код выкладывал в этом посту, может кому сгодится )))

Ничего не помогло.

Artyom Trishkin:

Ну что ж... Хорошо, что прошли.

Спасибо, Артём.

 
Andrey Kaunov:

Валерий, пробовал я так обойти валидатор, не помогло. Даже выставлял и тут же закрывал сделки в OnTick (читай мои посты выше), несколько сделок подряд. Код выкладывал в этом посту, может кому сгодится )))

Ничего не помогло.

Не помню писал или нет здесь. В валидаторе новая проверка на нехватку средств на минимальный лот. В случае нехватки средств на минимальный лот советник должен не открывать ордер, а выдать сообщение и остановить работу. Если этого не происходит, валидатор говорит что нет торг.операций.
 

то что вы прошли валидатор, это не ваше достижение, это чья-то недоработка.

в данном случае это так.

Можно только пожелать удачи вашим покупателям

 
Maxim Kuznetsov:

то что вы прошли валидатор, это не ваше достижение, это чья-то недоработка.

в данном случае это так.

Можно только пожелать удачи вашим покупателям

Если честно, то требования к советнику за 1000 рублей, что бы он работал во всех мыслимых и не мыслимых ситуациях адекватно, со сверхдостаточной степенью проверок этих ситуаций немного странны. К тому же всегда можно прописать ограничения.

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

И это конечно не дело. Насколько понял, проверки идут на разных начальных условиях количества средств и на разных парах и еще может какие начальные условия меняются. Проверка явно не одна. Вывод этих начальных условий тоже бы помог. А так, как в пальцем в небо в каком месте и при каких условиях.

 
Maxim Kuznetsov:

то что вы прошли валидатор, это не ваше достижение, это чья-то недоработка.

в данном случае это так.

Можно только пожелать удачи вашим покупателям

Максим, вы исключительно невнимательно читаете ветку. Я писал в посту №49 что советник это не мой, и продавать его будет другой человек. За вашей невнимательностью следует и другой ваш ошибочный вывод. Конечно из-за недостатка информации можно вынести ошибочный вердикт. Поэтому не судите и не судимы будете, мой вам совет.

Valeriy Yastremskiy:

...

И это конечно не дело. Насколько понял, проверки идут на разных начальных условиях количества средств и на разных парах и еще может какие начальные условия меняются. Проверка явно не одна. Вывод этих начальных условий тоже бы помог. А так, как в пальцем в небо в каком месте и при каких условиях.

Одно могу сказать достаточно точно, Второй тест на NZDUSD валидатор проводит с начальным депозитом 1usd и минимальным лотом 0.2 на виртуальном счете. Поэтому на этом проходе никогда нет сделок. А если отсутствует проверка на наличие достаточной суммы на счёте для открытия сделки минимальным лотом, выдаётся ошибка 134.

 
Andrey Kaunov:

Максим, вы исключительно невнимательно читаете ветку. Я писал в посту №49 что советник это не мой, и продавать его будет другой человек. За вашей невнимательностью следует и другой ваш ошибочный вывод. Конечно из-за недостатка информации можно вынести ошибочный вердикт. Поэтому не судите и не судимы будете, мой вам совет.

Одно могу сказать достаточно точно, Второй тест на NZDUSD валидатор проводит с начальным депозитом 1usd и минимальным лотом 0.2 на виртуальном счете. Поэтому на этом проходе никогда нет сделок. А если отсутствует проверка на наличие достаточной суммы на счёте для открытия сделки минимальным лотом, выдаётся ошибка 134.

Так вот и требование, что бы был алерт и остановка работы в цикле рабочее состояние фалсе))) Пока не поставил, тоже пройти не мог. 

..... 
if(Work==false) // Критическая ошибка
     {
      if(AlertWork==false)   // Если Алерта еще не было
        {  Alert("Критическая ошибка. Эксперт не работает."); AlertWork=true; }
      return;
     }                                  // Выход из ОнИнит()
.....
 if (Lts*One_Lot > Free)                      // Лот дороже свободн.
     {
      Alert(" Not enough money for ", Lts," lots"," Free = ",Free);
      Work=false;
      return(false) ;                                   // Выход из функции проверки()
     }
 
Valeriy Yastremskiy:

Так вот и требование, что бы был алерт и остановка работы в цикле рабочее состояние фалсе))) Пока не поставил, тоже пройти не мог. 

вроде как кириллицу использовать низя в алертах и принтах
 
Aleksey Semenov:
вроде как кириллицу использовать низя в алертах и принтах

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