Помогите! Как сделать индикатор, суммирующий High от первого бара до линии?

 
Я начинающий программист, и хочу научиться программировать на MQL4. Я поставил для себя задачу, создать индикатор, который будет суммировать High всех баров, от первого бара до заданной линии. Помогите её решить, пожалуйста!
 
Решал данную задачу в рамках дороботки перерисовывающего индикатора.
Пользователь хотел возможность посмотреть прошлую историю индикатора путем перетаскиванием горизонтальной линии обозначающей начало доступной истории.



Вот попутсвующие вопросы для достижения поставленной цели:

1) Кто и как создает создает линию?
2) Как система должна понимать, что эта линия, которую нужно использовать, а не какая-то случайная?
3) А что если будет две или больше линий, или не одной?
4) Есть линия, нашил ее размещение, выполнили расчет, куда показывать и в какой форме этот результат? Как проверить корректность расчета?
5) Линия может передвигаться пользователем, как отловить это событие? Как пересчитать результат если линия была передвинута?
6) Имеет ли смысл делать перерасчет на каждом тике, если, скажем, High величины не изменяли свое значение с прошлого расчета?
 
ALXIMIKS3:
Решал данную задачу в рамках дороботки перерисовывающего индикатора.
Пользователь хотел возможность посмотреть прошлую историю индикатора путем перетаскиванием горизонтальной линии обозначающей начало доступной истории.



Вот попутсвующие вопросы для достижения поставленной цели:

1) Кто и как создает создает линию?
2) Как система должна понимать, что эта линия, которую нужно использовать, а не какая-то случайная?
3) А что если будет две или больше линий, или не одной?
4) Есть линия, нашил ее размещение, выполнили расчет, куда показывать и в какой форме этот результат? Как проверить корректность расчета?
5) Линия может передвигаться пользователем, как отловить это событие? Как пересчитать результат если линия была передвинута?
6) Имеет ли смысл делать перерасчет на каждом тике, если, скажем, High величины не изменяли свое значение с прошлого расчета?

1) Пользователь.

2) Других линий не будет.

3) Тогда сумма между вертикальными линиями, а если нету, то, соответственно, нету расчёта.

4) Выводить Text над баром, где установлена вертикальная линия.

5) Перезапуск(удаление и прикрепление) индикатора к графику.

6) Тики не нужны, только с появлением нового бара.

 

Определитесь изначально с базоваой реализацией того, что вы хотите.
Не нужно сразу все-все фичи реализовывать, просто оставляйте место под возможные разширения функциональности.


Взаимодействие с пользователем, работа с несколькими линиями, отслеживание событий их удаления ....
Сложно для начала.

Расмотрите вариант создания только одной линии с предопределенным именем.
Линия создается индикатором, а не пользователем.
Есть обработка события ее перетаскивания пользователем.
Выбирете верный тип объякта, который будет отображать расчет над баром, как выставить его значение, как перемещать данный объект за линией, как сделать недоступным для пользовательского выделения,....

Так же хотелось бы заметить, что расчет на новом баре уместен если в нем не участвует High[0], иначе нужно проверять не изменилось ли данное значение с приходом нового тика.