← Back

Не верно получает сделку в LastTrade

Заметил, что в вечерней сессии Security.LastTrade выдает далеко непоследную сделку. Допустим последний раз была выдана сделка с номером 57567133 и временем 05.03.2012 13:44:33.

Версия S# - исправленная версия 4.0.20.

Comments (6)

Login or Create account, Log in or register to leave a comment

Alexander
Alexander

а таблица всех сделок успела прокачаться до конца? вывод по dde ведь последовательный идёт

vader
vader Author

Как это определить?

Alexander
Alexander

Вы включаете квик и тут же запускаете экспорт по DDE. Он последовательно построчно начинает экспортировать в S# по DDE данные. Последняя сделка также последовательно меняется от 10:00:00 (или когда там по инструменту первая сделка) до последней сделки.

Можете хотя бы в квике открыть таблицу всех сделок да посмотреть на каком времени она находится.

vader
vader Author

В Квике то все нормально, там все сделки есть. Судя по времени.

Alexander
Alexander

vader: В Квике то все нормально, там все сделки есть. Судя по времени.

В какой момент смотрите Security.LastTrade?

vfreeman
vfreeman

vader: Заметил, что в вечерней сессии Security.LastTrade выдает далеко непоследную сделку. Допустим последний раз была выдана сделка с номером 57567133 и временем 05.03.2012 13:44:33.

Версия S# - исправленная версия 4.0.20.

вероятно я изобрел очередной велосипед - но при запуске стратегии одним из шагов инициализации у меня идет "пропуск" старых сделок. свойство LastTrade - не обязательно последняя сделка на рынке - это последняя сделка которую получил S#. пропускаю сделки очень просто:

  1. фиксирую время запуска стратегии
  2. подписываюсь на Security.SecurityNewTrades
  3. как только Security.LastTrade.Time > StartTime (в 1-ом пункте) в событии предыдущего пункта становится истинным, считаю что дальнейшее обращение к LastTrade действительно "последняя сделка"