← Назад

стратегия останавливается после отмены заявок.

спустя 15-20 минут стратегия останавливается после очередной отмены заявок. Никаких сообщение об ошибке не выводится.

Комментарии (12)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

freelancer
freelancer

Повесьте действие на правила: StrategyRuleHelper.Canceled StrategyRuleHelper.Stopping StrategyRuleHelper.Stopped

и посмотрите отладчиком...

Alexander
Alexander
Alexander

vader: спустя 15-20 минут стратегия останавливается после очередной отмены заявок. Никаких сообщение об ошибке не выводится.

как останавливается? что за стратегия - на правилах или ТФ?

vader
vader Автор

На правилах. А что такое ТФ?

Alexander
Alexander

vader: На правилах. А что такое ТФ?

таймфрейм

как стратегия останавливается, что выводит? какие правила добавлены?

vader
vader Автор

StrategyRuleHelper.StrategyNewMyTrades(this) StrategyRuleHelper.FilledPartially(_order)

никаких ошибок в логе нет.

Alexander
Alexander

vader: StrategyRuleHelper.StrategyNewMyTrades(this) StrategyRuleHelper.FilledPartially(_order)

никаких ошибок в логе нет.

Приведите больший кусок кода.

vader
vader Автор


			_order = new OrderExtended
			{
				Portfolio = this.Portfolio,
				Volume =  CheckVolume(vol),
				Price = CheckPrice(_bBuy ? _newPrice - ShiftBigVolume : _newPrice + ShiftBigVolume),
				Security = this.Security,
				Direction = this.Direction,
				Trader = this.Trader,
			};
			
			_timer1 = new Timer(_ReplaceOrderCB, null, _waitingPeriod, _timeToDeleteTimer);
			lock(syncTimer1){
				_isTimer1Stopped = false;
			}
			
			this
				.When(StrategyRuleHelper.FilledPartially(_order))
				.Do(ReplaceTimer);
			
			this.Register(_order);


protected override void OnStarting()
		{
			this
				.When(StrategyRuleHelper.StrategyNewMyTrades(this))
				.Do(CheckMatched);
			
			base.OnStarting();
			
			CreateOrder();
		}

Alexander
Alexander

а с чего вы взяли, что стратегия останавливается?

vader
vader Автор

в лог пишется, когда вызван метод OnStopped.

Alexander
Alexander

Стратегия останавливается по ошибке. Переопределите OnError, посмотрите какой Exception приходит (base.OnError не забудьте вызвать) Также стоит посмотреть на ErrorCount и MaxErrorCount стратегии

  • в случае ошибки стратегия печатает exception с помощью AddErrorLog
vader
vader Автор

"Переопределите OnError, посмотрите какой Exception приходит (base.OnError не забудьте вызвать)" Уже давно сделано, он молчит.

Alexander
Alexander

vader: "Переопределите OnError, посмотрите какой Exception приходит (base.OnError не забудьте вызвать)" Уже давно сделано, он молчит.

Чем равно в OnStopping ErrorCount, MaxErrorCount? Выводится ли что-нибудь через AddErrorLog?