Financial Information eXchange
Financial Information eXchange (FIX) protocol (протокол обмена финансовой информацией) — протокол передачи данных, являющийся международным стандартом для обмена данными между участниками биржевых торгов в режиме реального времени. Изначально создан в 1992 г. для передачи информации о торгах акциями между компаниями Fidelity Investments и Salomon Brothers. В настоящее время широко используется торговыми системами для обмена финансовыми данными и совершения транзакций.
Протокол FIX поддерживается большинством крупнейших банков и электронными трейдинговыми системами, а также крупнейшими биржами мира.
FIX Protocol Limited
FIX Protocol, Ltd. — компания, обладающая правами и поддерживающая спецификацию протокола. До настоящего времени (2009 г.) спецификация находится в состоянии общественного достояния.
Техническая спецификация
Протокол FIX служит для обмена данными в торговых сессиях между трейдинговыми системами. Подобно XML, он является самоописывающим; XML-представление сообщений FIX называется FIXML.
FIX — протокол сессионного уровня поверх TCP. При торговле ценными бумагами FIX более популярен, т. к. сообщения FIXML обычно намного объемнее.
Сообщения FIX состоят из набора полей «тег=значение». Поля отделяются ASCII кодом SOH — Start of Header (0x01). Тег — это номер поля. Например, тег 48 обозначает securityID, а строка значения содержит идентификатор ценной бумаги (тикер).
Сообщение состоит из 3 частей: заголовок, тело и окончание. Последнее поле в сообщении — контрольная сумма (тег 10).
Протокол FIX определяет обязательные и необязательные поля. При этом не важна последовательность полей внутри тела сообщения.
Сообщения делятся на 2 уровня: управления и приложения. Уровень управления определяет базовые параметры FIX-сессии: устанавливает соединение, закрывает его, восстанавливает пропавшие сообщения. Уровень приложения связан с отправкой и получением данных: сделок, их исполнений, запрос информации о текущем состоянии и пр.