Подтвердить что ты не робот

Лучший способ разобрать сообщение FIX?

Как вы анализируете сообщение FIX с помощью python? (Сообщение FIX, как в финансовом протоколе FIX)

4b9b3361

Ответ 1

Вы имеете в виду, используя QuickFIX? (Я вижу QuickFIX в ваших тегах)

Если это так, я не знаю. Как правило, не сложно написать простой синтаксический анализатор для сообщения FIX. Я обнаружил, что веб-инструменты на valid fix выполняют эту работу.

Ответ 2

Помимо использования реального quickfixengine, легко разобрать сообщение об ошибке, когда вы знаете, что оно содержит определенные теги.

Он содержит 0x1 разделенных пар строк "key = value". Одно из осложнений - это группы, потому что вам нужно понять, что тег является первым в группе (заголовок группы), а затем выясняется, когда группа заканчивается (когда она попадает в другой тег, но не в группе).

Еще одно проблемное поле - это RawData, которое может содержать что угодно, включая разделитель полей 0x1, но ему предшествует RawDataLength, поэтому вам нужно сначала прочитать это, а затем прочитать RawDataLength количество байтов после тега RawData, чтобы перейти к следующему полю.

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

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

Ответ 3

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

Чтобы вместо этого разобрать, я бы рекомендовал использовать существующую библиотеку для этого.

Единственная поддерживаемая опция с открытым исходным кодом - это Java библиотека QuickFIX/J.

Существует множество коммерческих решений, например. CameronFIX

Ответ 4

попробуйте http://fix.nowing.com

это анализатор сообщений на основе веб-страниц

Ответ 5

из исходного кода quickfixj, он использует treeMap для обработки сообщения FIX.

относительно формата XML, я думаю, что FIX лучше, хотя разбор в JAVA сложнее. coz XML слишком тяжелый.

Ответ 6

Нет лучшего способа, но с учетом тега quickfix, который вы либо подключили к системе SO, посмотрите QuickFix механизм FIX с открытым исходным кодом был бы хорошим местом для запуска.

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

Удача