Синхронизация разных данных с разных таймфреймов при вызове из индикатора - страница 3

 

Andrey Khatimlianskii:

Похоже, что это он неправильно насчитал по ходу появления новых баров. После загрузки новой версии и компиляции картинка совпала с той, что после перезаггрузки терминала:

Возможно, из-за того, что я поменял в двух местах PERIOD_CURRENT на PERID_M1?

не совсем понял где что менялось и кто такой "он", но я вижу такую картинку с символами добавленными в индикатор


 
XXX:

не совсем понял где что менялось и кто такой "он", но я вижу такую картинку с символами добавленными в индикатор

Он — индикатор, мувингс.

Поменял в коде используемый таймфрейм с текущего на PERIOD_M1, чтобы было ближе к моим условиям.

Перерисовал при перезагрузке, потому что в онлайне считал значения неправильно.

 
Nikolai Semko:

Класс скачивает историю необходимого размера необходимого символа необходимого ТФ. Создает массивы (close, open, low, high, time) и поддерживает в актуальном состоянии.
Для этого необходимы только три строчки: создать экземпляр класса, в таймере необходимо вставить Timer(), а в OnCalculate или OnTick необходимо вставить NewTick(). Всё.

Пример индикатора с этим классом. В отдельном окне выводит цену close любого символа и тф.

К сожалению, не заработало. Если индикатор запущен в рабочее время, то все отлично (и без класса, OnCalculate() сама подгружает историю), а вот на графике без тиков истории нет...

Причем, что интересно, по кнопке "Обновить", индикатор сначала рисуется, но стоит сделать любое действие - даже двинуть мышью. И все, индикатор пропадает.

Причина обращения: