Проблема с валидацией советника на маркете - страница 9

 
test on EURUSD,H1 (netting)
there are no trading operations

Что делать, если советник не торгует?

Пробовал ставить как утилиту, бесполезно.

 
Alik Dmitriev:

Значит утилита должна быть индикатором или скриптом. То есть нужно скомпилировать код как индикатор или скрипт (а не как советник) и опубликовать его в разделе "Утилиты".

 
Ihor Herasko:

Значит утилита должна быть индикатором или скриптом. То есть нужно скомпилировать код как индикатор или скрипт (а не как советник) и опубликовать его в разделе "Утилиты".


Спасибо за совет, попробую.

 
Ihor Herasko:

Значит утилита должна быть индикатором или скриптом. То есть нужно скомпилировать код как индикатор или скрипт (а не как советник) и опубликовать его в разделе "Утилиты".

Откуда такие ограничения на выбор формы продукта?
В индикаторах есть известные ограничения (например, нельзя применять Sleep Webrequest и т.п.), a cкрипт будет сносится при переключении таймфрейма...
Это официальная позиция по поводу утилит?
Почему нельзя оформить утилиту в виде эксперта?

 
Mikhail Dovbakh:

Это официальная позиция по поводу утилит?

Нет. Просто делюсь опытом размещения продуктов в Маркете.

Откуда такие ограничения на выбор формы продукта?

Исхожу из элементарной логики. Если программа не торгует, то зачем ее экспертом делать? Намного проще сделать ее индикатором. Ведь к графику можно прикрепить более одного индикатора.


В индикаторах есть известные ограничения (например, нельзя применять Sleep Webrequest и т.п.), a cкрипт будет сносится при переключении таймфрейма...

  1. От применения Sleep в своих программах необходимо уходить. Наличие такого оператора в программе косвенно свидетельствует о том, что в архитектуре программы есть недоработки.
  2. С WebRequest в индикаторах разработчики терминала обещали подумать. В МТ4 он вряд ли появится в индикаторах, а вот в МТ5 - вполне возможно.

Какие еще ограничения есть у индикаторов, которых нет для неторгующего эксперта? Мне пока ничего на ум не приходит.


Почему нельзя оформить утилиту в виде эксперта?

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

Тестирование завершилось с ошибками

  • Количество ошибок1
  • Запущен2017.12.20 04:59:59
  • Завершено2017.12.20 05:05:19
  • ТипЭксперт
  • Спред0
test on EURUSD,H1 (netting)
there are no trading operations
test on XAUUSD,D1 (netting)
there are no trading operations
test on GBPUSD,M30 (netting)
there are no trading operations
test on EURUSD,M1 (netting)
there are no trading operations


Как избежать такую ошибку. Подскажите знатоки. Что Это значит?
 
Ihor Herasko:

  1. От применения Sleep в своих программах необходимо уходить. Наличие такого оператора в программе косвенно свидетельствует о том, что в архитектуре программы есть недоработки.

Готов поспорить! :)

Например, при помощи Sleep можно эффективно реализовать экономию вычислительных ресурсов - загрузку на CPU.

Или еще один пример: можно реализовать ожидание закачки необходимых тайм серий.

Или еще: можно реализовать анимацию графики.

В скрипте, так вообще таймер без этого не реализовать.

Да еще кучу всего можно придумать, что можно сделать при помощи Sleep ;)

 
Sergey Makarkin:

Тестирование завершилось с ошибками

  • Количество ошибок1
  • Запущен2017.12.20 04:59:59
  • Завершено2017.12.20 05:05:19
  • ТипЭксперт
  • Спред0
test on EURUSD,H1 (netting)
there are no trading operations
test on XAUUSD,D1 (netting)
there are no trading operations
test on GBPUSD,M30 (netting)
there are no trading operations
test on EURUSD,M1 (netting)
there are no trading operations


Как избежать такую ошибку. Подскажите знатоки. Что Это значит?


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

 
Marat Sultanov:

Готов поспорить! :)

Например, при помощи Sleep можно эффективно реализовать экономию вычислительных ресурсов - загрузку на CPU.

Или еще один пример: можно реализовать ожидание закачки необходимых тайм серий.

Или еще: можно реализовать анимацию графики.

В скрипте, так вообще таймер без этого не реализовать.

Да еще кучу всего можно придумать, что можно сделать при помощи Sleep ;)


Пожалуйста ))

Признаки плохого программиста
Признаки плохого программиста
  • 2021.10.11
  • habrahabr.ru
«Рассуждать о коде» значит понимать порядок исполнения инструкций («исполнять программу в голове»), зная, каково предназначение кода. Симптомы Наличие «волшебного», «вуду» кода или кода, который не имеет никакого отношения к целям программы, но всё равно тщательно поддерживается (например, инициализация переменных, которые никогда не...
 

Как-то абстрактно... Мы же про конкретную штуку говорим и про конкретную среду.

Можете привести конкретные аргументы, почему обсуждаемое нами Sleep есть плохо для архитектуры программы, в нашем контексте, разумеется?

Я вот привел... и о каких-то недоработках в архитектуре при использовании Sleep для решения этих задач я плохо вижу.

Возможно я не правильно понимаю ваше утверждение? Если так, тогда поправьте, пожалуйста.

Просто хочу понять: чего я упускаю? Лично я считаю эту функцию очень полезной и часто применяю ее для решения ряда задач в MQL и я даже представить себе не могу, что может решать такие важные задачи элегантнее.