Прежде всего, хочу поздравить всех разработчиков и пользователей S# с наступающим Новым Годом и пожелать всех благ!
Объясните, пожалуйста, зачем нужен метод QuikTrader.RegisterTrades(Security sec)?
Объясню своё непонимание на примере. Рассмотрим несколько строчек кода:
...
foreach(Security sec in _Securities)
trader.RegisterTrades(sec);
trader.StartExport(trader.TradesTable);
trader.NewTrades += SomeFunction;
...
Теперь при появлении новых сделок вызывается собственная функция SomeFunction, в которой обрабатываются сделки с инструментами в коллекции _Securities, как и ожидается.
Однако, если закомментировать первые две строчки и оставитьтолько
...
trader.StartExport(trader.TradesTable);
trader.NewTrades += SomeFunction;
...
Вызывается та же самая функция SomeFunction, с теми же инструментами.
Скажите, пожалуйста, какую функциональную нагрузку несет метод RegisterTrades()? Спасибо.
评论 (5)
登录 或 创建账户, 登录或注册以发表评论
QuikTerminal.EnableFiltering должен быть включён
Смысл каждого вызова RegisterTrades в том, что он добавляет в фильтр таблицы нужный инструмент.
В вашем случае получается что в фильтр уже всё добавлено и уже всё экспортируется, поэтому разницы нет.
Сделал сначала так:
Всё работает, как обычно.
Затем сделал так
Сделки приходить перестали?
Не подскажете, как нужно делать?
Что такое _Securities? Что у вас стоит до вызова в фильтрах таблицы Все сделки и после этого вызова? Какие инструменты передаются в вызов RegisterTrades?
Мой совет - квик слишком медленный и лучше фильтрацию настраивать не программно, а непосредственно из квика руками. Так будет работать на порядок быстрее и сделать это надо будет лишь раз.
OK, давайте тогда пока на этом остановимся. Так и сделаю. То есть RegisterTrades() можно теперь вообще не вызывать?
Для полноты картины, вот ответы на оставшиеся вопросы:
Да. Все фильтры настраиваются через Quik.