Разработка движка FIX

Я новичок в FIX, и мне нужно разработать небольшой движок FIX для связи с торговой системой. Насколько я знаю, существует множество доступных движков FIX, но здесь необходимо разработать их. Может ли кто-нибудь дать мне ссылку на любой открытый исходный код или любую хорошую статью, чтобы начать?


person CrazyC    schedule 27.12.2010    source источник


Ответы (3)


Для C++ используйте quickfix

Java использует QuickfixJ

Для .NET используйте VersaFix.

Чтобы обратиться к исправить конструкции сообщений.

Обе библиотеки (Quickfix) имеют одинаковую номенклатуру, указанную в стандартах протокола FIX. Но они немного ошибочны здесь и там, но вы можете исправить их в своем исходном коде. Я использовал обе библиотеки в коммерческом проекте и говорю это после того, как увидел, что библиотеки работают. Но код довольно прост, и у них есть онлайн-справочник для работы.

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

person DumbCoder    schedule 27.12.2010
comment
спасибо ДумбКодер. Еще один вопрос, какой архитектор будет использоваться на сервере для обработки многих клиентов? - person CrazyC; 28.12.2010
comment
@ Saurabh01 - Quickfix использует один поток за сеанс, вы можете попробовать это. - person DumbCoder; 28.12.2010
comment
Не очень большая задача, в зависимости от уровня требований может занять от двух недель до полугода. - person ; 10.11.2011

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

Еще одна проблема с протоколом FIX — это ПОВТОРЯЮЩИЕСЯ ГРУППЫ. Их непросто быстро разобрать, поскольку для этого требуется рекурсия или, в качестве альтернативы, сложная итеративная реализация.

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

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

Отказ от ответственности: я являюсь одним из разработчиков CoralFIX.

person rdalmeida    schedule 10.07.2014

Вы, безусловно, хотите взглянуть на QuickFix.

person Codo    schedule 27.12.2010