| lshaton 
 
   
 
						
						
					 | Дата: 17.10.2011 
 
 
	
			lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды
 this.ReRegisterOrder(TargetOrder1, TargetOrder111);
 не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
 И CancelActiveOrders()тоже не работает this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); показывает увеличение количества заявок,игнорируя снятие старых.
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| Mikhail Sukhov 
 
   
 
						
						
					 | Дата: 20.10.2011 
 
 
	
			lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды
 this.ReRegisterOrder(TargetOrder1, TargetOrder111);
 не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
 А как проверяли? Смотрю код, там первой же строчкой: Код
order.State = OrderStates.Done; | 
			
				|  |  | 
			
				|  | 
		
			| 
 | 
		
			
				| lshaton 
 
   
 
						
						
					 | Дата: 24.10.2011 
 
 
	
			Mikhail Sukhov lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды
 this.ReRegisterOrder(TargetOrder1, TargetOrder111);
 не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
 А как проверяли? Смотрю код, там первой же строчкой: Код
order.State = OrderStates.Done; Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| Mikhail Sukhov 
 
   
 
						
						
					 | Дата: 24.10.2011 
 
 
	
			lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются?
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| lshaton 
 
   
 
						
						
					 | Дата: 24.10.2011 
 
 
	
			Mikhail Sukhov lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются? this.ReRegisterOrder(TargetOrder1, TargetOrder111); потом в окошке выводилась величина  this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); (this - стратегия) и это число постоянно увеличивалось с итерациями. Я неделю назад с этим куском работал, потом переделал так, чтобы избежать ReRegisterOrder.  Попробую восстановать ситуацию и если повторится, сделаю пост сюда еще раз. Спасибо.
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| Mikhail Sukhov 
 
   
 
						
						
					 | Дата: 24.10.2011 
 
 
	
			lshaton this.ReRegisterOrder(TargetOrder1, TargetOrder111);
 потом в окошке выводилась величина
 this.Orders.Select(ord => ord.State == OrderStates.Active).Count());
 (this - стратегия) и это число постоянно увеличивалось с итерациями.
 Заявка не сразу снимается и не сразу регистрируется. По TargetOrder1 OrdersChanged приходит?
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| lshaton 
 
   
 
						
						
					 | Дата: 31.10.2011 
 
 
	
			Mikhail Sukhov lshaton this.ReRegisterOrder(TargetOrder1, TargetOrder111);
 потом в окошке выводилась величина
 this.Orders.Select(ord => ord.State == OrderStates.Active).Count());
 (this - стратегия) и это число постоянно увеличивалось с итерациями.
 Заявка не сразу снимается и не сразу регистрируется. По TargetOrder1 OrdersChanged приходит? Событие _trader.OrdersChanged подымается каждый раз при выставлении новой заявки и при изменении заявки ReRegisterOrder(...). Вопрос- почему исполненные заявки подсчитываются как активные this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); ??? Исполненная заявка должна получить OrderStates.Done
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| lshaton 
 
   
 
						
						
					 | Дата: 31.10.2011 
 
 
	
			Mikhail Sukhov lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются? В моем последнем тесте заявки отменялись. Наверное в моей программе как-то дублировалось выставление заявок.
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| Mikhail Sukhov 
 
   
 
						
						
					 | Дата: 31.10.2011 
 
 
	
			lshaton Вопрос- почему исполненные заявки подсчитываются как активные Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете?
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  | 
		
			| 
 | 
		
			
				| lshaton 
 
   
 
						
						
					 | Дата: 31.10.2011 
 
 
	
			Mikhail Sukhov lshaton Вопрос- почему исполненные заявки подсчитываются как активные Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете? Поднималось событие Код
            _trader.NewMyTrades += myTrades => this.GuiAsync(() =>
             {
                 foreach (MyTrade myTrade in myTrades)
                 {
                     WriteToTextBox(trade.OrderDirection.ToString() + String.Format(" Сделка {0} по цене {1} тек.позиция= {2} по объему {3}  P&L={4} myP&L={5}", trade.Id, trade.Price, iVolume, trade.Volume, myTrades.GetPnL(), dPL + iVolume * trade.Price));
}});
 После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.
			
			
			
			
		
 | 
			
				|  | 
	
		| Спасибо: |   |  | 
			
				|  |