Чудеса на виражах: 8 магических котировок

 
Столкнулся с крайне интересным поведением терминала. После того, как котировки перестали поступать (день закрылся), и MarketWatch замер на отметке 22:59 я перезапустил терминал. Однако к большому моему удивлению эксперт начал рабоать, т.е. вызывается метод start(). тиковый график мертвый, на MarketWatch все те же 22:59, а эксперт работает как ни в чем не бывало. Поставил в start() отладку:
Print("Bars=" + Bars + " Bid=" + Bid + " lastServTime=" + timeStr(CurTime()));



и получил:

2005.05.28 01:39:19	FastTrader EURUSD,M15: Bars=5850 Bid=1.25820000 lastServTime=2005.05.27 21:59:58
2005.05.28 01:39:18	FastTrader EURUSD,M15: Bars=5850 Bid=1.25820000 lastServTime=2005.05.27 21:59:58
...



Всего эксперту передается 8 таких одинаковых котировок с ценой закрытия последнего бара, а потом передача прекращается :) Я рассчитывал на то, что если вызывается start(), то данные приходят с сервера и не делал проверку на макс разницу между локальным временем и серверным. Теперб очевидно придется.

Также интересно, что эксперт на неработающем рынке, открыл позицию и даже передвинул стоп. Что тоже, как я предполагал, должно было быть отклонено сервером.

Есть ли такому поведению терминала разумное объяснение и почему котировок поступает именно 8?

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

 
Да, точно - только что проверил, при рестарте терминала вызывается функция start эксперта. Если я не ошибаюсь, то вызов происходит из-за того, что подкачались недостающие или обновленные данные в график. Похоже, что это неправильно и может привести к проблемам. В понедельник обсудим, разберемся и исправим. Спасибо за указание на эту ситуацию.
 
Если я не ошибаюсь, то вызов происходит из-за того, что подкачались недостающие или обновленные данные в график.


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

Терминал в любом случае при рестарте подкачивает несколько последних баров ради гарантии их корректности. После чего и происходит обновление графика, а заодно и запуск эксперта.

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

Если Вы работали на нашем демо-сервере, то укажите, пожалуйста, свой номер счета - мы по логам сервера проверим.
 
Если Вы работали на нашем демо-сервере, то укажите, пожалуйста, свой номер счета - мы по логам сервера проверим.

Счет: 68372