Это же от 5-ки код, зачем его сюда перенесли?
вот-вот и я о том же )
Может есть робот, который запал на название iBandsMQL4
Вот это:
lH = iBands(inSymbol, inTF, inPeriod, inBandsShift, inDeviation, inAppliedPrice);
Надо выполнить один раз в ините, а не на каждом тике.
Так то советник работает, но все равно спасибо за идею по оптимизации!
Беспокойство вызывает только, что один и тот же код по-разному ведет себя без видимых на то причин.
Так то советник работает, но все равно спасибо за идею по оптимизации!
Беспокойство вызывает только, что один и тот же код по-разному ведет себя без видимых на то причин.
Ты не понял что тебе объяснили, перечитай ещё раз
В ответе отсутствует объяснение, вместо этого - совет. Совет отличный, я им воспользовался. Но в нем нет указания на причину поведения, показанного на видео.
Так что, если причина вам понятна, будьте добры, потрудитесь объяснить, пожалуйста, почему при инициализации дескриптора
lH = iBands в событии onTick(), один и тот же код работает по-разному
В ответе отсутствует объяснение, вместо этого - совет. Совет отличный, я им воспользовался. Но в нем нет указания на причину поведения, показанного на видео.
Так что, если причина вам понятна, будьте добры, потрудитесь объяснить, пожалуйста, почему при инициализации дескриптора
lH = iBands в событии onTick(), один и тот же код работает по-разному
коллеги, проблемы конечно же никакой нет. Воспользовавшись советом Дмитрия, оригинальный советник я изменил и при его работе нулевых значений не возникает. Спасибо !
Но расставить точки над i все же хотелось бы. На видео четко показано, что при запуске одного советника всегда расчет индикатора происходит верно с первого раза, а при запуске второго советника всегда расчет индикатора происходит верно только со второго раза. Код обоих советников идентичен. Т.е. в первом случае терминал успевает, а во втором не успевает. Почему не успевает во втором случае - никто не знает.
Выходит, что создание дескриптора индикатора в событии onTick может привести к непредсказуемым результатам по неизвестным причинам.
По-моему, это говорит о неких особенностях самого терминала, особенностях о которых здесь не прозвучало ни слова.
Николай, исследуйте эту заморочку. Посмотрите что происходит, проблема ли с вызовом iCustom() или CopyBuffer() не срабатывает?
CopyBuffer не срабатывает. Дескриптор (хендл) ненулевой.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
upd Коллеги, это 5! В смысле, это пятая версия )))
Здравствуйте!
Есть 2 эксперта с одинаковым кодом. onTick код вычисляет значение iBands с параметрами.
При запуске (отладка на исторических данных) одного эксперта значение вычисляется при первом же onTick, при запуске другого только на втором
Вопрос )
Как такое возможно?