← Back

Разбегание позиций

Сегодня заметил, что одна заявка закрытия позиции отработала, а стратегия всё считает прибыль на незакрытую позицию. (Причём все заявки были в рамках стратегии) Кто как отслеживает разбегание позиций Квика и стратегии? Кто как реагирует на такое разбегание?

Comments (4)

Login or Create account, Log in or register to leave a comment

ra81
ra81

VassilSanych: Сегодня заметил, что одна заявка закрытия позиции отработала, а стратегия всё считает прибыль на незакрытую позицию. (Причём все заявки были в рамках стратегии) Кто как отслеживает разбегание позиций Квика и стратегии? Кто как реагирует на такое разбегание?

Это значит квик не передал данные. тут думаю есть только один способ. Собирать информацию с квика по позиции портфеля и по всем стратегиям считать суммарную позу. Если разница то Алармить.

VassilSanych
VassilSanych Author

ra81: Это значит квик не передал данные. тут думаю есть только один способ. Собирать информацию с квика по позиции портфеля и по всем стратегиям считать суммарную позу. Если разница то Алармить. Алармлю.

var portF = this.Portfolio.Name;
			var pos = Trader.Portfolios.First(p => p.Name == portF).GetPosition();
			var pos1 = this.Portfolio.GetPosition();
			var strPos = this.Position;
			if (pos != strPos)
				this.AddInfoLog("Позиция {0}, {1}, фактически {2}", strPos, pos1, pos);

Но что-то часто алармится. Позиция стратегии - это, похоже, то, какой стратегия видит будущую позицию после исполнения? А позиция портфеля стратегии и позиция портфеля шлюза - возможно то, что надо. Но вот не повторяется пока разбегание, чтоб поймать.

ra81
ra81

VassilSanych:

ra81: Это значит квик не передал данные. тут думаю есть только один способ. Собирать информацию с квика по позиции портфеля и по всем стратегиям считать суммарную позу. Если разница то Алармить. Алармлю.

var portF = this.Portfolio.Name; var pos = Trader.Portfolios.First(p => p.Name == portF).GetPosition(); var pos1 = this.Portfolio.GetPosition(); var strPos = this.Position; if (pos != strPos) this.AddInfoLog("Позиция {0}, {1}, фактически {2}", strPos, pos1, pos);

> 
> Но что-то часто алармится.
> Позиция стратегии - это, похоже, то, какой стратегия видит будущую позицию после исполнения?
> А позиция портфеля стратегии и позиция портфеля шлюза - возможно то, что надо.
> Но вот не повторяется пока разбегание, чтоб поймать.

Позиция стратегии считается после исполнения ордера. Позиция квика ХЗ как считается. алармить будет часто. Это факт если по событиям реагировать. Тут надо от стратегии скакать уже.
VassilSanych
VassilSanych Author

В связи с этим вопросы:

  • Может ли быть такое, что если после команды снятия всех заявок сразу же выставить новую, как раз это влияет на баги с позицией? Нужно ли после снятия всех заявок ожидание какого-нибудь статуса?

  • Если позиции уже разбежались, как это правильно устранять, не останавливая и не перетирая стратегию?

  • И где, блин, хвалёный stateless?!!!