Сертификация торговой системы

Сертификация торговой системы
Atom
9/9/2011
FiNick


Народ, кто-нибудь уже проходил сертификацию робота на РТСе? Поделитесь опытом

Tags:


Thanks:


<< < 8 9 10 11 12  > >>
frontman

Avatar
Date: 12/20/2011
Reply


Александр это в мой огород камень?
Я вот например понятия не имею что и как у вас там в BaseTrader.
И тем более почему стаканы, заявки и т.д. ставятся в соответствие с инструментом по isin_id.
Просто ссылкой на объект Security это сделать нельзя было?
Thanks:

Alexander

Avatar
Date: 12/20/2011
Reply


frontman
Александр это в мой огород камень?
Я вот например понятия не имею что и как у вас там в BaseTrader.
И тем более почему стаканы, заявки и т.д. ставятся в соответствие с инструментом по isin_id.
Просто ссылкой на объект Security это сделать нельзя было?


Не в ваш.
Цель того чтоб это починить - не чтобы закрыть таск. А чтоб действительно работало как нужно.

На биржу вы что передаёте? Security? Везде - в стаканах, сделках, заявках используется isin_id. Именно поэтому и нужен маппинг в PlazaTrader.
Биржа о Stock# и Security знать не знает. Ей важен лишь номер инструмента, что вы передали. Именно по нему идёт сделка на бирже.
Thanks:

frontman

Avatar
Date: 12/20/2011
Reply


Ну да. Это я понимаю.
Ну т.к. у нас в Stock# есть Security - класс общий для всех торговых систем, на него и надо ссылаться. А при отправки запросов бирже использовать те поля этого класса которые нужны биржи.
В случае плазы можно наследоваться от BaseSecurity и расширить этот класс isin_id и еще если тем что нужно.
А можно сделать маппинг и исп в качестве колюча объект Security а в качестве значения тот же isin_id ...
Но в любом случае ссылаться везде на Security.

Это мой взгляд на устройства такой системы. Если вы его считаете неверным, то просто ваше видение расскажите... Это нормальная практика проектирования: сначала обсудить и подумать, а лишь потом кодить...
Thanks:

Alexander

Avatar
Date: 12/20/2011
Reply


frontman
Ну да. Это я понимаю.
Ну т.к. у нас в Stock# есть Security - класс общий для всех торговых систем, на него и надо ссылаться. А при отправки запросов бирже использовать те поля этого класса которые нужны биржи.
В случае плазы можно наследоваться от BaseSecurity и расширить этот класс isin_id и еще если тем что нужно.
А можно сделать маппинг и исп в качестве колюча объект Security а в качестве значения тот же isin_id ...
Но в любом случае ссылаться везде на Security.

Это мой взгляд на устройства такой системы. Если вы его считаете неверным, то просто ваше видение расскажите... Это нормальная практика проектирования: сначала обсудить и подумать, а лишь потом кодить...


Мы вроде это обсуждаем и мусолим уже 2 месяца.

У нас есть класс Security, при работе со стаканами и т.д. и т.п. мы на него и ссылаемся.
Что такое BaseSecurity я не знаю, в Security добавлять новое поле смысла нет, т.к. его никто кроме плазы использовать не будет.

Поэтому и предлагается сделать маппинг внутри PlazaTrader.

P.S. Михаил как раз об этом вчера и писал
Thanks:

frontman

Avatar
Date: 12/20/2011
Reply


BaseSecurity - это базовый класс всех инструментов. О нем Михаил упоминал ранее. От него можно наследоваться и создать например PlazaSecurity. Просто маппинг как то не очень похож на решение из ООП...
А если необходимо будет добавить еще какое нибудь поле которого нет в BaseSecurity? Еще одно соответствие лепить?((
Thanks:

frontman

Avatar
Date: 12/20/2011
Reply


Alexander Mukhanchikov
...На биржу вы что передаёте? Security? Везде - в стаканах, сделках, заявках используется isin_id...

Alexander Mukhanchikov
...У нас есть класс Security, при работе со стаканами и т.д. и т.п. мы на него и ссылаемся...


Я окончательно запутан...
Thanks:

Alexander

Avatar
Date: 12/20/2011
Reply


frontman
BaseSecurity - это базовый класс всех инструментов. О нем Михаил упоминал ранее. От него можно наследоваться и создать например PlazaSecurity. Просто маппинг как то не очень похож на решение из ООП...
А если необходимо будет добавить еще какое нибудь поле которого нет в BaseSecurity? Еще одно соответствие лепить?((


Базовый класс - Security, другого класса инструментов нет (ну кроме BasketSecurity).

Например, какое поле вам может ещё потребоваться для реализации шлюза Плаза2?
Лепить для каждого шлюза свой инструмент - как раз не самый лучший вариант, ибо надо будет везде приводить, проверять на тип.
А это скорость.

Зачем такое городить, если решение с маппингом - вполне очевидное и быстро работающее?
К тому же реализация занимает малое время.
Thanks:

Alexander

Avatar
Date: 12/20/2011
Reply


frontman
Alexander Mukhanchikov
...На биржу вы что передаёте? Security? Везде - в стаканах, сделках, заявках используется isin_id...

Alexander Mukhanchikov
...У нас есть класс Security, при работе со стаканами и т.д. и т.п. мы на него и ссылаемся...


Я окончательно запутан...


Так. Давайте в очередной раз попробую объяснить.

Внутри S# мы работаем с понятием Security - оно используется при регистрации заявки (RegisterOrder), оно используется в стакане (MarketDepth).
Везде где вы в S# работаете с инструментом - вы работаете с Security.

Биржа о Security ничего не знает, она знает лишь о isin_id и sess_id. Именно поэтому для того чтобы подавать заявки на биржу, идентифицировать инструменты в заявках, пришедших с биржи, строить стаканы по инструменту, прешедшему с биржи, нам надо взаимно однозначно сопоставлять isin_id и sess_id с Security.

Для этого и должен быть сделан простейший маппинг.
Thanks:

frontman

Avatar
Date: 12/20/2011
Reply


Например поле ShortIsin. Т.к. оно не меняется при смене сессий. Именно по нему можно обновлять инструмент.
Т.е. получаеться у нас есть уже 2 поля которые есть только у плазы isin_id и ShortIsin
Thanks:

Alexander

Avatar
Date: 12/20/2011
Reply


frontman
Например поле ShortIsin. Т.к. оно не меняется при смене сессий. Именно по нему можно обновлять инструмент.
Т.е. получаеться у нас есть уже 2 поля которые есть только у плазы isin_id и ShortIsin


ShortIsin используется где-то при подаче заявок и т.д. и т.п.?
Это просто secCode, который мы проставляем в Security.Code

Ещё попытка? :)
Thanks:
<< < 8 9 10 11 12  > >>

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

loading
clippy