Нужна помощь в написании индикатора!

 
Если кому не лень, помогите написать индикатор. Делать его будем по этапам. Начнем с самого простого. Берем 100 последних сформированных баров (текущий, еще не сформированный, брать не надо), разбиваем на группы по 5 баров, в каждой группе находим максимальное и минимальное значение цены, на ценовом графике рисуем змейку из этих прямоугольников. Прямоугольник это 5 баров по длине, верх-низ это макс-мин цены.
 

Зацепило! А дальше?

 
Дело не в самом индикаторе, а в его реализации. Охото посмотреть, как его сделает другой человек. Хотя ползущая змейка это прикольно :)
 
Здесь
Файлы:
i_lsv.mq4  3 kb
 
всетаки, а что же дальше?
 
Integer писал (а):
Здесь (см. файл i_lsv.mq4)
В данной реализации пересчет всех прямоугольников идет при каждом тике, а надо чтобы все пересчитывалось только в момент, когда сформировался новый бар.
 
lsv писал (а):
Integer писал (а):
Здесь (см. файл i_lsv.mq4)
В данной реализации пересчет всех прямоугольников идет при каждом тике, а надо чтобы все пересчитывалось только в момент, когда сформировался новый бар.
Тогда надо сначала в бухгалтерию наведаться.
 
lsv:
В данной реализации пересчет всех прямоугольников идет при каждом тике, а надо чтобы все пересчитывалось только в момент, когда сформировался новый бар.
А какая собственно разница, если он всё равно не считает нулевой бар? Прямоугольники же не должны изменяться до тех пор пока нулевой бар не станет первым. Компьютер он железный - пусть считает на каждом тике.
 
timbo писал (а):
А какая собственно разница, если он всё равно не считает нулевой бар? Прямоугольники же не должны изменяться до тех пор пока нулевой бар не станет первым. Компьютер он железный - пусть считает на каждом тике.

Железный, но не быстрый! А если алгоритм, заложенный в индикатор, требует очень много времени для вычисления, секунды (что как раз в моем случае), то комп просто умрет все это вычислять на каждом тике.

 
Немного в неправильном направлении пошел. Следующий вариант индикатора. Берем 50 последних сформировавшихся баров, у каждого берем значение (H+L)/2 и соединяем их жирной линией. Эта линия должна ползти с каждым новым сформировавшимся баром.
 
lsv:
Немного в неправильном направлении пошел. Следующий вариант индикатора. Берем 50 последних сформировавшихся баров, у каждого берем значение (H+L)/2 и соединяем их жирной линией. Эта линия должна ползти с каждым новым сформировавшимся баром.
Это уже лучше, ещё две-три итерации и ты изобретёшь moving average.
Расскажи сразу чего там за алгоритм, что за кошки-мышки...
Причина обращения: