Изображение блога
Fininja
Fininja Блог компании Os_Engine
07 июля 2024, 15:55

Коннектор 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

16 Комментариев
  • Beach Bunny
    07 июля 2024, 17:43
    Можно кстати уже чуть ускорить местами добавив несколько флагов для TCP коннектов.
    Timeoutы почти нигде не используются — может в случае проблем с сетью подвиснуть и долго висеть, потому что по умолчании большое время ожидания.
    p.s.
    Другой вопрос, а зачем это нужно, у вас есть робот которому позарез нужно именно такое подключение и на других он не работает.
      • Beach Bunny
        07 июля 2024, 18:25
        Fininja, ну вы же боретесь за каждую ms (не знаю правда зачем), а в случае такой борьбы/необхидимости будут потери в скорости.
        В общем по нормальному так не делают, если нужна скорость и надежность.
  • Beach Bunny
    07 июля 2024, 18:22
    Ну и методы 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();
        }
    
    


      • Beach Bunny
        07 июля 2024, 23:31
        Fininja, 
        — ну вариант на С++ подобный первоначальному тоже не будет работать быстро
        Хотя в принципе и пофигу, больше комментировать не буду, тем более что я в «чорных» списках врагов Оби-Вана.
  • Андрей К
    08 июля 2024, 08:59

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

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

  • Alex
    08 июля 2024, 13:36
    Вы же сейчас в Казахстане находитесь. Команда ваша?
      • Фёдор Г.
        09 июля 2024, 13:48
        Fininja, Сейчас через эти коннекторы можно торговать, а не только получать рыночные данные? Брокер для этого нужен какой-то специальный, или через любого брокера можно торговать? Какой у вас пинг сейчас до Мосбиржи с этим коннектором (Васюринская/Москва)?
        • Андрей К
          10 июля 2024, 08:51
          Фёдор Г., торговать лучше через брока, у которога не плохо развит отдел DMA (direct market access). Вопросы придется разные решать, если у брока не будет компетентных сотрудников, вопросы могут подвиснуть на разные сроки. Обычно такие броки заявляют у себя на сайте такие услуги.

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

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

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн