Что конкретно делает RegisterTrades()?

Что конкретно делает RegisterTrades()?
Atom
12/30/2011
_maratrus_


Прежде всего, хочу поздравить всех разработчиков и пользователей 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()? Спасибо.


Tags:


Thanks:


Alexander

Avatar
Date: 12/30/2011
Reply


QuikTerminal.EnableFiltering должен быть включён

Смысл каждого вызова RegisterTrades в том, что он добавляет в фильтр таблицы нужный инструмент.

В вашем случае получается что в фильтр уже всё добавлено и уже всё экспортируется, поэтому разницы нет.

Thanks:

_maratrus_

Avatar
Date: 12/30/2011
Reply


Alexander Mukhanchikov: QuikTerminal.EnableFiltering должен быть включён

Смысл каждого вызова RegisterTrades в том, что он добавляет в фильтр таблицы нужный инструмент.

В вашем случае получается что в фильтр уже всё добавлено и уже всё экспортируется, поэтому разницы нет.

Сделал сначала так:


...
trader.Terminal.EnableFiltering = true; 
trader.StartExport(trader.TradesTable);
trader.NewTrades += SomeFunction;
...

Всё работает, как обычно.

Затем сделал так


...
trader.Terminal.EnableFiltering = true; 

foreach(Security sec in _Securities)
     trader.RegisterTrades(sec);

trader.NewTrades += SomeFunction;
...

Сделки приходить перестали?

Не подскажете, как нужно делать?

Thanks:

Alexander

Avatar
Date: 12/30/2011
Reply


Что такое _Securities? Что у вас стоит до вызова в фильтрах таблицы Все сделки и после этого вызова? Какие инструменты передаются в вызов RegisterTrades?

Мой совет - квик слишком медленный и лучше фильтрацию настраивать не программно, а непосредственно из квика руками. Так будет работать на порядок быстрее и сделать это надо будет лишь раз.

Thanks:

_maratrus_

Avatar
Date: 12/30/2011
Reply


Alexander Mukhanchikov: Мой совет - квик слишком медленный и лучше фильтрацию настраивать не программно, а непосредственно из квика руками. Так будет работать на порядок быстрее и сделать это надо будет лишь раз.

OK, давайте тогда пока на этом остановимся. Так и сделаю. То есть RegisterTrades() можно теперь вообще не вызывать?

Для полноты картины, вот ответы на оставшиеся вопросы:

Alexander Mukhanchikov: Что такое _Securities? Это коллекция инструментов, полученных при экспорте таблицы "Инструменты"

Alexander Mukhanchikov: Какие инструменты передаются в вызов RegisterTrades? Все инструменты, которые получены при экспорте таблицы "Инструменты"

Alexander Mukhanchikov: Что у вас стоит до вызова в фильтрах таблицы Все сделки и после этого вызова? Если имеются в виду фильтры Quik, то фильтры настроены так, чтобы выводились сделки инструментов из таблицы "Инструменты" и еще парочки других инструментов.

Thanks:

Alexander

Avatar
Date: 12/30/2011
Reply


maratrus:

Alexander Mukhanchikov: Мой совет - квик слишком медленный и лучше фильтрацию настраивать не программно, а непосредственно из квика руками. Так будет работать на порядок быстрее и сделать это надо будет лишь раз.

OK, давайте тогда пока на этом остановимся. Так и сделаю. То есть RegisterTrades() можно теперь вообще не вызывать?

Да. Все фильтры настраиваются через Quik.

Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy