Текущие задачи по PlazaTrader


Текущие задачи по PlazaTrader
Atom
10/10/2011


1) Избавиться от накопления очереди сообщений в первые секунды работы (необходимо разбить получение реплики на несколько соединений, работающих в отдельных thread'ах, каждое со своим циклом выборки).
5) Добавить профилировщик получения данных и отправки заявок - необходимо понять насколько быстрый PlazaTrader у нас (особенно в связи с грядущими изменениями в плазе после нового года).
6) Отфильтровывать данные от уже прошедшей сессии (вечером приходят данные как от дневной, так и от вечерней сессии).
8) Если заявка GTC, то в вечерний клиринг приходит сообщение Inserted, с id_ord = новому номеру заявки и с id_ord1 = старому номеру заявки. Необходимо заменить одно на другое.

Ничего не упустил?

3ий таск я уже начал делать в фоновом режиме.
Кто готов взяться за другие задачи?



Tags:


Thanks:


<< < 5 6 7 8 9  > >>
frontman

Avatar
Date: 11/10/2011
Reply


Офигееееть) Тут все изменения можно смотреть))
Вот я быдляра) Спасибо.
Thanks:

Alexander

Avatar
Date: 11/10/2011
Reply


Сделал существенное увеличение производительности и стабильности выставления заявок. Положил на codeplex.
Тестируйте в своих тестерах, пока frontman пишет общий профилировщик.
У меня по моим тестам на бою получилось ускорение в 3-5 раз. [cool]

to frontman: договаривались уже, что BrokerCode в PlazaTrader ни к чему. Нужен вам локально - создавайте наследника PlazaTrader локально и используйте его там.
Thanks:

frontman

Avatar
Date: 11/10/2011
Reply


Alexander Mukhanchikov Go to
Сделал существенное увеличение производительности и стабильности выставления заявок. Положил на codeplex.
Тестируйте в своих тестерах, пока frontman пишет общий профилировщик.
У меня по моим тестам на бою получилось ускорение в 3-5 раз. [cool]

to frontman: договаривались уже, что BrokerCode в PlazaTrader ни к чему. Нужен вам локально - создавайте наследника PlazaTrader локально и используйте его там.


Александр не получиться. В наследники придется переопределить методы в которых используются закрытые поля класса PlazaTrader. Например _transactionManager в методе OnRegisterOrder. Мне придется весь PlazaTrader переписать...
Thanks:

Alexander

Avatar
Date: 11/10/2011
Reply


frontman Go to
Alexander Mukhanchikov Go to
Сделал существенное увеличение производительности и стабильности выставления заявок. Положил на codeplex.
Тестируйте в своих тестерах, пока frontman пишет общий профилировщик.
У меня по моим тестам на бою получилось ускорение в 3-5 раз. [cool]

to frontman: договаривались уже, что BrokerCode в PlazaTrader ни к чему. Нужен вам локально - создавайте наследника PlazaTrader локально и используйте его там.


Александр не получиться. В наследники придется переопределить методы в которых используются закрытые поля класса PlazaTrader. Например _transactionManager в методе OnRegisterOrder. Мне придется весь PlazaTrader переписать...


Попробуйте так:

есть событие
Code
		/// <summary>
		/// Обработать отправляемую транзакцию до того, как она будет отослана на сервер Plaza.
		/// </summary>
		public event Action<Transaction> ProcessRequest;


Подписываетесь на него. Вам приходит Transaction. Делаете ему SetBrokerCode.
Thanks:

aleksej

Avatar
Date: 11/10/2011
Reply


Alexander Mukhanchikov Go to
Сделал существенное увеличение производительности и стабильности выставления заявок. Положил на codeplex.
Тестируйте в своих тестерах, пока frontman пишет общий профилировщик.
У меня по моим тестам на бою получилось ускорение в 3-5 раз. [cool]

