← Zurück

Данные ММВБ через Plaza II

Итак, свершилось!

Уважаемые коллеги,

Биржа ММВБ – РТС начинает трансляцию анонимной рыночной информации по Валютному рынку и Фондовому рынку в секторе Основной рынок через шлюз Plaza II, а также информации по Фондовому рынку через шлюз FAST.

С 17 февраля 2012 года данные сервисы будут доступны на тестовом полигоне. О дате введения возможности получения данных в боевом режиме будет сообщено дополнительно.

Таким образом, через шлюз Plaza II будет доступна информация по следующим рынкам:

· Cрочный рынок FORTS · Фондовый рынок в Секторе рынка Standard · Валютный рынок в режиме РТС Money · Фондовый рынок в Секторе Основной рынок · Валютный рынок

С предоставлением этого сервиса процесс обработки рыночных данных становится более гибким, позволяя участникам получать данные по основным рынкам Биржи ММВБ-РТС в рамках одного шлюзового логина, использовать разнообразные программные методы обработки, агрегирования и анализа информации, а также облегчается применение автоматизированных систем принятия решений и управления заявками, которые оперируют данными с нескольких рынков.

В шлюзах Plaza-2 по Валютному и Фондовому рынкам, а также в шлюзе FAST по Фондовому рынку будет доступна следующая информация:

  • все сделки (таблица ALL_TRADES)
  • котировки (таблица ORDERBOOK)
  • общие показатели инструментов (таблица SECURITIES)
  • справочные и сессионные данные

Информация, передаваемая в составе шлюзов соответствует текущим форматам, применяемым для трансляции данных Фондового и Валютного рынков.

Описание новых потоков и таблиц шлюза Plaza-2 доступно по адресу: ftp://ftp.rts.ru/pub/FORTS/test/Plaza2/p2micexgate_ru.pdf

Схемы данных для потоков данных доступны по адресу: ftp://ftp.rts.ru/pub/FORTS/test/Plaza2/Scheme/micex_scheme.ini

Новый дистрибутив клиентского шлюза, включающий схемы данных для рынков FORTS, Standard, Фондового и Валютного рынков доступен по адресу:

32 бита:

ftp://ftp.rts.ru/pub/FORTS/test/Plaza2/P2_ClientGate1.14.4_32_MCX.exe

64 бита:

ftp://ftp.rts.ru/pub/FORTS/test/Plaza2/P2_ClientGate1.14.4_64_MCX.exe

Сегодня попробую поддержать это всё нашим коннектором.

War dieses Thema hilfreich?

Thema teilen

Kommentare (29)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Alexander
Alexander Autor

Есть желающие помочь?

Alexander
Alexander Autor

Добавил поддержку ММВБ через Plaza II, обновил Sample. 😎 Сейчас в примере успешно получаются данные по акциям и по валютам.

Классы ММВБ, которые получаются задаются через PlazaTrader.MicexClasses. По умолчанию там все классы акций и валюта.

hurricane
hurricane

отличная новость!!! 👍

Alexander
Alexander Autor

Уважаемые коллеги, трансляция анонимной рыночной информации по Валютному рынку и Фондовому рынку через шлюз PLAZA2 доступна в production-системе.

Дистрибутивы с соответствующими настройками выложены здесь:

ftp://ftp.rts.ru/pub/FORTS/Plaza2/P2_ClientGate1.14.8_32.exe ftp://ftp.rts.ru/pub/FORTS/Plaza2/P2_ClientGate1.14.8_64.exe

Обращаем ваше внимание, на то, что для комфортного получения данных по каждому из рынков потребуется дополнительная полоса пропускания сетевого канала не менее 1 Мбит/сек.

Для подключения обращайтесь в департамент продаж ММВБ-РТС, ts-sales@micex.com , тел. (495) 363-3232

До 1 января 2013 г. при подключении данных ASTS к существующему логину FORTS дополнительная плата не взимается, при подключении нового логина только для данных ASTS взимается плата как за просмотровый логин FORTS.

По техническим вопросам обращайтесь в службу тех. поддержки help@micex.com (495) 733-9507

Макс
Макс

Нет данных по валютному рынку. Боевой логин, samplegiu, S# 4.1.2 Commit 17615, шлюз P2_ClientGate1.14.8_32

