Fix Api: Протокол Обмена Финансовой Информацией
November 1, 2023

Кофе, монитор, постер со Страуструпом, удобное кресло и начало создания своего FAST коннектор — что может быть более лучшим началом рабочего дня? Реализация такого протокола, конечно же, требует языка C++ (и никаких шуток про Python здесь не будет). Если говорить о высокой производительности, то даже всплывает такое страшное слово, как FPGA. Для Московской Биржи таких решений честно не встречал, обычно писали на халвинг C++, но для этого и существуют комментарии, чтобы внести дополнительную информацию. Протокол FAST настолько редкий, что простых материалов практически не существует, кроме спецификаций.

Тело И Завершающий Элемент Сообщения

Не смотря на свой возраст, на сегодняшний день это один из самых быстрых протоколов. Надеюсь статья кому-нибудь сэкономит время и поможет обойти подводные камни, на которые наткнулся я сам. Ниже список источников, на которых Вы сможете более подробно ознакомиться с протоколом. Аналогично можно реализовать методы отправки любого другого сообщения (на создание заявки, на получение детальной информации об инструменте и т.д).

  • Протокол FAST был разработан организацией FIX Protocol Limited (FPL) в начале 2000-х годов как улучшенная версия протокола FIX (Financial Data eXchange).
  • Для тех, кому интересны технические подробности и написание собственного клиента, – продолжение.
  • Просто заполните приведённую ниже форму, и мы свяжемся с вами в ближайшее время и предоставим всю необходимую информацию для начала работы.
  • Метод fromApp срабатывает при получении сообщений с сервера, то есть в нем происходит основная логика.
  • Financial Info eXchange (FIX) protocol (протокол обмена финансовой информацией) — протокол передачи данных, являющийся международным стандартом для обмена данными между участниками биржевых торгов в режиме реального времени.

Это готовое к отправке сообщение на биржу Lmax, которое сообщит ей что мы хотим залогиниться в системе, так называемое LogOn сообщение. Действительно, на первый взгляд непонятно что тут зашифровано. Как я уже выше говорил, FIX существует в двух синтаксисах, как раз из этого примера мы можем видеть первый из них. Сообщение состоит из неких частей, разделенных вертикальной чертой. Эти части называются полями(fields), каждое поле также состоит из двух частей, разделенных знаком «равно».

Что представляет собой FIX протокол

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

Tag – всегда целое положительное число, которое является по сути указателем на имя поля. Большинство полей являются стандартными и всегда будут иметь один и тот же смысл на всех биржах. В repair сообщении есть как обязательные поля, так и не обязательные, есть также условно-обязательные – это те, наличие которых зависит от наличия других полей. На схеме ниже можем наглядно увидеть разделение сообщения на поля. С помощью класса MessageUtils библиотеки QuickFix/J можно получить тип входящего сообщения и далее обработать каждый случай (здесь для примера я указала несколько типов сообщений и вывела их в лог).

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

SBE отличается от FAST более гибкой структурой и улучшенной эффективностью сжатия данных. Для кодирования FIX сообщений в бинарном виде используется FAST протокол. Процесс сборки длился у меня где-то минут 6-7, так что в это время можно заварить себе чашечку чая изучить настройки сервера и приступить к написанию клиента.

Что представляет собой FIX протокол

Постепенно в протокол добавлялся новый функционал, поддержка новых классов инструментов. Сейчас FIX 5.0 является последней версией, но, наиболее распространенной является FIX 4.four. Это набор пар «ключ – значение» и XML, именуемый также FIXML.

Теги Блога Андрей К

Сам протокол в свою очередь разделяется на 3 уровня – транспортный, сессионный и прикладной. Протокол FIX имеет несколько версий, которые выходили по мере совершенствования протокола и поддержки в нём различных классов ценных бумаг. Разные торговые системы поддерживают разные протоколы, а иногда и несколько протоколов параллельно. Monetary Data eXchange (FIX) protocol (протокол обмена финансовой информацией) — протокол передачи данных, являющийся международным стандартом для обмена данными между участниками биржевых торгов в режиме реального времени. Протокол FIX определяет обязательные и необязательные поля.

Что представляет собой FIX протокол

В этой статье реализуем получение рыночных данных и их сохранение в кэш, остальные типы сообщений и их обработку более подробно разберем в следующих статьях и дополним логику нашего клиента. В предыдущей части я использовала пример Executor из модуля examples, но в нем обрабатываются только сообщения на создание торговых заявок. В этом же модуле есть более подходящий пример — OrderMatch (quickfixj-examples-ordermatch), в нем помимо поддержки торговых заявок присутствует обработка сообщений на получение рыночных данных api протокол (MarketDataRequest). Теперь вы можете тестировать отправку различных типов сообщений, используя MiniFIX.

COMMENTS
ADD ONE