При реализации протокола FAST (из FIX), когда я должен сбросить анализатор шаблонов?

Я реализую свой собственный обработчик / анализатор FAST, и некоторые шаблоны опираются на предыдущее значение поля, например, операция копирования, которая говорит: если нет, используйте последнее / предыдущее полученное значение.

Каждое поле имеет метод сброса, который очищает предыдущее значение поля.

По этой ссылке: http://jettekfix.com/node/44

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

Я должен что-то здесь упустить. Когда я должен сбросить анализатор шаблонов?

2 ответа

Решение

Это не противоречие, если принять во внимание последовательности FAST (т.е. повторяющиеся группы FIX). Большинство бирж сбрасывает шаблоны для каждого отправленного сообщения, поэтому участник может присоединиться в любой момент. Но внутри одного и того же сообщения FAST поля будут повторяться внутри последовательности FAST, и именно тогда в игру вступают такие операции, как копирование.

Ссылка http://jettekfix.com/node/44 не говорит, что вы должны сбросить словарь перед обработкой каждого сообщения FAST, но говорит, что вы должны сбросить его перед обработкой каждого TCP/UDP-пакета или после установления соединения. Например, некоторые протоколы обмена имеют один пакет UDP с несколькими связанными сообщениями FAST, вам не следует сбрасывать словарь между ними.

Другие вопросы по тегам