ASTS вроде как подключен, потому что есть данные по фондовому рынку.

Alexander
Alexander Autor

в PlazaTrader.MicexClasses присутствует нужный класс?

Макс
Макс

Alexander Mukhanchikov: в PlazaTrader.MicexClasses присутствует нужный класс?

вижу классы: EQBR,EQBS,EQNE,EQNL,EQLV,EQLI

в инструкции написано, что валюты по умолчанию включены. есть тут валюта? в описании http://fs.rts.micex.ru/files/707 за валюту вроде отвечает CETS CNGD TRAN

Alexander
Alexander Autor

Значит нет там нужного класса, потому фильтруется. Как зальём на codeplex новую версию - там будет возможность добавлять классы и пофиксил описание, убрал что валюта включена.

Макс
Макс

Спасибо, будем ждать обновление. И еще, в том же примере выходит ошибка:

Ошибка обработки данных

System.InvalidOperationException: Поток MCXSPOT_MDTRADE_REPL выбросил ошибку. ---> System.Runtime.InteropServices.COMException: Couldn't open baseless repl datastream

в P2ClientGateMTA32.CP2DataStreamClass.Open(CP2Connection conn)

в #=qOoXJAAR8vTGK6wHwuDR_rVgBkG1EYyNI_ZDPWl6Yn95Tsl9V7LKWpB_NuGIXGHfD.#=q9qGPtGFBJa5lPr712q4SCQ==(#=q0fMXffpv$kMa0GexXmN3B4HKTd9dQzF2soBOyfSj$04QvxsFzaqj_4LlrLUZSAdf #=qDyLgYjKH4muHg6AUTZfgXg==)

в StockSharp.Plaza.PlazaStreamManager.#=qx$BU0B9UtH1S27XLgVuPZhPrOLgV$QhqLdHLBVkgYyM=.#=q$mOy$716ZuvUxDHjYw71Urhcad5b7OtrDG1wcCuViqs=(#=qULpFD3DVudGPg66f7bHCU4AlxqmxNwM$OOnJPh7YIw5o7lwL8jXeI0O63S3dFTnS #=qfOA0cjxrnYWErSZXBMeHhA==, Action`1 #=qu5sMJaxWjT6tbrbNA8onuQ==)

--- Конец трассировки внутреннего стека исключений ---

ОК

А также заметил, что данные по фондовому рынку приходят с задержкой, сначала 15 минут, перезапустил стало 9 мин, еще перезапустил - вылезла таже ошибка и задержка стала 7 мин.

Такое ощущение, что это время, которое уходит на прогрузку данных.

Alexander
Alexander Autor

Это в ртс с логами обращайтесь.

Макс
Макс
  1. В версии stocksharp-17829 trunk нет изменений по валютному рынку?
  2. по ммвб хрень какая то: данные приходят не все, с какими то задержками. пытался смотреть сбербанк обычка на ммвб через плазу 4.1 и через quik.
  • в quik гораздо больше сделок.
  • всегда разница в несколько копеек в цене
  • пытался смотреть по номеру сделки . в quik номер - 10 знаков, через плазу - 9 знаков и номера вообще отличаются.
  • во время клиринга на фортс данные по ммвб не приходят.

Кто-нибудь пользуется ASTS ? Отпишитесь плиз. Не пойму у меня косяк или в S# или на биржу надо писать.

Alexander
Alexander Autor

Изменения есть, теперь список можно менять. Советую на биржу позвонить с АСТС.

Макс
Макс

Изменения есть, теперь список можно менять

Подскажите как добавить валюту?

Советую на биржу позвонить с АСТС.

Понял в чем косяк - я смотрел не ммвб, а ртс стандарт.

искал по коду SBER, а какой код у ммвб сбербанка? начинают терзать смутные сомнения, может у меня вообще asts неподключен... отписался на биржу


