Код создания и регистрации заявки: ```csharp var order = new Order { Trader = trader, Portfolio = _portfolio, Price = _riu3.BestBid.Price - 20, Security = _riu3, Volume = 1, Direction = OrderDirections.Sell, }; trader.RegisterOrder(order);
Код из сэмпла (портфель):```csharp
trader.NewPortfolios += portfolios =>
{
if (_portfolio == null)
{
// находим нужный портфель и присваиваем его переменной _portfolio
_portfolio = portfolios.FirstOrDefault(p => p.Name == "150750");
if (_portfolio != null)
{
// если инструмент и стакан уже появились,
// то извещаем об этом основной поток для выставления заявки
if (_riu3 != null && _depth != null)
{ waitHandle.Set(); }
}
}
};
account - это и есть код клиента, как я понял. Работа идет на фортс. При регистрации заявки, trader.OrdersRegisterFailed сообщает ошибку: "Указанный счет депо не найден: "150750". Подскажите пожалуйста, как создать правильную для фортса заявку. Заявки из сэпла также не отправляются в quick. Пробовал создавать портфель вручную, как советовали на форуме:
Portfolio portfolio = new Portfolio();
portfolio.Trader = Trader;
portfolio.Name = 150750; // Код клиента из Квика
portfolio.ExtensionInfo = new Dictionary<Object, Object>() { { StockSharp.Quik.DdeEquityPositionColumns.Account, "L01-00000F00" } }; // Счет депо из Квика
не помогло. Verifier сообщает, что все правильно. И еще, не пойму, где нужно прописывать Торговый счет в заявке. Без него ведь в quicke заявку зарегистрировать невозможно...
Комментарии (3)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Попробуйте
Указывайте код для всех транзакций. Временный баг. После обьявления переменной trader просто добавте строчку свыше.
Этот баг был только для УБ и был поправлен в 4.1.14.1
Спасибо, разобрался