Данные в буфере советника отличаются от тех, что выводятся в представление.

 

Вопрос к разработчикам, или тем, кто знаком с синхронизацией массивов в представлении и советнике.

Мой советник работает с разными символами и периодами одновременно. Использует ArrayCopyRates для передачи массивов в библиотеку. По какой-то причине иногда последний закрытый бар отличается от того, что выводится в представление.

Вот отрывок лога последнего закрытого бара из буфера советника usdchf,m30 ( forex.com demo), где замечена разница. Плюсы и минусы добавлены вручную - разница в пунктах с тем, что отображает терминал :

06.04.2009 22:00:00 o: 1.13663; h: 1.13776; l: 1.13623; c: 1.13723; v: 466; spd: -623.00; avg: -96.50; sps: -130.16 l-8

06.04.2009 22:30:00 o: 1.13722; h: 1.13775; l: 1.13648; c: 1.13648; v: 229; spd: -745.00; avg: -302.00; sps: -126.17

06.04.2009 23:00:00 o: 1.13649; h: 1.13869; l: 1.13624; c: 1.13824; v: 411; spd: -263.00; avg: -404.50; sps: -106.28

06.04.2009 23:30:00 o: 1.13817; h: 1.14196; l: 1.13648; c: 1.13803; v: 981; spd: -62.50; avg: -409.70; sps: -74.63

07.04.2009 00:00:00 o: 1.13749; h: 1.13801; l: 1.13654; c: 1.13692; v: 953; spd: -105.00; avg: -359.70; sps: -39.83

07.04.2009 00:30:00 o: 1.13696; h: 1.13823; l: 1.13590; c: 1.13621; v: 684; spd: -259.50; avg: -287.00; sps: -11.56 o-4 c+14

Почему это происходит?

 

Выходит, MetaTrader точность не гарантирует - данные, с которыми работает советник отличаются от тех, которые выводятся на экран.