Если первая возможная причина была исправлена, то выделенная - нет. Ищем по коду, где вызывается CZigZagModule::CopyExtremums и находим такую строку
Получается, что идет увеличение размера массива, но добавленные элементы не инициализированы.
Дело в том, что проверка условий на открытие сделок не пропустит, если исходные данные индикатора не получены - CStrategy::GetIndicatorData().
Затем, если они получены, получаем финальные данные:
m_zz_current.GetZigZagData(m_h_zz,m_l_zz,m_t_zz);
А в методе CZigZagModule::GetZigZagData() в самом начале осуществляется инициализация массивов - CZigZagModule::ZeroZigZagData(), размер которых (1 элемент) был установлен сначала в конструкторе классаCZigZagModule (там, где была первая причина), а затем в CZigZagModule::CopyExtremums() во время инициализации программы - CStrategy::OnInitEvent(), (количество элементов равно входному параметру CopyExtremum). В ваших результатах это NewSize = 3.
Вот исходя из всего этого, как понять, почему получаются такие результаты?
У меня в 1972 перестал работать WebRequest(). Что-то он через билд вырубается... проверил на предыдущем (1971) - работает. И аналогичная функция работает в МТ4. Просьба разобраться.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Билд 1972. Запускаю скрипт:
Получаю:
С кастомными графиками такого не происходит, но при этом ожидаемый тик в индикаторы не приходит.
Это только у меня такое?
Похоже, что никто больше кастомными символами не пользуется, потому что как с этим работать:
до кнопки "refresh (обновить чарт)"
После:
Разработчики не могут "воспроизвести"
Спасибо. Осталось разобраться, почему так получается.
Это должно помочь.
Это должно помочь.
Проблема осталась.
В рамках одного теста с одними параметрами, да, результаты стали идентичны.
Но есть разница в том, что показывается в списке результатов оптимизации и в одиночных прогонах.
Проблема осталась.
В рамках одного теста с одними параметрами, да, результаты стали идентичны.
Но есть разница в том, что показывается в списке результатов оптимизации и в одиночных прогонах.
Результат выполнения такой
Если первая возможная причина была исправлена, то выделенная - нет. Ищем по коду, где вызывается CZigZagModule::CopyExtremums и находим такую строку
m_zz_current.CopyExtremums(CopyExtremum);Получается, что идет увеличение размера массива, но добавленные элементы не инициализированы.
Результат выполнения такой
Если первая возможная причина была исправлена, то выделенная - нет. Ищем по коду, где вызывается CZigZagModule::CopyExtremums и находим такую строку
Получается, что идет увеличение размера массива, но добавленные элементы не инициализированы.
Дело в том, что проверка условий на открытие сделок не пропустит, если исходные данные индикатора не получены - CStrategy::GetIndicatorData().
Затем, если они получены, получаем финальные данные:
А в методе CZigZagModule::GetZigZagData() в самом начале осуществляется инициализация массивов - CZigZagModule::ZeroZigZagData(), размер которых (1 элемент) был установлен сначала в конструкторе класса CZigZagModule (там, где была первая причина), а затем в CZigZagModule::CopyExtremums() во время инициализации программы - CStrategy::OnInitEvent(), (количество элементов равно входному параметру CopyExtremum). В ваших результатах это NewSize = 3.
Вот исходя из всего этого, как понять, почему получаются такие результаты?
По прежнему невозможно прервать отладку без плохих последствий
Пофиксили будет в следующем билде.
Прошу прощения за офф топ, можно ли как то сменить тип продукта в маркете с эксперата на утилиту.
Возникла проблема в том что Утилита проходит проверку а ее демо версия оформлена как эксперт проверку не проходит.
Программы абсолютно одинаковые, в демо версии просто нет части кода...
Вот исходя из всего этого, как понять, почему получаются такие результаты?
Пока могу только сказать, что раз Ваш индикатор выдает следующее
то можете не делать инициализацию в OnInit, т.к. индикаторные буферы там нулевого размера.
ЗЫ Такой код не заполняет все индикаторные буферы
Отсюда в индикаторных буферах случайные значения.