Создать новую стоп заявку

Для создания новой стоп заявки необходимо создать объект Order, который содержит информацию о заявке и зарегистрировать его на бирже.

В отличие от обычной заявки для стоп заявки необходимо указать свойство Order.Type как OrderTypes.Conditional и задать свойство Order.Condition с необходимыми условиями заявки.

В дальнейшем, если требуется работа с заявкой (например, отменить ее или изменить), то необходимо использовать именно этот объект Order. Для регистрации заявок на бирже предусмотрен метод Connector.RegisterOrder(StockSharp.BusinessEntities.Order order ) который отправляет заявку на сервер.

Connector Connector = new Connector();		
...   
private void StopOrder_Click(object sender, RoutedEventArgs e)
{
	var order = new Order
	{
		Security = SecurityEditor.SelectedSecurity,
		Portfolio = PortfolioEditor.SelectedPortfolio,
		Price = decimal.Parse(TextBoxPrice.Text),
		Volume = decimal.Parse(TextBoxVolumePrice.Text),
		Side = Sides.Buy,
		Type = OrderTypes.Conditional,
		Condition = new FixOrderCondition
		{
			Type = FixStopOrderTypes.StopLoss,
			StopLoss = decimal.Parse(TextBoxStopLossPrice.Text),
		}
	};
	Connector.RegisterOrder(order);
}
...
							

Для каждого подключения используется собственная реализация класса OrderCondition, учитывающая особенности конкретного протокола или биржи. В этом примере для FIX-подключения применяется FixOrderCondition, а тип стоп-заявки задаётся значением FixStopOrderTypes.StopLoss.

См. также

Состояния заявок