Alexey Viktorov: Николай, у него другая проблема была. Я тоже не сразу понял вопрос, думал надо получить значения с другого ТФ. Лыжи смазал и всё поехало.
Странно, ничего не понял. Я воспроизвел его проблему у себя именно так, как он описывал. Она происходила именно потому, что единственное выполнение CopyBuffer происходило при первом заходе в OnCalculate, когда prev_calculated == 0 и не было гарантии, что бары уже сформированы. Решение было в том, чтобы игнорировать этот первый заход, а запускать единственный CopyBuffer только когда prev_calculated>0. Причем здесь "два разных файла ATR из разных папок " - не понял.
Странно, ничего не понял. Я воспроизвел его проблему у себя именно так, как он описывал. Она происходила именно потому, что единственное выполнение CopyBuffer происходило при первом заходе в OnCalculate, когда prev_calculated == 0 и не было гарантии, что бары уже сформированы. Решение было в том, чтобы игнорировать этот первый заход, а запускать единственный CopyBuffer только когда prev_calculated>0. Причем здесь "два разных файла ATR из разных папок " - не понял.
Ну так если открыт график и создаётся индикатор по текущему ТФ, то данные уже должны быть готовы при открытии графика. Разве нет?
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
1. Запустить приведённый код на TimeFrame отличного от минуты.
2. Запустить ATR на таком же Symbol и таком же TimeFrame.
3. Сравнить получаемые значения ATR через код и напрямую из индикатора.
4. Убедиться что значения не совпадают.
1. Запустить приведённый код на TimeFrame отличного от минуты.
2. Запустить ATR на таком же Symbol и таком же TimeFrame.
3. Сравнить получаемые значения ATR через код и напрямую из индикатора.
4. Убедиться что значения не совпадают.
BS - это полученное значение ATR.
Может лыжи плохие?
и ещё RTS-6.21
Вы пробовали вставить тот код, который я выделил жёлтым цветом и запустить индикатор?
Да, пробовал. Результат не изменился.
Может лыжи плохие?
и ещё RTS-6.21
Это уже кое-что. У вас от какого брокера и какая версия MT5.
Может лыжи плохие?
и ещё RTS-6.21
Спасибо за помощь. Разобрался. Подключались разные версии индикаторов с разных папок.
Да, пробовал. Результат не изменился.
не верю.
еще раз попробуйте
не верю.
еще раз попробуйте
Я разобрался. Проблема была в том что подключались два разных файла ATR из разных папок. По этому было расхождение значений.
Благодарю за помощь.не верю.
еще раз попробуйте
Николай, у него другая проблема была. Я тоже не сразу понял вопрос, думал надо получить значения с другого ТФ. Лыжи смазал и всё поехало.
Странно, ничего не понял.
Я воспроизвел его проблему у себя именно так, как он описывал.
Она происходила именно потому, что единственное выполнение CopyBuffer происходило при первом заходе в OnCalculate, когда prev_calculated == 0 и не было гарантии, что бары уже сформированы.
Решение было в том, чтобы игнорировать этот первый заход, а запускать единственный CopyBuffer только когда prev_calculated>0.
Причем здесь "два разных файла ATR из разных папок " - не понял.
Странно, ничего не понял.
Я воспроизвел его проблему у себя именно так, как он описывал.
Она происходила именно потому, что единственное выполнение CopyBuffer происходило при первом заходе в OnCalculate, когда prev_calculated == 0 и не было гарантии, что бары уже сформированы.
Решение было в том, чтобы игнорировать этот первый заход, а запускать единственный CopyBuffer только когда prev_calculated>0.
Причем здесь "два разных файла ATR из разных папок " - не понял.
Ну так если открыт график и создаётся индикатор по текущему ТФ, то данные уже должны быть готовы при открытии графика. Разве нет?