У меня событийная стратегия. В начале отправил заявку и стал дожидаться её исполнения.
_order = new Order
{
Portfolio = this.Portfolio,
Volume = _partOfLot,
Price = _priceOfOrder,
Security = this.Security,
Direction = this._direction,
Trader = this.Trader,
};
this.RegisterOrder(_order);
this
.When(StrategyRuleConditionHelper.StrategyNewMyTrades(this))
.Do(Blablabla);
Заявка была исполнена одной сделкой, но когда происходила проверка на испонения заявки, почему-то она была сочтена не исполненной.
private void Blablabla()
{
if(TraderHelper.IsMatched(_order)){
MessageBox.Show(_order.Id.ToString());
Может ли информация о новых сделках прижти раньше,чем информация, о том, исполнена сделка или нет? И что с этим делать?
コメント (4)
ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください
Заявка была каким объемом?
У вас ошибка в логике. Не учитываете частичное исполнение заявки.
учитывается - вот здесь if(TraderHelper.IsMatched(_order)){
метод должен выполнятся только, когда заявка будет исполнена полностью.
У меня это и произошло. заявка была исполнена одной сделкой. При этом сообщение в этом методе не было выведено