Не могу отправить на проверку Cоветник. Ошибка валидации: no trading operations. - страница 5

 
Evgeniy Lapkin:

Вопрос только до какого времени так происходило. У моей первой версии так же не возникло подобных проблем, валидацию которой я проходил в июле этого года. К тому же народ на форуме с недавнего времени частенько пишет об ошибке no trading operation и искренне не понимают, почему до этого всё у них проходило, а сейчас нет. Верить или нет это право каждого. В итоге я свою проблему решил, а Всех проинформировал с чем я столкнулся  и как ее решил. 

Если кому то хочется убедится, может написать простенького советники, где открытие позиции происходит, к примеру:

Свеча D1 выше/ниже предыдущей и она не равно 0.

Свеча М15 закрылась хай/лоу выше/ниже предыдущей и она не равно 0.

Свеча на М30 закрылась выше/ниже предыдущей какой нить МА, свеча и МА не равны 0.

Соблюдены условия - открывается Бай или Селл

Запустить через валидатор и вам выдаст ошибку no trading operation.

Посмотрите мой бесплатный последний советник Ozy M15. В нём считаются индикаторы и бары по заданному в настройках периоду. Тестируется на всех доступных в МТ5 периодах графика. Нет такой проблемы... Вывод напрашивается однозначный, проблемы в коде...

 
Alexey Viktorov:

Посмотрите мой бесплатный последний советник Ozy M15. В нём считаются индикаторы и бары по заданному в настройках периоду. Тестируется на всех доступных в МТ5 периодах графика. Нет такой проблемы... Вывод напрашивается однозначный, проблемы в коде...

У меня МТ4

 
Evgeniy Lapkin:

У меня МТ4

У меня бесплатная версия эксперта работает только по одной валютной паре (ERUSD). И то проходит проверку без проблем в MT4/5. Все-же похоже что что-то в коде у вас.

 
Evgeniy Lapkin:

У меня МТ4

Нет никакой разницы.

 
Andrey Spiridonov:

вот для теста простейший код

void OnTick()
  {
if((CheckMoneyForTrade(Symbol(),Lot,OP_BUY)) && (CheckVolumeValue(Lot,str))) int ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,0,0);
if(AccountProfit()>=1)
{
      int slippage=2;
      for(int i=OrdersTotal()-1; i>=0; i--)
        {
         if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break;
         if(OrderType()==OP_BUY ) int ticket=OrderClose (OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),slippage);
         if(OrderType()==OP_SELL) int ticket=OrderClose (OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),slippage);
        }
     }
  
  }


валидацию не проходит нет торговых операций ... что не так

Ну судя по коду, вы не вполне понимаете что возвращают стандартные функции. Значит, можно предположить, что раз в простейшем коде у вас некие странности, говорящие о вашем непонимании, то и в советнике, который отправляете на валидацию, тоже не всё понимаете что там наделали. Так?

Может лучше пусть пока не проходит валидацию? Может так лучше будет пока?

 
Artyom Trishkin:

Ну судя по коду, вы не вполне понимаете что возвращают стандартные функции. Значит, можно предположить, что раз в простейшем коде у вас некие странности, говорящие о вашем непонимании, то и в советнике, который отправляете на валидацию, тоже не всё понимаете что там наделали. Так?

Может лучше пусть пока не проходит валидацию? Может так лучше будет пока?

Нет лучше не будет...этот вопрос актуален для многих и хотелось бы получить ответ. А код выше со странностями до недавнего времени валидацию проходил...
 
Andrey Spiridonov:
Нет лучше не будет...этот вопрос актуален для многих и хотелось бы получить ответ. А код выше со странностями до недавнего времени валидацию проходил...
вопрос снимаю, разобрался...
 
Andrey Spiridonov:
вопрос снимаю, разобрался...
И в чем была проблема? 
 

При попытке опубликовать советник также получаю ошибку "no trading operations". Но мой советник и не должен торговать, он предназначен для информационно-аналитических целей ( для примера см. другие мои продукты). Указываю тип "Утилиты" (Анализаторы, Информеры, Панели). Как опубликовать советник, который не торгует, а выполняет вспомогательные функции?

Также при проверке советника выводится предупреждение "initialization failed" ("Не выгружайте эксперт принудительно"). В моем советника функция OnInit() возвращает ошибку в том случае, если не удается нарисовать графический интерфейс - вероятно, при тестировании это и происходит (наверное, среда тестирования отличается от обычных условий запуска совеетника в терминале - отсутствует графическая часть).
 
Denis Zyatkevich:
При попытке опубликовать советник также получаю ошибку "no trading operations". Но мой советник и не должен торговать, он предназначен для информационно-аналитических целей ( для примера см. другие мои продукты). Указываю тип "Утилиты" (Анализаторы, Информеры, Панели). Как опубликовать советник, который не торгует, а выполняет вспомогательные функции?

Выбрать тип - Утилита. Проверяться на торговлю не должен.