StockSharp. Lua. Quik. Программа не видит ничего кроме портфелей
Atom Ответить
12.12.2016


ll

Фотография
Добрый день. Вопросы, подобные моему, где-то уже задавались, но ответов на них я не нашел. Возникла проблема при связи с Quik седьмой версии (7.5.0.72). Подключил к проекту WPF в Visual Studio последнюю доступную на данный момент версию Stock Sharp (4.3.19.4). Устанавливал ее как через NuGet, так и через скачивание архива с сайта и его разблокировку перед разархивированием — на результат не влияло. Запустил Lua скрипт в квике. Если перед подключением подписаться на получение портфелей...

Trader.NewPortfolios += x => {
MessageBox.Show("here");
foreach(var t in x) { MessageBox.Show(t.ToString()); }
};

...то всё работает, список портфелей выводится корректно. Если же Trader.NewPortfolios заменить на Trader.NewTrades, Trader.NewOrders или Trader.NewSecurities, событие просто не происходит и даже первый MessageBox не появляется. В чем здесь может быть проблема? В терминале таблицы заявок и сделок не пусты. Может ли причина быть в том, что программу я тестирую на демо счете брокера? Или названия таблиц с выходом новой версии изменились? Спасибо.



Спасибо:




3 Ответов
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 13.12.2016
Ответить


Попробуйте стандартный пример SampleQuik
Спасибо:

ll

Фотография
Дата: 13.12.2016
Ответить


Mikhail Sukhov Перейти
Попробуйте стандартный пример SampleQuik


Спасибо за ответ. Собственно, из примера в папке SampleQuik и были мной взяты следующие строки:

Trader.NewSecurities += securities => _securitiesWindow.SecurityPicker.Securities.AddRange(securities);
Trader.NewMyTrades += trades => _myTradesWindow.TradeGrid.Trades.AddRange(trades);
Trader.NewTrades += trades => _tradesWindow.TradeGrid.Trades.AddRange(trades);
Trader.NewOrders += orders => _ordersWindow.OrderGrid.Orders.AddRange(orders);
Trader.NewPortfolios += portfolios => .......

а также логика подключения к QUIK. Я лишь временно изменил функции, в которые подаются параметры securities, trades, orders (то есть убрал вывод данных в DataGrid в отдельной форме, который не проходил, и заменил на простой MessageBox), чтобы точно убедиться, что ни одно из событий кроме Trader.NewPortfolios не произошло.
Автор топика
Спасибо:

Сергей Дворцов

Фотография
Дата: 13.12.2016
Ответить


Чтобы пришло Trader.NewTrades 1.) Нужно чтобы инструмент был в таблице обезличенных сделок в Квике
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy