← Zurück

Невозможно выставить рыночную заявку (OrderTypes.Market) AlfaTrader'ом

Привет!

Подскажите, пожалуйста, почему в последних версиях библиотеки(например, 4.1.16.1, или 4.1.17) стало невозможно выставить рыночную заявку (OrderTypes.Market) AlfaTrader'ом?

При попытке это сделать бросается Exception System.InvalidOperationException с сообщением "Рыночные заявки не поддерживаются". Данная функциональность раньше работала, например, с релизом 4.1.11. Заявки OrderTypes.Market на релизе 4.1.11 успешно выставляются.

Код для сабмита рыночной заявки взят из примера AlfaDirect->SampleGUI:

		try
		{
			var order = new Order
			{
				Type = IsMarket.IsChecked == true ? OrderTypes.Market : OrderTypes.Limit,
				Portfolio = Portfolio.SelectedPortfolio,
				Volume = Volume.Text.To<decimal>(),
				Price = Price.Text.To<decimal>(),
				Security = Security,
				Direction = IsBuy.IsChecked == true ? OrderDirections.Buy : OrderDirections.Sell,
			};

			MainWindow.Instance.Trader.RegisterOrder(order);

			DialogResult = true;
		}
		catch (Exception ex)
		{
			MessageBox.Show(this, ex.Message, "Ошибка");
		}

Спасибо!

Kommentare (2)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

Все верно. Рыночные заявки АПИ Альфы не дает выставлять. Ранее в коннекторе содержалась логика с эмуляцией рыночных заявок через лимитные ордера и заведомо низкой (для продажи высокой) ценой. Для низкоуровневого коннетора AlfaTrader это излишняя логика, работающая неявно для пользователя (плюс ко всему не гибкая, и неудовлетворяющая ряду случаев). Выставляйте лимитки со сдвигом в своем роботе. Приносим извинения за доставленные неудобства.

Ivan Zhilvanovich
Ivan Zhilvanovich Autor

Понятно.

Спасибо за объяснение!