Добрый вечер! Подскажите, пожалуйста, какой код работает для регистрации стоп-заявки? Скачал последнюю версию S# для Quik8 public static Order StopOrder(Decimal _StopOrder_Volume, Sides _StopOrder_Direction, QuikOrderConditionTypes _QuikOrderConditionTypes, String _Comment = \"\") { // Регистрируем заявку QuikOrderCondition qoc = new QuikOrderCondition { Type = QuikOrderConditionTypes.TakeProfitStopLimit, StopPrice = _StopOrder_Direction == Sides.Buy ? Current_Price - trade_cfg.Order_TakeProfit : Current_Price + trade_cfg.Order_TakeProfit, // Цена срабатывания Тейк-профит StopLimitPrice = _StopOrder_Direction == Sides.Buy ? Current_Price + trade_cfg.Order_StopLoss : Current_Price - trade_cfg.Order_StopLoss, // Цена срабатывания Стоп-лимит Offset = trade_cfg.Order_Offset, Spread = trade_cfg.Order_Shift, IsMarketStopLimit = true, IsMarketTakeProfit = true, ConditionOrderSide = _StopOrder_Direction, }; Order New_StopOrder = new Order { Portfolio = MyPortfolio, Security = MySecurity, // Цена дочерней заявки после срабатывания Стоп-лимит Direction = _StopOrder_Direction, Volume = _StopOrder_Volume, ExpiryDate = DateTime.MaxValue, Comment = string.Format(\"{0} {1}\", Robot_Trade_Name, OrderType.Stop), Type = OrderTypes.Conditional, Condition = qoc, }; RegisterOrder(New_StopOrder); return New_StopOrder; }
Добрый вечер! Подскажите, пожалуйста, какой код работает для регистрации стоп-заявки? Скачал последнюю версию S# для Quik8 public static Order StopOrder(Decimal _StopOrder_Volume, Sides _StopOrder_Direction, QuikOrderConditionTypes _QuikOrderConditionTypes, String _Comment = \"\") { // Регистрируем заявку QuikOrderCondition qoc = new QuikOrderCondition { Type = QuikOrderConditionTypes.TakeProfitStopLimit, StopPrice = _StopOrder_Direction == Sides.Buy ? Current_Price - trade_cfg.Order_TakeProfit : Current_Price + trade_cfg.Order_TakeProfit, // Цена срабатывания Тейк-профит StopLimitPrice = _StopOrder_Direction == Sides.Buy ? Current_Price + trade_cfg.Order_StopLoss : Current_Price - trade_cfg.Order_StopLoss, // Цена срабатывания Стоп-лимит Offset = trade_cfg.Order_Offset, Spread = trade_cfg.Order_Shift, IsMarketStopLimit = true, IsMarketTakeProfit = true, ConditionOrderSide = _StopOrder_Direction, }; Order New_StopOrder = new Order { Portfolio = MyPortfolio, Security = MySecurity, // Цена дочерней заявки после срабатывания Стоп-лимит Direction = _StopOrder_Direction, Volume = _StopOrder_Volume, ExpiryDate = DateTime.MaxValue, Comment = string.Format(\"{0} {1}\", Robot_Trade_Name, OrderType.Stop), Type = OrderTypes.Conditional, Condition = qoc, }; RegisterOrder(New_StopOrder); return New_StopOrder; }
Добрый день! Перешел на библиотеку 5.0, прочитал документацию. Сформировал подключение к Quik через адаптер. Connector connector = new Connector(); var luaFixMarketDataMessageAdapter = new LuaFixMarketDataMessageAdapter(connector.TransactionIdGenerator) { Address = \"localhost:5001\".To(), Login = \"quik\", Password = \"quik\".To(), }; var luaFixTransactionMessageAdapter = new LuaFixTransactionMessageAdapter(connector.TransactionIdGenerator) { Address = \"localhost:5001\".To(), Login = \"quik\", Password = \"quik\".To(), }; connector.Adapter.InnerAdapters.Add(luaFixMarketDataMessageAdapter); connector.Adapter.InnerAdapters.Add(luaFixTransactionMessageAdapter); connector.NewSecurity += securitity =\u003e this.GuiAsync(() =\u003e { connector.SubscribeLevel1(securitity); if (securitity.PriceStep != null \u0026\u0026 securitity.Board == ExchangeBoard.MicexTqbr) { SecurityPicker.Items.Add(securitity); } }); connector..CandleSeriesProcessing += DrawCandle; connector.Connect(); Инструменты получил. На инструменты зарегистрировался с помощью метода SubscribeLevel1 Подписался на получение свеч через trader.CandleSeriesProcessing += DrawCandle; По инструкции \"Свечной график\" запросил свечи в определенном диапазоне: var tf = (TimeSpan)CandlesPeriods.SelectedValue; candleSeries.CandleType = typeof(TimeFrameCandle); candleSeries.Security = (Security)SecurityPicker.Items[cntSecurity]; candleSeries.Arg = tf; candleSeries.BuildCandlesMode = MarketDataBuildModes.Load; connector.SubscribeCandles(series, DateTime.Today.Subtract(TimeSpan.FromDays(10)), DateTime.Now); Свечи не приходят, т.е. не заходит в метод DrawCandle. Пробовал через CandleManager стартовать, также не приходят. В файле lua логах смотрел, информация level1 по инструментам приходит. Как мне выяснить в чем дело?