EmulationTrader и 2 заявки
Здравствуйте. При работе EmulationTrader столкнулся с такой проблемой. Долго бился, в итоге упростив до минимума получил следующий результат. При старте стратегии после первой сделки создаю две заявки.
Цитата: if (Security.LastTrade != null && order1 == null)
{
order1 = new Order
{
Type = OrderTypes.Limit,
Price = 210m,
Portfolio = this.Portfolio,
Security = this.Security,
Volume = 8,
Direction = OrderDirections.Buy
};
RegisterOrder(order1);
order2 = new Order
{
Type = OrderTypes.Limit,
Price = 212m,
Portfolio = this.Portfolio,
Security = this.Security,
Volume = 7,
Direction = OrderDirections.Buy
};
RegisterOrder(order2);
}
При этом цена, допустим, в ближайшие тридцать минут не опускается ниже 211, но повышается пробивает отметку в 212, т.е. по логике должна вторая заявка реализоваться. Но этого не происходит. Т.е. первая заявка блокирует вторую и это действительно так. Если их поменять местами - то все нормально - первая срабатывает, а вторая не срабатывает. Если им установить одинаковые цены - то обе успешно срабатывают. Ну и соответственно если второй заявки сделать лимит покупки более низкий, чем для первой (зная что обе сработают), то все равно EmulationTrader сначала дождется выполнения первой заявки, а только потом начнет работу со второй. При этом если вторую заявку сделать рыночной, то блокировки не происходит, она сразу выполняется до лимитированной. При этом заявки успешно активируются. Возможно это продолжение бага
Не регистрируется вторая и далее заявка EmulationTraderТестировал только для EmulationTrader. В понедельник, если время будет, попробую для real time testing, если и там проявится, то это для меня будет критической ошибкой. Зараннее спасибо.