MICEX Bridge
Atom
12.09.2011


Шлюз Plaza2 успешно реализован, пора двигаться дальше.

Следующий шаг - реализовать шлюз к бирже ММВБ.
Тогда будет возможён любой арбитраж и другие стратегии на главной нашей бирже.

Посему начинается набор заинтересованных лиц - тех, кто готов приложить свою руку и голову к реализации этого шлюза.
Те, кто будут участвовать - гарантированно будут иметь доступ к исходникам шлюза и получат готовую версию.
Кто не будет - вполне возможно не получат.


О MICEX Bridge читать тут.
Документация здесь.

Теги:


Спасибо:


< 1 2 
Mikhail Sukhov

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


guest Перейти
Так у цериха все уже есть.
Это dll ка написанная на дельфях (ммвб-шная), к ней пишется несложный wrapper на C# вот и весь шлюз.
Насколько мне известно в самом церихе даже есть C# wrapper


Пообщался с Церихом. Решение добротное, с плечами. Но эта dll посылает сигналы только в Церих. С другими брокерами работать не будет.
Спасибо:

VovaM

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


Mikhail Sukhov Перейти
guest Перейти
Так у цериха все уже есть.
Это dll ка написанная на дельфях (ммвб-шная), к ней пишется несложный wrapper на C# вот и весь шлюз.
Насколько мне известно в самом церихе даже есть C# wrapper


Пообщался с Церихом. Решение добротное, с плечами. Но эта dll посылает сигналы только в Церих. С другими брокерами работать не будет.

Насколько мне известно:

Эта DLL как и соответственно клиент-серверный протокол совершенно НЕ Цериховский(-ская).
Это исключительно продукт ММВБ.

Церих просто предлагает чуть усложненное решение. Он м\у вами и ММВБшным шлюзом вставляет свою прослойку, и вы получаете возможность шортить.
Но саму ДЛЛку можно, если захочется, просто перенаправить на нативный ММВБшный шлюз (без прослойки) - и без плечей все будет работать.

Поэтому, по идее, если другой брокер дает шлюз ммвб, то эта длл-ка будет прекрасно к нему коннектится (без плечей и шортов).
Спасибо:

VovaM

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


ПРОГРАММНЫЙ ИНТЕРФЕЙС ПОДКЛЮЧЕНИЯ ВНЕШНИХ СИСТЕМ К ТОРГОВО-ДЕПОЗИТАРНЫМ КОМПЛЕКСАМ ММВБ
(Библиотека MTESRL.DLL, v. 3.8)
MTESrl API Guide.doc 278 KB (364)
Спасибо:

VovaM

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


Принцип разработки приложений для шлюза

Для подключения внешнего программно-технического средства (ВПТС) к программно-техническому комплексу ЗАО ММВБ используется ”Универсальный двунаправленный программный шлюз для подключения внешних систем к Торговой системе ММВБ” (MICEX Bridge).

Шлюз MICEX Bridge обеспечивает двунаправленную связь с торговой системой и содержит программный интерфейс (API), который предназначен как для получения информации из торговой системы (сделки, котировки, инструменты и т.п.), так и для выполнения активных транзакций (постановка/снятие заявок и т.п.).

Программа реализована в виде двух программных компонентов, которые исполняются на двух физически различных компьютерах, работающих под управлением операционной системы Microsoft Windows NT/2000/XP. Один из компонентов (MICEX Bridge Server) подключается к ТС ММВБ по проприетарному протоколу и выполнен в виде самостоятельного приложения. Второй компонент (MICEX Bridge Client) выполнен в виде Windows DLL (mtesrl.dll) и предоставляет приложению-приёмнику внешней системы прикладной программный интерфейс (API). Между собой компоненты обмениваются информацией с использованием последовательного интерфейса (RS-232) или по протоколу TCP/IP. Вариант подключения через последовательный порт является низкопроизводительным и устаревшим – в ближайшем будущем возможно прекращение поставок данной версии шлюза.

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

Таким образом, разработка внешнего приложения заключается в использовании предоставляемых библиотекой mtesrl.dll функций для получения данных из Торговой системы ММВБ и выполнения активных транзакций. Получение данных осуществляется по технологии client pull, т.е. клиентское приложение должно всегда само опрашивать таблицы Торговой системы для получения актуальной рыночной информации.

Разработка внешней системы обычно выполняется по следующему сценарию:

Ознакомление с требованиями ММВБ к ВПТС.
Установка шлюза MICEX Bridge и его подключение к тестовой/разработческой Торговой системе ММВБ.
Разработка собственного приложения, использующего API mtesrl.dll.
Тестирование и отладка.
Приобретение коммерческой версии MICEX Bridge, оформление всех необходимых для подключения документов и переключение на ”боевую” Торговую систему.

В общих чертах логика работы программы с Торговой системой следующая:

Устанавливается соединение с авторизацией участника торгов.
Из ТС запрашивается структура информационных объектов.
Из ТС запрашиваются необходимые для работы таблицы с данными. Ответ приходит в виде буфера данных.
Основываясь на полученной ранее структуре информационных объектов осуществляется распаковка буфера для разделения табличных данных на строки, а затем – на поля.
В случае, если таблицы являются обновляемыми (о чём сигнализирует соответствующий флаг в структуре объектов), задаётся интервал и последовательность запроса из ТС обновлённых данных. Следует учитывать, что обновляемые таблицы также бывают двух типов – для одних приходят только обновившиеся со времени последнего запроса строки, а по другим (например, для котировок) каждый раз приходит полная таблица.
При выполнении внешней системой транзакций, состав полей транзакции также формируется на основе структуры информационных объектов.
Необходимо предусмотреть наличие механизма восстановления состояния открытых таблиц после сбоев или потери связи.

Спасибо:

VovaM

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


Текущая версия шлюза MICEX Bridge (TEAP): 4.0.1
http://www.micex.ru/serv...nicalaccess/bridge/1645



Библиотеки отсюда.
Есть исходники Delphi, есть VC++
http://www.e-stock.ru/solutions/fondgate/7/
Спасибо:

VovaM

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


Кстати если ввести mtesrl.dll в яндекс, можно найти как кучу народу на разных форумах (посвященных C# и DllImport например) обсуждают разнообразные мелкие и крупные сложности связанные с подключением.
даже сюда добрались:
http://stackoverflow.com...while-calling-dll-method
Спасибо:

Mikhail Sukhov

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


VovaM Перейти
Кстати если ввести mtesrl.dll в яндекс, можно найти как кучу народу на разных форумах (посвященных C# и DllImport например) обсуждают разнообразные мелкие и крупные сложности связанные с подключением.
даже сюда добрались:
http://stackoverflow.com...while-calling-dll-method


Немного уточнение. Церих сказал, что он взял библиотеку от ММВБ, переработал ее (наверное, скомпилировал)... Я вот не совсем понял, он тот же контракт (внешний интерфейс) оставил, или же у Цериха как-то отличаются названия и сигнатуры функций? Если различий нет, то лучше, конечно, библиотека. Так клиенты Цериха могут свою подсунуть и торговать с плеча.
Спасибо:

Mikhail Sukhov

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


Mikhail Sukhov Перейти
Немного уточнение. Церих сказал, что он взял библиотеку от ММВБ, переработал ее (наверное, скомпилировал)... Я вот не совсем понял, он тот же контракт (внешний интерфейс) оставил, или же у Цериха как-то отличаются названия и сигнатуры функций? Если различий нет, то лучше, конечно, библиотека. Так клиенты Цериха могут свою подсунуть и торговать с плеча.


Из документа:

Цитата:
Идея реализации продукта состоит в замене mtesrl.dll производства ММВБ на свою библиотеку, повторяющую интерфейс один-в-один, таким образом, чтобы приложение, разработанное для работы с ТС ММВБ, было способно без изменений работать с нашей длл.


Вообщем, если это так и до сих пор, то я за mtesrl.dll. Осталось только получить 2 dll, одну от Цериха, другую от Биржи. И сравнить через dumpbin.

В аттаче примеры что прислал Церих. Теперь что скажет Саша. Подойдет ли такое решение?
CSharpExample.rar 25 KB (245) Примеры.zip 17 KB (522)
Спасибо:

Alexander

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


Да, mtersl.dll - то что нам нужно.

Я бы не сказал что там просто wrapper будет.
Надо учитывать, что те же заявки поступают текстом. В прочем, нам не привыкать, Квик поддержали, и тут поддержим. :)
Спасибо:

VovaM

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


Mikhail Sukhov Перейти

Вообщем, если это так и до сих пор, то я за mtesrl.dll. Осталось только получить 2 dll, одну от Цериха, другую от Биржи. И сравнить через dumpbin.

Биржевые вроде см. вверху (их просто estock в открытый доступ положила).

Спасибо:
< 1 2 

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

loading
clippy