rss

Профиль компании

Финансовые компании

Блог компании Os_Engine | Коннектор OsEngine FIX/FAST для фондовой секции Мосбиржи: зачем нужен, что позволяет и чем отличается от других профконнекторов к MOEX

Всем привет!

Итак, для начала новость: в OsEngine  теперь есть возможность подключиться к торгам на Мосбирже с использованием FIX/FAST. На днях получили официальную сертификацию для коннектора MoexFixFastSpot. Код коннектора можно посмотреть на Гитхабе.

Коннектор OsEngine FIX/FAST для фондовой секции Мосбиржи: зачем нужен, что позволяет и чем отличается от других профконнекторов к MOEX

Рассмотрим, что это за протоколы такие

В условиях современной фондовой торговли скорость и надежность передачи данных играют ключевую роль для участников рынка. Протоколы FIX (Financial Information eXchange) и FAST (FIX Adapted for Streaming) являются важными инструментами для эффективного взаимодействия с Московской биржей (Мосбиржей). Эти протоколы обеспечивают стандартизированную и высокоскоростную передачу данных, что критически важно для алгоритмической торговли и других высокочастотных операций. Рассмотрим, зачем нужны эти протоколы в торговле, что они позволяют и чем отличаются от других профессиональных коннекторов Мосбиржи.

Зачем нужны FIX/FAST протоколы на Мосбирже?

FIX и FAST протоколы широко используются в фондовой секции Мосбиржи по следующим причинам:

Высокая скорость передачи данных: FIX и FAST протоколы оптимизированы для минимизации задержек, что важно для алгоритмической и особенно высокочастотной торговли (HFT).

Стандартизация и совместимость: FIX протокол является международным стандартом для обмена финансовыми данными, что упрощает интеграцию с различными торговыми системами и платформами по всему миру.

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

Что позволяют FIX/FAST протоколы?

FIX и FAST протоколы предоставляют широкий спектр возможностей, которые важны для профессиональной торговли:

Реализация сложных торговых стратегий: Поддержка отправки и получения ордеров, получение рыночных данных и уведомлений о сделках в режиме реального времени позволяет трейдерам быстро реагировать на изменения рынка.

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

Повышение эффективности работы: FIX/FAST протоколы облегчают взаимодействие между различными участниками рынка, снижая операционные затраты и упрощая процессы.

Чем отличаются коннектор FIX/FAST от других профессиональных коннекторов к MOEX?

Московская биржа предлагает несколько различных протоколов для подключения к своим торговым системам. FIX/FAST протоколы имеют свои уникальные особенности и преимущества по сравнению с другими вариантами. Кроме FIX Мосбиржа предоставляет еще популярные варианты:

Протокол MOEX Plaza II

Описание: собственный протокол Московской биржи, обеспечивающий прямой доступ к торговым и информационным системам биржи.

Особенности: высокая скорость и производительность, но менее стандартизирован по сравнению с FIX.

Применение: используется для получения и отправки рыночных данных, выполнения ордеров и управления торговыми счетами.

 TWIME (Trading and Workflow Interface for Moscow Exchange)

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

Особенности: ориентирован на специфические требования Московской биржи и не является международным стандартом.

Применение: широко используется для взаимодействия с торговыми системами и управления торговыми операциями.

Сервис SIMBA

Скорость и производительность: SIMBA разработан для обеспечения высокой скорости и производительности в системе Московской биржи. Он оптимизирован для обработки большого объема транзакций и минимизации задержек. Позволяет получить рыночные данные с меньшей задержкой по сравнению с FAST.

Ориентация на внутренние стандарты: SIMBA является внутренним протоколом Мосбиржи и строго соответствует ее архитектуре и требованиям. Это делает его высокоэффективным в рамках биржевой инфраструктуры, но требует глубокого понимания специфики работы Мосбиржи для правильного использования.

Шлюз ASTS Bridge

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

Специфичность: в отличие от международных стандартов, таких как FIX, ASTS Bridge, является внутренним протоколом, разработанным специально для работы с архитектурой Мосбиржи. Он предназначен для обеспечения надежной и эффективной коммуникации внутри биржевой экосистемы и не используется за ее пределами.

FIX (Financial Information eXchange) и FAST (FIX Adapted for Streaming) и его основные преимущества

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

Гибкость и адаптивность: протоколы FIX/FAST легко адаптируются под различные торговые системы и стратегии, предоставляя универсальные инструменты для участников рынка.

Совместимость: FIX/FAST протоколы поддерживаются множеством торговых платформ и систем управления ордерами (OMS), что облегчает их внедрение и использование.

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

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

OSEngine и его роль в создании единого интерфейса

Необходимо отметить, что в контексте OsEngine, различия между протоколами сводятся к минимуму, так как система предоставляет слои абстракции над низкоуровневыми API торговых площадок.

Поэтому в идеальном мире можно использовать любой коннектор для прямого доступа к бирже (Plaza 2/Twime/FIXFAST). В реальности выбор будет определяться, исходя из требований по скорости, стоимости подключения и удобства использования на конкретной инфраструктуре.

Также стоит упомянуть, что на рынке доступны различные решения для подключения к Мосбирже по протоколам FIX/FAST. Среди этих решений наш коннектор выгодно выделяется прежде всего стоимостью (ноль рублей) и открытостью исходного кода. Мы программируем капитализм в России с любовью.
Коннектор OsEngine FIX/FAST для фондовой секции Мосбиржи: зачем нужен, что позволяет и чем отличается от других профконнекторов к MOEX
Рис.: Азы программирования капитализма и коммунизма

Спасибо за внимание! В следующих статьях подробно расскажу, где брать информацию, как подключиться к тестовому серверу, как настроить для торгов и вообще, как это сделано с точки зрения разработчика.

