Экспорт данных с ММВБ через Plaza
Atom Ответить
29.03.2013


Добрый день!

Никак не могу разобраться с тем, на какие события нужно подписываться, чтобы обработать данные с ММВБ через API под плазу.

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

Код

trader = new PlazaTrader();
trader.Log += trader_Log;

//..................

// Настраиваем загрузку
            
trader.StreamManager.RevisionManager.Tables.Add(trader.TableRegistry.McxOrderBookSpot); 

trader.Tables.Clear();
trader.Tables.Add(trader.TableRegistry.McxOrderBookSpot);

trader.TableRegistry.StreamRegistry.McxAggrSpot.ReplicationType = PlazaStreamReplicationTypes.RemoteOnline;
            
trader.Connect();

//..................    

trader.StartExport();

Теги:


Спасибо:




12 Ответов
esper

Фотография
Программист
Дата: 29.03.2013
Ответить


Попробуйте так же добавить таблицы:
Код
Trader.TableRegistry.McxSecuritiesSpot
Trader.TableRegistry.McxCommonSpot

И подписаться на событие Trader.MarketDepthsChanged
Спасибо: neangelru

neangelru

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


Действительно, всё гениальное просто.
Не думал, что всё так взаимосвязано, видимо события срабатывают для зарегистрированных инструментов, которые и следовало получать, спасибо!
Автор топика
Спасибо:

neangelru

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


Не долго я шел до следующего вопроса..

таблица McxOrderBookSpot - таблица котировок,
сейчас у меня события на обновление идут через MarketDepthsChanged
соответственно я получаю стакан MarketDepth с одной котировкой, отсюда вопрос

каким образом можно собрать стакан (я так понимаю, что требуются поля replId, replRev, replAct, только не пойму как к ним обратиться, т.е. вытащить их из MarketDepth или Quote)

или же вообще следует каким-то другим путем идти? (имею ввиду подпись на другие события,готовые методы и т.п.)

заранее спасибо за ответы

Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 29.03.2013
Ответить


В SampleGUI стакан так же приходит с одной котировкой?
Спасибо:

neangelru

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


Нетерпеливый я, на тестовом контуре долго не было стакана с котировками > 1
только вот данные не радуют:

MarketDepth md

Security = {MSNG@EQBR}

md.Bids[0] {Бид 3,9041 1}
md.Bids[1] {Бид 0,0001 1}
md.AutoVerify false


--> Бид с ценой 0,0001 - это баг данных пересылаемых биржей?
(вроде AutoVerify=false и говорит об этом, или я не правильно понимаю его смысл?)

Автор топика
Спасибо:

esper

Фотография
Программист
Дата: 29.03.2013
Ответить


Отчего же, кто мне запрещает хотеть купить акцию по такой цене?
Спасибо:

neangelru

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


такой вопрос, котировки то приходят, а вернее сказать сразу стаканы по событию MarketDepthsChanged, можно ли получить номер ревизии измененной котировки в стакане replRev?

вопрос связан с тем, чтобы корректно догружать пропущенные изменения стакана через PlazaStreamReplicationTypes.CombinedDynamic

потому как по событию изменения получаю только текущие изменения стакана, а как сделать так, чтобы грузить его с начала торговой сессии до момента включения?
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 18.04.2013
Ответить


neangelru Перейти
а как сделать так, чтобы грузить его с начала торговой сессии до момента включения?


Стаканы не копятся биржей. Для этого у них сделан ОрдерЛог.
Спасибо: neangelru

neangelru

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


речь идет о ММВБ, на котором через плазу реплики ордерлога не идут

просто я могу получить в режиме снэпшота все данные по сделкам, что были ранее (пропущенные),
однако, не понимаю можно ли каким-то образом получить пропущенные данные по котировкам
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 19.04.2013
Ответить


neangelru Перейти
речь идет о ММВБ, на котором через плазу реплики ордерлога не идут


Через Плазу нет, а вообще он есть.

neangelru Перейти

просто я могу получить в режиме снэпшота все данные по сделкам, что были ранее (пропущенные),
однако, не понимаю можно ли каким-то образом получить пропущенные данные по котировкам


Биржа не накапливает изменения по стаканам.
Спасибо: neangelru

neangelru

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


Получаю сделки из потока MCXSPOT_MDTRADE_REPL и котировки MCXSPOT_AGGR_REPL по Plaza2.
Время сделок и котировок расходится.

В описании таблиц на фтп (http://ftp.rts.ru/pub/forts/Plaza2/bak/p2micexgate_ru.pdf) для MCXSPOT_AGGR_REPL нет времени, отсюда вопрос – какое время проставляется в пересылаемых котировках? (MarketDepth.LastChangeTime) локальное время моего сервера или биржевое время?

В таблице MCXSPOT_MDTRADE_REPL есть поле Time, как понимаю биржевое время..
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 23.05.2013
Ответить


neangelru Перейти

В описании таблиц на фтп (https://ftp.rts.ru/pub/forts/Plaza2/bak/p2micexgate_ru.pdf) для MCXSPOT_AGGR_REPL нет времени, отсюда вопрос – какое время проставляется в пересылаемых котировках? (MarketDepth.LastChangeTime) локальное время моего сервера или биржевое время?


Верно. Плаза по непонятным причинам не пересылает биржевое время. Из-за этого идет подставление локального времени.
Спасибо: neangelru VassilSanych


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

loading
clippy