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

Подтверждённые факты

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

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

Почему это важно

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

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

Что проверить дальше

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