Подскажите пожалуйста, как решается ошибка 4806 - запрошенные данные не найдены. Хочу из индикатора получать данные разных периодов усреднения для болинджера. По букварю хендл в OnInit получают, а для моей цели он должен быть в OnCalculate отсюда и ошибка, видимо. Помогите разобраться на примере.
@Vladimir Karputov@Maxim Kuznetsov Приклеить или прибить? )) Простая задача - сложная подготовка, в mql4 на один два делалось. И всё-таки как собрать данные болинджера по разным таймфреймам и периодам усреднения в один массив без ошибок?
Николай К: @Vladimir Karputov@Maxim Kuznetsov Приклеить или прибить? )) Простая задача - сложная подготовка, в mql4 на один два делалось. И всё-таки как собрать данные болинджера по разным таймфреймам и периодам усреднения в один массив без ошибок?
у вас всё правильно, просто вы все хендлы съели, это исчерпаемый ресурс...их надо освобождать.
hdl=iMA(....)
if (hdl!=INVALID_HANDLE) {
/// do something
IndicatorRelease(hdl);
}
подсмотрите как у fxsaber в его библиотеках сделано, для упрощения переезда с 4 на 5
Здравствуйте, Артем ! С завистью смотрю, как товарищи на MQL5 быстро кодят, используя классы CTrade и другие, изначально встроенные в МТ5. По разным, труднопреодолимым обстоятельствам, я вынужден до сих пор кодить на MQL4 и придумывать свои корявые конструкции. М.б. уже есть есть такой набор классов для MQL4 ? Заранее благодарю)
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Подскажите пожалуйста, как решается ошибка 4806 - запрошенные данные не найдены. Хочу из индикатора получать данные разных периодов усреднения для болинджера. По букварю хендл в OnInit получают, а для моей цели он должен быть в OnCalculate отсюда и ошибка, видимо. Помогите разобраться на примере.
Организовано примерно так, извините за целостность.
Хенд индикатора в MQL5 нужно создавать в OnInit()!
Хенд индикатора в MQL5 нужно создавать в OnInit()!
Тогда на каждый период усреднения отдельный хендл будет?
Организовано примерно так, извините за целостность.
Освобождение ресурса не происходит..а так всё корректно, хоть и не эффективно
после iMA(...) и операций с ним, надо вызывать IndicatorRelease если он более ненужен
Для освобождения памяти компьютера от неиспользуемого больше индикатора служит функция IndicatorRelease(), которой передается хэндл этого индикатора.
А хендл индикатора можно создавать в любом месте кроме OnDeinit. Только озаботиться "что делать при ошибке создания"
@Vladimir Karputov @Maxim Kuznetsov Приклеить или прибить? )) Простая задача - сложная подготовка, в mql4 на один два делалось. И всё-таки как собрать данные болинджера по разным таймфреймам и периодам усреднения в один массив без ошибок?
у вас всё правильно, просто вы все хендлы съели, это исчерпаемый ресурс...их надо освобождать.
hdl=iMA(....)
if (hdl!=INVALID_HANDLE) {
/// do something
IndicatorRelease(hdl);
}
подсмотрите как у fxsaber в его библиотеках сделано, для упрощения переезда с 4 на 5
Первое что приходит в голову - это проверить работу индикатора, а потом смотреть советник
не могу найти ничего там, в индикаторе нет строк типа - выходов если..., обрабатывается каждый тик, и в робота приходит каждый тик.
весь м1 нет сигнала пока не сменится бар и новый сигнал, напомню сигнал все тики смотрит, обработки новый бар нет.
и напомню, что мне приходится тестировать сразу в 3 терминалах. похоронят меня с тремя терминалами в руке.
не могу найти ничего там, в индикаторе нет строк типа - выходов если..., обрабатывается каждый тик, и в робота приходит каждый тик.
весь м1 нет сигнала пока не сменится бар и новый сигнал, напомню сигнал все тики смотрит, обработки новый бар нет.
и напомню, что мне приходится тестировать сразу в 3 терминалах. похоронят меня с тремя терминалами в руке.
Возможно в индикаторе сигнал только при смене бара...
Лучше конечно видеть код.
С завистью смотрю, как товарищи на MQL5 быстро кодят, используя классы CTrade и другие, изначально встроенные в МТ5.
По разным, труднопреодолимым обстоятельствам, я вынужден до сих пор кодить на MQL4 и придумывать свои корявые конструкции.
М.б. уже есть есть такой набор классов для MQL4 ?
Заранее благодарю)