Pular para o conteúdo
Todos os documentos da biblioteca

Medições do feed CME para projetar receptores HFT de baixa latência

Artigo arXiv papers · Autor: Vincent Maciejewski

Resumo

Este estudo examina como chegam os pacotes de dados de mercado da CME e as transações do mecanismo de correspondência, e usa essas medições para orientar o projeto de receptores de trading de alta frequência. As evidências vêm de mais de um ano de observações do contrato Nasdaq-100 E-mini do mês de vencimento mais próximo, incluindo registros de horário da bolsa para pacotes e transações, com uma verificação em um receptor em produção.

Os autores concluem que os agrupamentos de transações são moldados pelo mecanismo de correspondência, enquanto o publicador espaça os pacotes enviados em intervalos de aproximadamente 7.5 microssegundos. Se um receptor processa pacotes dentro desse intervalo, as chegadas não formam uma fila e uma única thread é favorecida. Acima desse tempo de serviço, o momento dos agrupamentos pode produzir uma longa cauda de filas; dividir a cadeia de processamento entre duas threads pode reduzi-la se isso encurtar a etapa mais lenta, embora acrescente latência ao processamento típico. Perto do intervalo do publicador, o estudo atribui a latência residual da cauda a pacotes com várias mensagens e a tempos de serviço variáveis. Essas conclusões dizem respeito ao feed e às condições do receptor medidos; não demonstram que o mesmo projeto de threads seja ideal para todos os sistemas.

Ideias principais

  • No cenário observado, os agrupamentos de chegadas são moldados por transações do mecanismo de correspondência, e não pelo empacotamento de mensagens.
  • No cenário medido, um receptor que processa pacotes dentro do intervalo do publicador evita filas causadas pelas chegadas.
  • Um projeto com duas etapas e threads pode reduzir as caudas de filas quando encurta a etapa que limita o desempenho.
  • Perto do intervalo do publicador, o custo por mensagem e a variabilidade do tempo de serviço importam mais do que o número de threads.

Tags

Texto completo
# Packets, Transactions and Queues: Design Principles for HFT Systems from a Measurement Study of CME Market Data


# Packets, Transactions and Queues: Design Principles for HFT Systems from a Measurement Study of CME Market Data









HFT systems are conventionally built as a single-threaded event loop, on the rule that every thread hop adds latency. We test that rule against a measurement study of more than a year of CME market data for the NQ front-month contract, following every packet and matching-engine transaction through the feed's two exchange timestamps, and checking the results against a live production receiver. Packets arrive in near-critical self-exciting clusters that belong to the matching engine's transactions, not to how the exchange packs them. The engine often processes consecutive transactions within a fraction of a microsecond, while the market-data publisher sends at most one packet per publisher period of about 7.5 microseconds, so a burst reaches the receiver as a train of packets one period apart. This yields design principles for HFT systems. First, a receiver that handles each packet within one publisher period never queues on arrivals, however bursty the market; there one thread is best. Second, above that period a queueing tail appears, driven by the timing of transactions, not by packet rate or size, and two threads can be better than one: splitting the servicing chain into two stages on separate threads removes most of the tail at the cost of one hop on the median. Third, only the slowest stage matters, so a split pays only if it shortens it. Fourth, just under the period, where the production receiver runs, the remaining tail comes from multi-message packets and variable service times, and the levers are cost per message and spread of service, not thread count. An analytic framework, a burst-limit throughput identity and an exact reduction of the tandem to a single bottleneck server, supports these results.

Exibido na íntegra, com atribuição conforme a licença da fonte. Licença: abstract CC0

Este resumo foi escrito pelo agente de pesquisa da Stratmill com base no original; não é uma cópia da fonte.