Сборка стакана при помощи API
Извиняюсь, если написал не в ту тему.
Я пытаюсь собрать стакан из ордерлога при помощи API, отсюда возник ряд вопросов.
Во-первых, можно ли узнать время, когда была отменена заявка? Если мы этого не знаем, то я не могу включить в стакан заявки, которые были отменены после того момента, на который я собираю стакан.
Во-вторых, пусть мы рассматриваем только исполненные заявки:
foreach (OrderLogItem OLItem in reader)
{
if (!OLItem.IsMatched()) { continue; }
Order order = OLItem.Order;
if (order.Time >= t) { break; } //t - момент времени, на который собирается стакан
var tmp_trades = order.GetTrades(); //На этом моменте выскакивает ошибка ArgumentException: Заявка №№№ не имеет информацию о шлюзе. Parameter name: order
Как справиться с этой ошибкой, и какого типа можно делать объект tmp_trades?
Пытался так же сделать и по-другому:
if (!OLItem.IsMatched()) { continue; }
Trade trade = OLItem.Trade;
if (trade.Time <= t) { continue; }
decimal price = order.Price;
//Далее идет запись данных в массив, он не так и важна.
Но в этом случае возвращаются пустые массивы, то есть ни одна итерация не прошла условие цикла trade.Time > t
Как мне решить мои проблемы? Возможно, сборка стаканов из ОЛ уже реализована в API, тогда подскажите, в какую часть мануала смотреть.
Заранее благодарен