to frontman: договаривались уже, что BrokerCode в PlazaTrader ни к чему. Нужен вам локально - создавайте наследника PlazaTrader локально и используйте его там.


Подтверждаю, Latency заявок снизился очень значительно (у меня, в среднем, со 150 мс. до 50 мс.) и у заявок стали появляться статусы Failed (а раньше просто подвисали на None).
Глянул изменения в коде коннектора, примерно понял.

Огромное спасибо, завтра еще буду тестировать :)
Thanks:

Mikhail Sukhov

Avatar
Date: 11/10/2011
Reply


Alexander Mukhanchikov Go to
Подписываетесь на него. Вам приходит Transaction. Делаете ему SetBrokerCode.


А что за брокерский код? Почему мне его не нужно вводить?
Thanks:

Alexander

Avatar
Date: 11/10/2011
Reply


Mikhail Sukhov Go to
Alexander Mukhanchikov Go to
Подписываетесь на него. Вам приходит Transaction. Делаете ему SetBrokerCode.


А что за брокерский код? Почему мне его не нужно вводить?


frontman делает какую-то хрень на стороне брокера. ему надо его вводить, физикам - нет.
в PlazaTrader полю BrokerCode точно не место.
Thanks:

Mikhail Sukhov

Avatar
Date: 11/10/2011
Reply


Alexander Mukhanchikov Go to
frontman делает какую-то хрень на стороне брокера.


[lol]
Thanks:

frontman

Avatar
Date: 11/11/2011
Reply


Александр благодарю. Вот ток мне кажется время выполнения транзакций из за этого может увеличиться...
И попрошу без вот таких вот оценок. Тем более что вы не в курсе моей работы.
И насчет брокерского кода: он есть во ВСЕХ транзакциях отправляемых РТС. Только вот лично вам он не нужен и поэтому вы считаете, что это лишне. Я не понимаю в чем проблема... Что он места много занимает? Или что? Принцип?
Thanks:

Alexander

Avatar
Date: 11/11/2011
Reply


frontman Go to
Александр благодарю. Вот ток мне кажется время выполнения транзакций из за этого может увеличиться...


"Кажется"? А если потестировать, да посмотреть? Вот для этого и нужен профилировщик-тестировщик, о котором месяца 2 ведётся разговор.
Уже вон отписались и подтвердили мои тесты - снизилось время в 3-4 раза.

Давайте конкретно, без кажется. Где у вас увеличилось время? На каких транзакциях? На каком сервере? Насколько?
И у меня и у aleksej средний Latency снизился со 150мс до 50мс. С каких до каких он вырос у вас?

Пока лишь всё что я вижу - это кажется, наверное, думается. Нужны конкретно цифры.
На кажется уже отвечать надоело.


frontman Go to

И попрошу без вот таких вот оценок. Тем более что вы не в курсе моей работы.
И насчет брокерского кода: он есть во ВСЕХ транзакциях отправляемых РТС. Только вот лично вам он не нужен и поэтому вы считаете, что это лишне. Я не понимаю в чем проблема... Что он места много занимает? Или что? Принцип?


Ну я образно говорю. Я делаю хрень на стороне физика, вы - на стороне брокера :)

Я уже много раз спрашивал - зачем брокерский код простому смертному? Для чего его вписывать в каждую транзакцию? Брокерский код добавляется в транзакцию уже на стороне биржи.
И чем вас не устраивает тот метод изменения транзакции, который я описал выше?

Зачем он в PlazaTrader? Это не то поле, которое нужно знать шлюзу. Оно там явно лишнее.
Далее - в Transaction не будут добавляться новые поля. Нужно что-то установить - пользуйтесь GetField \ SetField. Те немногие поля, которые там есть - я почищу.
Постоянно таблицы модифицируется, что-то добавляется, что-то удаляется. Transaction не будет содержать сотни полей, не будет завязан на конкретную версию шлюза.
Thanks:
<< < 5 6 7 8 9  > >>

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

loading
clippy