Коннектор OsEngine FIX/FAST для фондовой секции Мосбиржи: зачем нужен, что позволяет и чем отличается от других профконнекторов к MOEX

OsEngine: github.com/AlexWan/OsEngine
Поддержка OsEngine: t.me/osengine_official_support

Регистрируйся в АЛОР и получай бонусы: www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: www.alorbroker.ru
Раздел «Для клиентов»: 
www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: smart-lab.ru/company/os_engine/blog/972745.php

Коннектор OsEngine FIX/FAST для фондовой секции Мосбиржи: зачем нужен, что позволяет и чем отличается от других профконнекторов к MOEX

★3
16 комментариев
Можно кстати уже чуть ускорить местами добавив несколько флагов для TCP коннектов.
Timeoutы почти нигде не используются — может в случае проблем с сетью подвиснуть и долго висеть, потому что по умолчании большое время ожидания.
p.s.
Другой вопрос, а зачем это нужно, у вас есть робот которому позарез нужно именно такое подключение и на других он не работает.
avatar
Beach Bunny, я там кстати контролирую время последних поступивших данных, так что если начнет долго висеть, то коннектор все перезапустит. На тестах такого ни разу не происходило, ведь у них если даже «реальных» данных нет, то идут контрольные сообщения типа Heartbeat, чтобы обозначить, что соединение живо.
avatar
Fininja, ну вы же боретесь за каждую ms (не знаю правда зачем), а в случае такой борьбы/необхидимости будут потери в скорости.
В общем по нормальному так не делают, если нужна скорость и надежность.
avatar
Beach Bunny, сейчас главная борьба была за стабильность. За время будет дальше если потребуется.
avatar
Ну и методы ToString() не оптимизированы для performance.
Пример
    public override string ToString()
    {
        return $"8={BeginString}\u00019={BodyLength}\u0001" + GetHalfMessage();
    }
Это хорошо выглядит, НО не быстро работает.
Должно быть, типа так, это будет быстрее.
Это в общем то должно быть понятно почему, так как это элементарно.

public override string ToString()
    {
        StringBuilder sb = new StringBuilder();
        sb.Append("8=").Append(BeginString).Append('\u0001');
        sb.Append("9=").Append(BodyLength).Append('\u0001');
        sb.Append(GetHalfMessage());
        return sb.ToString();
    }



avatar
Beach Bunny, да, ясно, что там при интерполяции лишние строки создаются. Признаться даже не верится, что о таких вещах стоит заморачиваться, но с другой стороны вы правы — ведь например виртуальная машина может быть слабенькой.

В общем большое спасибо за совет, обязательно добавлю в список на оптимизацию.
avatar
Fininja, 
— ну вариант на С++ подобный первоначальному тоже не будет работать быстро
Хотя в принципе и пофигу, больше комментировать не буду, тем более что я в «чорных» списках врагов Оби-Вана.
avatar
Beach Bunny, в любом случае большое спасибо за обратную связь! Я все записал и будем улучшать, тем более, что теперь у сообщества есть доступ. Если моего понимания не хватит, то кто-то покруче рано или поздно сделает.
avatar

мне в первом топике не дали высказаться, так как есть ограничение на комменты

хотел сказать, что коннектор все таки FIX, фаста там все таки нет. Простой транзакционный протокольчик FIX для мос биржи. С мосбиржевским FAST работать он не особо будет вроде

avatar
Андрей К, тут просто получилось подключение к MFIX Transactional — для управления ордерами. А к FIX/FAST Multicast — для получения маркетдаты. Так что получается и то и то есть.
Насчет комментариев — вроде доступны всем без ограничений. И еще раз спасибо за статьи по FIX — помогли разобраться.
avatar
Вы же сейчас в Казахстане находитесь. Команда ваша?
avatar
Alex, Основная часть — станица Васюринская, Краснодарского края. Кто-то в Москве, еще где-то по стране. В разных станах вроде никого.
avatar
Fininja, Сейчас через эти коннекторы можно торговать, а не только получать рыночные данные? Брокер для этого нужен какой-то специальный, или через любого брокера можно торговать? Какой у вас пинг сейчас до Мосбиржи с этим коннектором (Васюринская/Москва)?
avatar
Фёдор Г., торговать лучше через брока, у которога не плохо развит отдел DMA (direct market access). Вопросы придется разные решать, если у брока не будет компетентных сотрудников, вопросы могут подвиснуть на разные сроки. Обычно такие броки заявляют у себя на сайте такие услуги.

И за это придется отдельно доплачивать

Пинг можете прикинуть, если оформите тестовый доступ к протоколам FIX на сайте мосбиржи. Примерный +-, если интересуют миллисеки, не микросеки
avatar
Андрей К, мне ещё всегда было интересно узнать про комиссии ММ брокеру в такой связке Брок+ физ/л. Для таких участников создаются отдельные фикс тарифы? Например, на акциях у Финама 0.03% только за «урегулирование» сделки (не важно тейкер или мейкер). С такое комиссией не возможно торговать ММ  алгоритмы.
avatar
Фёдор Г., Да, это можно сказать «обычный» коннектор к OsEngine — управление ордерами и получение рыночных данных, все есть. Через любого не получится, только через тех, кто предоставляет прямой доступ — Алор, Финам и тд. Пинг будет можно сказать у всех одинаковый, так как сервера брокера стоят в одном датацентре с серверами Мосбиржи. В теории можно подключаться и через интернет, но на практике единственный «недорогой» способ — это аренда виртуальной машины на сервере брокера.
avatar

теги блога Fininja

....все тэги



UPDONW
Новый дизайн