Alexander
|
Date: 9/19/2011
Зачем?
Код плазы доступен на codeplex
Если я буду вносить изменения, куда их мёржить? Плюс, может я что-то путаю, но в тех исходниках я не нашел код неймспейса StockSharp.Algo.Strategies, вылезают метаданные и все.
Порядок действий следующий:
- регистрируетесь на codeplex
- вступаете в stocksharp.codeplex.com
- пишите свой ник
- мы вас добавляем в команду
- с помощью программ что там описаны выкачиваете исходники
- делаете фикс
- заливаете на codeplex патч как там описано
StockSharp.Algo.Strategies находится в закрытом TFS и этот namespace не нужен для решения описанной выше задачи.
|
|
|
|
Thanks:
|
|
|
|
|
|
FiNick
|
Date: 9/19/2011
Кстати, странная фишка: у меня если плаза не подключена проц на 100% забит, подключаю нагрузка до 0-2% падает, отключаю опять 100%.
Подключение 11-12 секунд всегда, отключается быстро 2-3 сек. Раундтрип заявки, как выяснилось, зависит от свойства плазатрейдера StreamTimeOut. Я не знаю точно, это из-за того, что заявка долго идет на биржу, или долго идет подтверждение с биржи.
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/19/2011
FiNick:
Кстати, странная фишка: у меня если плаза не подключена проц на 100% забит, подключаю нагрузка до 0-2% падает, отключаю опять 100%.
Подключение 11-12 секунд всегда, отключается быстро 2-3 сек. Раундтрип заявки, как выяснилось, зависит от свойства плазатрейдера StreamTimeOut. Я не знаю точно, это из-за того, что заявка долго идет на биржу, или долго идет подтверждение с биржи.
Любая возникающая ошибка также приходит через 10 секунд - это недостаток дизайна с StreamTimeOut, тоже надо править.
По поводу 100% при отключении - есть на это таск. Только используйте уже последний revision, там ж рефакторинг сильно был произведён, может ушло уже.
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/20/2011
FiNick:
Кстати, странная фишка: у меня если плаза не подключена проц на 100% забит, подключаю нагрузка до 0-2% падает, отключаю опять 100%.
Подключение 11-12 секунд всегда, отключается быстро 2-3 сек. Раундтрип заявки, как выяснилось, зависит от свойства плазатрейдера StreamTimeOut. Я не знаю точно, это из-за того, что заявка долго идет на биржу, или долго идет подтверждение с биржи.
Просьба сопровождать коммиты(чек ины) комментариями и проверять перед выкладыванием :)
после последних 2х чек инов плаза работать перестала.
|
|
|
|
Thanks:
|
|
|
|
|
|
FiNick
|
Date: 9/20/2011
Alexander:
Просьба сопровождать коммиты(чек ины) комментариями и проверять перед выкладыванием :)
после последних 2х чек инов плаза работать перестала.
С комментами ступил, буду писать.
На счет не работает: не билдится или рантайм эксепшны? У меня билдится, но на прогоне данные с потока подтягивать не пробовал.
Кстати, какая у вас политика при создании этих PlazaXXXColumns? Надо туда вбивать все колонки какие есть в документации или только самые необходимые?
Я так смотрю колонки многих таблиц не до конца описаны или не описаны вовсе.
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/20/2011
FiNick:
Alexander:
Просьба сопровождать коммиты(чек ины) комментариями и проверять перед выкладыванием :)
после последних 2х чек инов плаза работать перестала.
С комментами ступил, буду писать.
На счет не работает: не билдится или рантайм эксепшны? У меня билдится, но на прогоне данные с потока подтягивать не пробовал.
Кстати, какая у вас политика при создании этих PlazaXXXColumns? Надо туда вбивать все колонки какие есть в документации или только самые необходимые?
Я так смотрю колонки многих таблиц не до конца описаны или не описаны вовсе.
Исправил. Не грузились данные.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 9/20/2011
FiNick:
Кстати, какая у вас политика при создании этих PlazaXXXColumns? Надо туда вбивать все колонки какие есть в документации или только самые необходимые?
Я так смотрю колонки многих таблиц не до конца описаны или не описаны вовсе.
Некоторые колонки наследуются от базовый классов (когда для опцов и фьючерсов одинаковые колонки). Возможно, часть колонок в базовом классе.
И да, нужно, конечно же, полную проекцию Плаза таблиц.
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/27/2011
|
|
|
|
|
Результаты замеров после вчерашних изменений со 100мс.
Всего послал 10 заявок.
Для первой заявки всё происходит максимально долго:
3мс от RegisterOrder до обработчика PlazaTrader.OnRegisterOrder
110мс на _transactionManager.Factory.CreateRegister(order);
5мс на transaction.Set
12мс на SendTransaction
Далее всё быстрее, но.
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
122мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
4мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
1мс на transaction.Set
0мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
100мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
100мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
1мс на transaction.Set
203мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
34мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
2мс на _transactionManager.Factory.CreateRegister(order);
0мс на transaction.Set
101мс на SendTransaction
0мс от отправки заявки до PlazaTrader.OnRegisterOrder
1мс на _transactionManager.Factory.CreateRegister(order);
1мс на transaction.Set
100мс на SendTransaction
SendTransaction работает медленно, как раз видна дискретность в 100мс.
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/27/2011
Прологировал SendTransaction
Первый запуск:
6мс AddTransaction
45мс SendAsync
Последующие: (где не указан AddTransaction - там 0мс):
42мс SendAsync
204мс SendAsync
24мс SendAsync
1мс AddTransaction
4мс SendAsync
1мс AddTransaction
4мс SendAsync
17мс SendAsync
1мс AddTransaction
4мс SendAsync
33мс SendAsync
100мс SendAsync
|
|
|
|
Thanks:
|
|
|
|
|
|
Alexander
|
Date: 9/27/2011
Включил UseLocalProtocol у себя в примере по умолчанию, полное время исполнения OnOrderRegister снизилось до 0-2мс.
|
|
|
|
Thanks:
|
|
|
|
|