Привет!
Подскажите, пожалуйста, почему в последних версиях библиотеки(например, 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, "Ошибка");
}
Спасибо!
Comentários (2)
Entrar ou Criar conta, Faça login ou cadastre-se para deixar um comentário
Все верно. Рыночные заявки АПИ Альфы не дает выставлять. Ранее в коннекторе содержалась логика с эмуляцией рыночных заявок через лимитные ордера и заведомо низкой (для продажи высокой) ценой. Для низкоуровневого коннетора AlfaTrader это излишняя логика, работающая неявно для пользователя (плюс ко всему не гибкая, и неудовлетворяющая ряду случаев). Выставляйте лимитки со сдвигом в своем роботе. Приносим извинения за доставленные неудобства.
Понятно.
Спасибо за объяснение!