//Появление инструментов
                            Trader.NewSecurities += securities => this.GuiAsync(() =>
                            {

                                foreach (Security sec in securities)
                                {
                                    //log("" + sec.Code);
                                    if (sec.Code == secCode1)
                                    {
                                        _ins1 = sec;
                                        log("Нашли инструмент:" + _ins1.Code + " short_name: " + _ins1.ShortName);
                                    }

Alexander
Alexander Autor

Макс: Подскажите как добавить валюту?

Добавить нужный класс в список поддерживаемых ммвб классов.

Макс
Макс

Теперь по поводу валютного рынка:

Alexander Mukhanchikov:

Макс: Подскажите как добавить валюту? Добавить нужный класс в список поддерживаемых ммвб классов.

Добавляю классы:


 Trader.MicexClasses.Add("CETS");
 Trader.MicexClasses.Add("TRAN");

if (IsMicexSupport.IsChecked == true)
{
	Trader.Tables.Add(Trader.TableRegistry.McxSecuritiesSpot);
	Trader.Tables.Add(Trader.TableRegistry.McxSecuritiesCurrency);
	Trader.Tables.Add(Trader.TableRegistry.McxCommonSpot);
	Trader.Tables.Add(Trader.TableRegistry.McxCommonCurrency);
	Trader.Tables.Add(Trader.TableRegistry.McxOrderBookSpot);
	Trader.Tables.Add(Trader.TableRegistry.McxOrderBookCurrency);
	Trader.Tables.Add(Trader.TableRegistry.McxTradesCurrency);
	Trader.Tables.Add(Trader.TableRegistry.McxTradesSpot);
 }                     


 MessageBox.Show(this, Trader.MicexClasses.ToString());

Теперь классы такие: {EQBR,EQBS,EQNE,EQNL,EQLV,EQLI,CETS,TRAN}

После запуска выходит 3 ошибки:

Ошибка обработки данных

System.InvalidOperationException: Поток MCXSPOT_MDTRADE_REPL выбросил ошибку. ---> System.Runtime.InteropServices.COMException: Couldn't open baseless repl datastream

в P2ClientGateMTA32.CP2DataStreamClass.Open(CP2Connection conn)

в #=qasG_Mg1cgREdo3R9pQO0W92G$yL6C6Is$XwcwRkY9$J1Y_NuDWYa_jWJv3jX8fML.#=qCmxsV$jEUrH7jj4LLbP14w==(#=qRrRRmp3HwYTcE$0Z7qWRkdbWEq5ROyb6IDLeYy5HnwpT_Jmf7sRaCAmeqcqNt2a7 #=qI_Z5SY4hNH1vYviGOUbVng==)

в StockSharp.Plaza.PlazaStreamManager.#=qwAVu03f70PvGv2NmDj0UqVBhju6ScGdDeh4TcDf_OCQ=.#=q4fI9kOIy1a8$3NN7pSn5k8X82P9eaQHVQtP$pYMYIwo=(#=qTVSc2Z0v5QR5Pga5WUw3qXkNNkjj$YpCIxJTD5LtvHUVPFdxuRiiGrGEQMHxGpPH #=qujf7xMTSvbDXGQC01xJPjA==, Action`1 #=qR3Eb55I9z8gUQOuNi3sfwA==)

--- Конец трассировки внутреннего стека исключений ---

ОК


Ошибка обработки данных

System.InvalidOperationException: Поток MCXCC_MDTRADE_REPL выбросил ошибку. ---> System.Runtime.InteropServices.COMException: Couldn't open baseless repl datastream

в P2ClientGateMTA32.CP2DataStreamClass.Open(CP2Connection conn)

в #=qasG_Mg1cgREdo3R9pQO0W92G$yL6C6Is$XwcwRkY9$J1Y_NuDWYa_jWJv3jX8fML.#=qCmxsV$jEUrH7jj4LLbP14w==(#=qRrRRmp3HwYTcE$0Z7qWRkdbWEq5ROyb6IDLeYy5HnwpT_Jmf7sRaCAmeqcqNt2a7 #=qI_Z5SY4hNH1vYviGOUbVng==)

в StockSharp.Plaza.PlazaStreamManager.#=qwAVu03f70PvGv2NmDj0UqVBhju6ScGdDeh4TcDf_OCQ=.#=q4fI9kOIy1a8$3NN7pSn5k8X82P9eaQHVQtP$pYMYIwo=(#=qTVSc2Z0v5QR5Pga5WUw3qXkNNkjj$YpCIxJTD5LtvHUVPFdxuRiiGrGEQMHxGpPH #=qujf7xMTSvbDXGQC01xJPjA==, Action`1 #=qR3Eb55I9z8gUQOuNi3sfwA==)

--- Конец трассировки внутреннего стека исключений ---

ОК


Ошибка обработки данных

System.InvalidOperationException: Поток MCXCC_INFO_REPL выбросил ошибку. ---> System.Runtime.InteropServices.COMException: Couldn't open baseless repl datastream

в P2ClientGateMTA32.CP2DataStreamClass.Open(CP2Connection conn)

в #=qasG_Mg1cgREdo3R9pQO0W92G$yL6C6Is$XwcwRkY9$J1Y_NuDWYa_jWJv3jX8fML.#=qCmxsV$jEUrH7jj4LLbP14w==(#=qRrRRmp3HwYTcE$0Z7qWRkdbWEq5ROyb6IDLeYy5HnwpT_Jmf7sRaCAmeqcqNt2a7 #=qI_Z5SY4hNH1vYviGOUbVng==)

в StockSharp.Plaza.PlazaStreamManager.#=qwAVu03f70PvGv2NmDj0UqVBhju6ScGdDeh4TcDf_OCQ=.#=q4fI9kOIy1a8$3NN7pSn5k8X82P9eaQHVQtP$pYMYIwo=(#=qTVSc2Z0v5QR5Pga5WUw3qXkNNkjj$YpCIxJTD5LtvHUVPFdxuRiiGrGEQMHxGpPH #=qujf7xMTSvbDXGQC01xJPjA==, Action`1 #=qR3Eb55I9z8gUQOuNi3sfwA==)

--- Конец трассировки внутреннего стека исключений ---

ОК

Валютные инструменты действительно появились, но не приходит цена сделки, причем менятся ask bid, меняется объем последней сделки, а цена 0.

Версия stocksharp-17829 trunk.

Кстати, с версией 4.1 (до лицензии) тоже самое, только 3 ошибки не появляются.

Макс
Макс

По поводу ММВБ: На бирже ответили, что ASTS у меня подключен.

Когда подключаюсь с галкой ММВБ, то получаю 3132 инструмента, среди которых SBER Сбербанк Сбербанк России ОАО ао - как оказалось это инструмент РТС Стандарт.

Когда подключаюсь без галки ММВБ получаю 2445 инструментов, вижу только инструменты РЕПО на Сбербанк, Сбербанк с РТС Стандарт отсутствует.

Вопрос: а где Сбербанк с ММВБ и прочие фишки с ММВБ ?

Alexander
Alexander Autor

Не может потоки открыть почему-то. Надо на биржу обратиться.

Макс
Макс

Alexander Mukhanchikov: Не может потоки открыть почему-то. Надо на биржу обратиться. ок, обращусь. А по предыдущему посту (фишки ММВБ) есть соображения?

Alexander
Alexander Autor

По тому вопросу - какая версия? с codeplex? Проблема связана с этим http://forum.rts.ru/viewtopic.asp?t=23886 Долбанный АСТС, я уже нахлебался с ним.

Не обращайте внимания на ртс - это ммвб. надо понять какое название класса там.

Макс
Макс

Alexander Mukhanchikov: По тому вопросу - какая версия? с codeplex? Проблема связана с этим http://forum.rts.ru/viewtopic.asp?t=23886

Для чистоты эксперимента взял сегодня версию с кодеплекса stocksharp-17880 trunk Видимо, потому что код у сбербанка SBER и на ММВБ и на РТС стандарт глюки.

Не обращайте внимания на ртс - это ммвб. надо понять какое название класса там. нет, он показывает именно РТС Стандарт, т.к. цены, объемы в стакане такие, да и на время клиринга фортс 1400-1403, котировки перестают приходить, а на ММВБ торги идут.

  • какая то херня с запаздыванием : время последней сделки на несколько минут отстает от реального времени и время отставания плавает...и с каждым перезапуском это время разное.

Долбанный АСТС, я уже нахлебался с ним.

Да, походу это временный костыль, пока биржи не объединят:

Технически рынки и системы ММВБ и РТС еще разделены, наиболее правильно следить за торгами на ММВБ через брокера, то есть систему QUIK. РТС тоже транслирует данные с рынков ММВБ, но про, то, как они это делают и откуда берутся данные лучше уточнить у поддержки РТС тел. 733-95-07.

Так что фишек ММВБ походу нет в списке инструментов.

Alexander
Alexander Autor

Макс:

Alexander Mukhanchikov: По тому вопросу - какая версия? с codeplex? Проблема связана с этим http://forum.rts.ru/viewtopic.asp?t=23886

Для чистоты эксперимента взял сегодня версию с кодеплекса stocksharp-17880 trunk Видимо, потому что код у сбербанка SBER и на ММВБ и на РТС стандарт глюки.

Так что фишек ММВБ походу нет в списке инструментов.

Я сделал проще - добавил вывод класса в таблицу. как оказалось - ММВБ в виде EQBR действительно присутствует. Но он тестовый, потому видимо цены и не совпадают.

Макс
Макс

По валюте. stocksharp-17880 trunk Добавил в samplegui


Trader.MicexClasses.Add("CETS");
Trader.MicexClasses.Add("TRAN");
.......
Trader.NewTrades += trades =>this.GuiAsync(() => 
  {
   if (_ins1!=null)
       if (_ins1.LastTrade!=null)
           if (_ins1.BestPair!=null)

label1.Content = "" + _ins1.LastTrade.Price+" "+_ins1.BestPair.ToString()+" "+_ins1.LastTrade.Volume+" "+_ins1.LastTrade.Time.ToString();

    //_tradesWindow.Trades.AddRange(trades);
  });


На видео видно, что цена иногда прогружается правильная, но потом опять 0, при этом меняется стакан и даже объем последней сделки. Больше похоже на баг S#, чем на косяк биржи?

Alexander
Alexander Autor

Макс: По валюте. stocksharp-17880 trunk Добавил в samplegui

Trader.MicexClasses.Add("CETS"); Trader.MicexClasses.Add("TRAN"); ....... Trader.NewTrades += trades =>this.GuiAsync(() => { if (_ins1!=null) if (_ins1.LastTrade!=null) if (_ins1.BestPair!=null)

label1.Content = "" + _ins1.LastTrade.Price+" "+_ins1.BestPair.ToString()+" "+_ins1.LastTrade.Volume+" "+_ins1.LastTrade.Time.ToString();

//_tradesWindow.Trades.AddRange(trades);

});

> 
> На видео видно, что цена иногда прогружается правильная, но потом опять 0, при этом меняется стакан и даже объем последней сделки.
> Больше похоже на баг S#, чем на косяк биржи?
> ::iframe{url=https://www.youtube.com/embed/T4LVOZuyJGA width=640 height=390}


Да, скорее косяк, спасибо.
На бирже в потоке спота есть Last - последняя цена - в потоке common.
Для валюты - нет.
Я изменил поведение - добавил запись в Last.Price - Base SWAP price, хоть и не уверен что это верно.

ftp://ftp.rts.ru/pub/FORTS/Plaza2/p2micexgate_ru.pdf
вот ссылка на доку по ммвб
Макс
Макс

Alexander Mukhanchikov:

Макс: По валюте. stocksharp-17880 trunk Добавил в samplegui

Trader.MicexClasses.Add("CETS"); Trader.MicexClasses.Add("TRAN"); ....... Trader.NewTrades += trades =>this.GuiAsync(() => { if (_ins1!=null) if (_ins1.LastTrade!=null) if (_ins1.BestPair!=null)

label1.Content = "" + _ins1.LastTrade.Price+" "+_ins1.BestPair.ToString()+" "+_ins1.LastTrade.Volume+" "+_ins1.LastTrade.Time.ToString();

//_tradesWindow.Trades.AddRange(trades);

});

> >
> > На видео видно, что цена иногда прогружается правильная, но потом опять 0, при этом меняется стакан и даже объем последней сделки.
> > Больше похоже на баг S#, чем на косяк биржи?
> > ::iframe{url=https://www.youtube.com/embed/T4LVOZuyJGA width=640 height=390}
> 
> 
> Да, скорее косяк, спасибо.
> На бирже в потоке спота есть Last - последняя цена - в потоке common.
> Для валюты - нет.
> Я изменил поведение - добавил запись в Last.Price - Base SWAP price, хоть и не уверен что это верно.
> 
> ftp://ftp.rts.ru/pub/FORTS/Plaza2/p2micexgate_ru.pdf
> вот ссылка на доку по ммвб



Не правильно.
Оказывается LAST поле вообще не транслировалось.

ответ биржи
> Вот информация по цене последней сделки.
> "Обратите внимание, что в потоке общей информации по инструментам по валютному рынку (MCXCC_MDCOMMON_REPL) в таблице COMMON добавляется новое поле LAST - цена последней сделки по аналогии с таким же потоком фондового рынка (MCXSPOT_MDCOMMON_REPL).
> 
> На тестовом полигоне изменения вступают в силу с 26/07/2012, планируемая дата внедрения в боевую систему - 2/08/2012."
> 
> С уважением,
> Еремина Татьяна
Косяк биржи был.
Так что лучше вернуть поле Last как было :)


Макс
Макс

Но он тестовый, потому видимо цены и не совпадают.

Данные реальные, но они отстают по времени и при работе время отставания увеличивается.

Общался с биржей:

на сервере открытие потока: 12:17:43.959;P2ReplServer;;<-OPEN;from fg41cm_00clb.SS_5 12:17:43.959;P2ReplServer;;->OPEN_ANS ch 5484ca35e4; name MCXSPOT_MDCOMMON_REPL 12:17:44.019;p2repl-cli;;DATA message received;stream 0x1B67990 12:17:44.019;p2isam;;Transaction started 12:17:44.020;P2ReplStorage;;Changed revs at commit; stream 0x1B67990; cnt 1 12:17:44.020;P2ReplStorage;; tbl_idx 0; rev range 3158443 - 3158457 12:17:44.020;p2isam;;Transaction commited 12:17:44.028;P2ReplServer;;<-SCHEME 12:17:44.028;P2ReplServer;;Channel 5484ca35e4 assigned to group 70 12:17:44.028;P2ReplServer;;->SCHEME_ANS ch 5484ca35e4, err 0 12:17:44.095;p2repl-cli;;DATA message received;stream 0x1B67990

на клиенте открытие потока: 2012-06-26 12:17:47.899;p2repl-cli;;Scheme setting started;stream 0xA4B3420 2012-06-26 12:17:47.915;p2repl-cli;;Stream opened;stream 0xA4B5198;channel 0x5484CA35E4 2012-06-26 12:17:47.915;p2repl-cli;;Desired schema is not equal to prev schema (lifenum ignored);stream 0xA4B5198 2012-06-26 12:17:47.915;P2ReplStorage;;Revs were cleared after lifenum change; stream 0xA4B5198; cnt 1

разница 3.8 сек

==============

после 10 минут работы запись с одинаковым ревиженом по этому потоку:

12:26:36.628;P2ReplStorage;;Changed revs at commit; stream 0x1B67990; cnt 1 12:26:36.628;P2ReplStorage;; tbl_idx 0; rev range 3328270 - 3328297 12:26:36.628;p2isam;;Transaction commited 12:26:36.628;P2ReplServer;;COMPRESS 2751->1303

2012-06-26 12:28:38.790;P2ReplStorage;;Changed revs at commit; stream 0xA4B5198; cnt 1 2012-06-26 12:28:38.790;P2ReplStorage;; tbl_idx 0; rev range 3328270 - 3328297

2 мин 2 сек разницы "

Таким образом, первопричина либо в медленной работе "СтокШарпа", либо в узком канале.

Канал 100 Мбит Full-Duplex , следовательно, проблема в СтокШарпе.

И номера сделок почему то нулевые.

Alexander
Alexander Autor

По первому - сегодня выложу на codeplex свежую версию, попробуйте её. По второму - какие именно номера сделок?

Alexander
Alexander Autor

Да, пришло письмо с данными изменениями. Верну не как было, а сделаю как должно быть правильно.

NewMan
NewMan

Скажите, а сейчас работает ММВБ по Plaza2? Без тормозов ли приходят стаканы? можно использовать их, или нужен отдельный шлюз к ммвб?

qpile
qpile

Здравствуйте, уважаемые форумяне. А какие потоки надо включить, что бы котировки пришли по валюте?