Удвоение ордера при перевыставлении
По логике стратегии нужно перевыставлять ордера каждую секунду при определенных условиях. Поэтому я из дочерней стратегии наследованной от timeFrameStrategy вызываю каждую секунду CheckOrders. И при выставлении запоминаю ордер в свойство. Это почти работает. Но, периодически ордера дублируются. При этом в свойстве запоминается только один из них, а второй остается висеть. Сижу думаю как отлавливать. Если подкинете мысли - в чем может быть ошибка, буду очень признателен. Да, ордера выставляются через квик (быструю, но надежную программу).
Кусок кода. Функция CheckOrders вызывается только из OnProcess дочерней, раз в секунду:
class aStratagy: Strategy
{
private Order CurrBuy { get; set; }
public void CheckOrders(){
//проверка условий
var newBuy = this.CreateOrder(OrderDirections.Buy, bid, qbuy);
ReRegisterBuy(newBuy);
}
private void ReRegisterBuy(Order newBuy)
{
this.ReRegisterOrder(CurrBuy, newBuy);
this.CurrBuy = newBuy;
}
}