Если я извне вызываю метод Strategy.Stop, то поскольку у моей стратегии есть дочерние, в методе остановки я делаю так
protected override void OnStopped()
{
if (_aggrStrategy != null && _aggrStrategy.ProcessState == StrategyProcessStates.Started){
_aggrStrategy.Stop();
}
base.OnStopped();
}
Когда стратегия сама заканчивает работу, она у меня переходит в состояние Stopping и не выходит из него. Лог такой AMR 11.08.2011 12:13:59.459 [AR] Новая Buy сделка 25643299 на 3 заявки 43881533. AMR 11.08.2011 12:14:00.251 [AR] Стратегия останавливается. AMR 11.08.2011 12:14:00.251 [AR] Стратегия остановлена. AMR 11.08.2011 12:14:00.251 Стратегия останавливается. AMR 11.08.2011 12:14:00.251 [AR] Стратегия останавливается. AMR 11.08.2011 12:14:00.251 [AR] Стратегия остановлена. AMR 11.08.2011 12:14:00.266 [AR] Стратегия останавливается. AMR 11.08.2011 12:14:00.266 [AR] Стратегия остановлена.
Собственно вопрос. Будут ли автоматически вызван метод Stop для дочерних стратегий? Если я останавливаю свою стратегию извне, снимет ли сделки дочерних стратегий такой вызов?
_myStrat.Stop();
_myStrat.CancelActiveOrders();
Комментарии (1)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Да, дочерние стратегии остановятся.
Порой быстрее самому проверить такие мелочи :)