Некорректный расчет встроенных индикаторов iWPR и iStochastic на символах, отличных от символа текущего графика

 

Исходные данные:

MT4 build 950, OS Windows 7 Professional (x64 based PC)

написан индикатор, который выводит в подокно показания индикатора WPR(100) с восьми валютных пар (индикатор прилагается).

Используемые валютные пары включены в список MarketWatch. История по ним закачена заранее.

Тестирование проводилось на GBPUSD, M1

Что получилось:

Индикатор нормально рассчитывает данные исторических баров (которые уже существовали до установки индикатора), но показания, рассчитанные в реал-тайм (при закрытии очередного бара) не являются корректными. Речь идет именно о барах, закрытых за время работы индикатора, показания которых не должны изменяться.

Это проявляется тем, что индикатор перерисовывает свои показания, рассчитанные в реал-тайм, при перезагрузке индикатора. В дальнейшем, эти показания больше не меняются.

Причем, показания, рассчитанные на символе текущего графика (в данном случае GBPUSD - на рисунках он выделен более толстой красной линией) не меняются. Меняются только показания «неродных» символов. Это хорошо видно на рисунках.

Проверял в терминалах трех брокеров: Alpari, FXPro, PrivetFX

Такая же картина наблюдается, если WPR(100) заменить на Stochastic(100,1,1)

Писал в ServiceDesk - ответа так и не получил.

Хотел бы узнать, это мой косяк или всё-таки системная ошибка?

Если мой - был бы признателен, если бы указали на него...

 

Ошибка в отсутствии синхронизации по времени, время 0 бара текущего графика не всегда равно времени 0 бара других символов.

 
Aleksey Lebedev:

Ошибка в отсутствии синхронизации по времени, время 0 бара текущего графика не всегда равно времени 0 бара других символов.

Алексей, спасибо за подсказку!

Проблема действительно решилась синхронизацией всех пар.

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