Stock# с несколькими квиками
Atom
03.08.2010


Со сколькими копиями квика можно безболезненно запускать одного
робота?
Как происходит экспорт через DDE в Stock# - одинаковые данные, я так
понимаю, фильтруются?

Вопрос возник не случайно - сейчас с 7ми квиками роботы съедают до
50-60% от нашего довольно мощного сервера (на каждом квике запущен 1-2
робота, каждый робот запускается 1 секунду). Стоит ли искать ошибку,
пытаться оптимизировать самого робота или лучше закинуть часть квиков
на другой сервер?

Теги:


Спасибо:


<< < 2 3 4 5  >
Alexander

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


Maxim Перейти
Alexander, поделитесь опытом как работается с несколькими Квиками?

Интересует ситуация, когда в Квиках настроены одинаковые бумаги.
Одна из задач использования MultiTrader - это минимизировать сделать поступление
информации более стабильной. Что бы при задержках или падении части роботов программа
все равно получала актуальные данные.

Реализовывать MultiTrader у себя в программе еще не начал.
Возможно будут более конкретные вопросы. Пока могу задать такие:
1) Какие подводные камни стоит учесть? На что обратить внимание?
2) Предположим используется MultiTrader с двумя разными Квиками.
В этих Квиках настроены «Все сделки» и «Стаканы» для одной бумаги, например Сбера.
Выше Вы написали, что данные поступают от двух Квиков одновременно.
Дублирующие данные учитываются и отбрасываются.
Верно ли это для «Стаканов»?
3)Нормально ли теперь работает ReConnectionManager? Можно ли его использовать, если один из Квиков упадет?


Я использую MultiTrader лишь как коллекцию квиков. Фактически работа ведётся с каждым QuikTrader отдельно.
ReConnectionManager устанавливается для каждого квика, поэтому если один падает - другие-то работают.
Экспорт запускается для каждого квика отдельно. Опять же - сделано для того, чтоб при падении одного квика с данными, другие нормально работали.
В стратегиях используются непосредственно нужные QuikTrader.
MultiTrader используется для получения событий в основном о непрошедших сделках и т.д. и т.п. Может я неоптимально его использую, но пришёл именно к такому решению - как раз для того чтобы постоянно было дублирование данных для пущей стабильности.
Спасибо:

Maxim

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


Alexander, спасибо за ответ.
Не совсем Вас понял. Еще немножко уточню.

1) Настроены ли у Вас во всех Квиках одинаковые бумаги?
Например, во всех четырех Квиках идет вывод тикков и стаканов для Сбера.

2) Используете ли Вы свойство Trades из MultiTrader, или используете это свойство у каждого Квика?

3)Используете ли Вы метод GetMarketDepth из MultiTrader, или используете этот метод у каждого Квика?
Спасибо:

Alexander

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


Maxim Перейти
Alexander, спасибо за ответ.
Не совсем Вас понял. Еще немножко уточню.

1) Настроены ли у Вас во всех Квиках одинаковые бумаги?
Например, во всех четырех Квиках идет вывод тикков и стаканов для Сбера.

2) Используете ли Вы свойство Trades из MultiTrader, или используете это свойство у каждого Квика?

3)Используете ли Вы метод GetMarketDepth из MultiTrader, или используете этот метод у каждого Квика?


1) Да, конечно. Каждый квик работает с одинаковыми стратегиями и с одинаковыми бумагами.
2) Стратегию я регистрирую используя конкретный необходимый QuikTrader. Поэтому Trades используется из него, а не из MultiTrader
3) GetMarketDepth я вызываю для каждого квика - для дублирования данных в случае если один из квиков упадёт чтоб работа продолжалась.
Спасибо:

Maxim

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


Alexander Перейти

2) Стратегию я регистрирую используя конкретный необходимый QuikTrader. Поэтому Trades используется из него, а не из MultiTrader
3) GetMarketDepth я вызываю для каждого квика - для дублирования данных в случае если один из квиков упадёт чтоб работа продолжалась.


Правильно я понимаю, что если один Квик упадет, то стратегия которая ему соответствует перестанет работать?
Спасибо:

Alexander

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


Maxim Перейти
Alexander Перейти

2) Стратегию я регистрирую используя конкретный необходимый QuikTrader. Поэтому Trades используется из него, а не из MultiTrader
3) GetMarketDepth я вызываю для каждого квика - для дублирования данных в случае если один из квиков упадёт чтоб работа продолжалась.


Правильно я понимаю, что если один Квик упадет, то стратегия которая ему соответствует перестанет работать?


Да. Т.к. данные в него перестанут поступать. Но все остальные квики с этой стратегией будут работать.
Опережая вопрос - как сделать автоматическое дублирование данных я не знаю :)

Вообще наверное MultiTrader как раз и должен это делать.
Спасибо:

Maxim

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


Alexander Перейти

Опережая вопрос - как сделать автоматическое дублирование данных я не знаю :)
Вообще наверное MultiTrader как раз и должен это делать.


Я же в этом ключе и веду весь диалог :)
Пытаюсь выяснить, как Вы используете MultiTrader для собирания одинаковых, дублирующихся данных со всех квиков, а потом использования этих данных из MultiTrader.

Вообщем, насколько я теперь понял, MultiTrader в этом ключе никто не использовал.
Придется наступать на грабли самому.
Спасибо:

Alexander

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


Удалил предыдущий ответ, был неправ.
Сейчас пересмотрел код - MultiTrader фильтрует сделки по уникальности trade.ID (если стоит флаг SupportTradesUnique).
Если флаг не стоит - фильтрации не будет.
Остальные данные суммируются.
Подписка на события происходит для каждого из квика при добавлении его в AggregatedTraders.

Также не забывайте, что у каждого trade есть поле Security. А оно будет разным для разных квиков (из-за Security.Trader).
Спасибо: Maxim

dart

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


Добрый день,
Работаю одним роботом с двумя квиками. И данные с ТВС первого квика приходят с запозданием.
Например, сегодня на 17 часов последний тик был от 16 ч 11 мин.
Во втором квике все тики прищли вовремя.
Может проще запустить два робота отдельно на каждый квик?
ЗЫ. наблюдал это на версиях 2.6.2 и 3.1.8
Спасибо:

Alexander

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


dart Перейти
Добрый день,
Работаю одним роботом с двумя квиками. И данные с ТВС первого квика приходят с запозданием.
Например, сегодня на 17 часов последний тик был от 16 ч 11 мин.
Во втором квике все тики прищли вовремя.
Может проще запустить два робота отдельно на каждый квик?
ЗЫ. наблюдал это на версиях 2.6.2 и 3.1.8



Как строится работа с двумя квиками? Как определяется задержка?
У меня в настоящий момент работает 6 квиков, 1 робот, задержек не наблюдаю.
Спасибо:

dart

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


Alexander Перейти

Как строится работа с двумя квиками? Как определяется задержка?
У меня в настоящий момент работает 6 квиков, 1 робот, задержек не наблюдаю.

1. Как обычно, объявляю два квика. Без использования Multitrader.
2. Смотрю сделки методом Filter. Смотрю дату последнего тика.
Спасибо:
<< < 2 3 4 5  >

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

loading
clippy