Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Есть некий алгоритм, который берет N баров, потом долго-долго считает, потом рисует график на эти N баров + продлевает его на К баров в будущее. Вот и пытаюсь узнать как рисовать графики на N баров в прошлое и К баров в будущее.
Немного в неправильном направлении пошел. Следующий вариант индикатора. Берем 50 последних сформировавшихся баров, у каждого берем значение (H+L)/2 и соединяем их жирной линией. Эта линия должна ползти с каждым новым сформировавшимся баром.
Расскажи сразу чего там за алгоритм, что за кошки-мышки...
;-)
Есть некий алгоритм, который берет N баров, потом долго-долго считает, потом рисует график на эти N баров + продлевает его на К баров в будущее. Вот и пытаюсь узнать как рисовать графики на N баров в прошлое и К баров в будущее.
А я знаю и умею;-)
Есть некий алгоритм, который берет N баров, потом долго-долго считает, потом рисует график на эти N баров + продлевает его на К баров в будущее. Вот и пытаюсь узнать как рисовать графики на N баров в прошлое и К баров в будущее.
Просто график надо в будущее отображать? Так какая с этим собственно проблема?
Ну, можно рисовать и в прошлое и в будущее. Весь вопрос в том что рисовать??? :)
https://docs.mql4.com/ru/customind/IndicatorCounted
Мне было интересно посмотреть, как другие реализуют идею с построением индикатора рисующего линию на N баров в прошлое и K баров в будущее и при этом, чтобы индикатор запускал обработку только в момент появления нового бара. С N барами проблема в том, что при появлении нового бара, теперь уже N+1 бар остается, т.е. остается своего рода шлейф после индикатора.
В этом случае он будет срабатывать только на открытии нового бара, т.е. даже текущий бар на котором его на график повесят он проигнорирует (ибо открытие бара уже было) и начнет отрисовываться только на следующем баре. Чтобы он сработал на текущем баре, в момент привязки, надо из функции init убрать Bar=Time[0]; и всего-то.
Чтобы график рисовать на К баров в будущее надо формировать данные так, чтобы значение индикатора на баре К был в [0] элементе массива индикатора, на баре К-1 в [1] и т.д. Соответственно значение для нулевого бара сместится в [К]-ий элемент и все остальные значения индикатора заносить в массив со смещением К (на любую глубину N в прошлое). А при инициализации индикатора использовать функцию SetIndexShift(<index>,K);.