Спасибо за ответ! Необходимо делать проверку таймфрейма перед циклом? что тайм фрем совпадал с тем который указан в СopyRates?
Спасибо за ответ! Необходимо делать проверку таймфрейма перед циклом? что тайм фрем совпадал с тем который указан в СopyRates?
Все аргументы обработчика OnCalculate() относятся только к текущему ТФ. При использовании другого ТФ они невалидны, потребуется преобразование.
При этом никто не запрещает продублировать все эти данные для нужного ТФ. К примеру, для bars:
bars = iBars(NULL, <yourTF>);
Для остальных аргументов чуть сложнее, но все равно достаточно просто, чтобы не получилось сделать даже с небольшим опытом программирования.
Спасибо за ответ! Необходимо делать проверку таймфрейма перед циклом? что тайм фрем совпадал с тем который указан в СopyRates?
Неясна Ваша цель - зачем Вам CopyRates вообще, если OnCalculate УЖЕ передаёт все массивы для текущего таймфрейма?
Неясна Ваша цель - зачем Вам CopyRates вообще, если OnCalculate УЖЕ передаёт все массивы для текущего таймфрейма?
Все аргументы обработчика OnCalculate() относятся только к текущему ТФ. При использовании другого ТФ они невалидны, потребуется преобразование.
При этом никто не запрещает продублировать все эти данные для нужного ТФ. К примеру, для bars:
Для остальных аргументов чуть сложнее, но все равно достаточно просто, чтобы не получилось сделать даже с небольшим опытом программирования.
Спасибо за ответ, мне необходимо из определенных баров с другова таймфрейма (не текущего) брать такие свойства как: close, open, volume,time.
В таком случае Вам с меньшего таймфрейма нужно выполнить iBarShift - чтобы получить номер бара со старшего таймрейма. И потом уже по номеру бара получать OHLC со старшего таймфрейма.
- www.mql5.com
Все аргументы обработчика OnCalculate() относятся только к текущему ТФ. При использовании другого ТФ они невалидны, потребуется преобразование.
При этом никто не запрещает продублировать все эти данные для нужного ТФ. К примеру, для bars:
Для остальных аргументов чуть сложнее, но все равно достаточно просто, чтобы не получилось сделать даже с небольшим опытом программирования.
Благодарю за ответ! С помощью функции iBars, я взял количество баров с нужного таймфрейма, а теперь, как взять open и close и другие свойства нужного мне бара?
Благодарю за ответ! С помощью функции iBars, я взял количество баров с нужного таймфрейма, а теперь, как взять open и close и другие свойства нужного мне бара?
Для начала нужно определить бар другого ТФ, который соответствует бару текущего ТФ. Это делается при помощи функции iBarShift. Ну а далее, зная индекс бара, используются либо функции типа Copy (CopyRates, CopyHigh, CopyOpen и т. п.) или напрямую iOpen, iClose и т. п.
Для начала нужно определить бар другого ТФ, который соответствует бару текущего ТФ. Это делается при помощи функции iBarShift. Ну а далее, зная индекс бара, используются либо функции типа Copy (CopyRates, CopyHigh, CopyOpen и т. п.) или напрямую iOpen, iClose и т. п.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте, помогите пожалуйста решить данную проблему
В терминале, на таймфрейме Неделя (да и на других таймфремах), после прохождения всех баров , появляется ошибка - array out of range in 'indic.mq5' (59,27)
Похоже что-то с размерностью массива, подскажите как исправить, заранее спасибо