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


Со сколькими копиями квика можно безболезненно запускать одного робота? Как происходит экспорт через 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