Ao fim de uma semana ruim, um líder de operações analisa um dashboard: os gastos com feeds aumentaram, uma estratégia aponta preços desatualizados e o registro de incidentes mostra dois eventos de recuperação. O número em destaque é o de pacotes por segundo. Ele não mostra quais atualizações foram importantes, quanto custaram ou onde houve perda de tempo.
Uma análise útil mede o custo de uma atualização que permite tomar decisões de qualidade, não apenas o custo de uma fatura do fornecedor. Ao longo de 30 dias, a equipe pode estabelecer essa medida, encontrar gargalos e tomar uma decisão controlada sobre profundidade, modo de entrega ou provedor.
Defina o custo de um tick
"Tick" pode significar uma mensagem da bolsa, uma alteração no preço exibido ou uma atualização consumida por uma estratégia. Esses conceitos não são equivalentes. Uma mensagem pode atualizar vários níveis do livro de ofertas. Uma estratégia pode rejeitar uma atualização por estar desatualizada, ignorá-la porque o instrumento está inativo ou usá-la para alterar uma ordem.
Comece calculando o custo mensal total de cada bolsa e caminho do feed. Inclua tarifas de exibição e de uso não relacionado à exibição da bolsa, cobranças por usuário profissional, direitos de redistribuição, custos do provedor e de conectividade, além da infraestrutura alocada para captura, recuperação e normalização.
O modelo exato de tarifas depende da bolsa, das permissões e do contrato. Não presuma que uma assinatura de feed inclui autorização para redistribuir dados a clientes ou usá-los em todos os sistemas internos.
Em seguida, informe duas medidas separadamente: custo por atualização aceita e custo por atualização usada pela estratégia. A primeira ajuda a comparar caminhos de feed. A segunda mostra se os dados são relevantes para uma carga de trabalho específica. Especifique no relatório o denominador e o período. Uma média mensal pode ocultar um mercado com picos de atividade ou um conjunto de instrumentos com baixo volume.
Um feed barato que chega depois da janela de decisão não é barato para aquela estratégia.
Para ter um panorama mais amplo da plataforma, a cobertura de infraestrutura da Trading Technology aborda as questões operacionais por trás das escolhas de provedores e plataformas.
Estabeleça uma referência de latência e capacidade
Antes de mudar qualquer coisa, capture os mesmos eventos na interface de rede, no feed handler, no normalizador e na entrada da estratégia. Registre os timestamps da bolsa, quando disponíveis, os timestamps locais de recebimento, os números de sequência e o instrumento.
Use relógios sincronizados, mas mantenha o horário da bolsa e o tempo de processamento local em campos separados. A diferença entre timestamps não corresponde automaticamente à latência de rede.
Os intervalos abaixo são referências típicas para planejamento, não garantias de serviço. Eles variam conforme a bolsa, a combinação de mensagens, o hardware, a localização e o ponto de medição. A largura de banda é por bolsa em períodos de pico. O atraso adicional vai da borda do provedor ou do recebimento do pacote até o handler consumidor; portanto, compare medidas equivalentes.
| Caminho do feed | Largura de banda de pico típica | Atraso adicional típico | Principal contrapartida |
|---|---|---|---|
| Multicast bruto direto | 0.1-2 Gb/s | 0.2-2 ms até o evento normalizado | Baixo atraso, maior carga de recuperação e de gerenciamento do protocolo |
| Feed de profundidade completa do provedor | 10-500 Mb/s | 1-10 ms até o handler consumidor | Menos integração específica da bolsa, dependência do provedor |
| Top of book com consolidação de dados | 1-50 Mb/s | 10-100 ms ou intervalo configurado | Menor largura de banda, atualizações intermediárias omitidas |
Use os números como referência para dimensionamento, não como especificação de aquisição. Um feed pode ser rápido em um dia tranquilo e ainda assim falhar durante um leilão de abertura ou um pico de volatilidade.
Acompanhe o atraso p50, p99 e máximo, além de lacunas de sequência, duração da recuperação, pacotes descartados e profundidade da fila. Mantenha métricas separadas para cada bolsa e feed handler. Para mais conteúdo de engenharia, consulte a Trading Technology.
Execute a implementação de 30 dias
Concentre-se no primeiro mês. Não altere o feed, o hardware e as configurações da estratégia ao mesmo tempo, ou a comparação não mostrará o que mudou o resultado.
- Dias 1-5, inventário. Liste bolsas, produtos, caminhos dos feeds, permissões, consumidores, endpoints e cobranças mensais. Identifique assinaturas duplicadas e feeds que não atendem a nenhuma carga de trabalho ativa. Confirme se cada uso é de exibição, não relacionado à exibição ou de redistribuição.
- Dias 6-12, instrumentação. Adicione métricas de lacunas de sequência, perda de pacotes e recuperação. Registre o timestamp do recebimento do pacote, da conclusão da decodificação, da normalização e da entrega à estratégia. Colete amostras de mensagens se a captura completa for muito cara, mas mantenha contadores e logs completos de eventos com lacunas.
- Dias 13-20, medição sob carga. Colete dados de uma sessão normal e de pelo menos um período de pico. Compare as taxas de mensagens e as distribuições de latência com a CPU, os descartes da NIC, a profundidade da fila e a coleta de lixo ou a pressão de memória. Reproduza picos capturados em um ambiente de teste para verificar se o handler consegue se recuperar depois de um pico.
- Dias 21-26, teste de uma alternativa. Compare um provedor, uma assinatura com profundidade reduzida ou a consolidação de dados com o caminho atual. Use os mesmos instrumentos, período e consumidor. Verifique a perda de atualizações e as decisões da estratégia, além da largura de banda e da latência p99.
- Dias 27-30, decida e documente. Calcule o custo mensal por atualização aceita e por atualização usada pela estratégia. Registre o risco operacional, o impacto sobre as permissões, o método de reversão e o responsável. Mantenha o feed atual até que a alternativa seja aprovada nos testes de recuperação e failover.
Use as métricas na operação
Um dashboard só é útil se indicar uma ação. Defina limites com base nas referências observadas e nas necessidades da estratégia, e então gere alertas para degradação persistente, não para uma única amostra ruidosa. Verificações típicas incluem:
- Lacunas de sequência por canal, com horários de início e conclusão da recuperação.
- Pacotes descartados na NIC e profundidade da fila da aplicação, para separar perda de rede de sobrecarga do handler.
- Latência entre a bolsa e o recebimento e entre o recebimento e a estratégia, com valores p99 e máximos.
- Mensagens recebidas em comparação com atualizações aceitas e consumidas, por bolsa e grupo de instrumentos.
- Alterações de permissões ou conexões que possam afetar direitos de exibição, uso não relacionado à exibição ou redistribuição.
Reconcilie os contadores. Se o handler informar mais atualizações aceitas do que mensagens recebidas, as definições estão erradas ou a instrumentação está contando em duplicidade. Se o feed estiver tranquilo enquanto a contagem de pacotes permanecer alta, verifique retransmissões, caminhos duplicados e instrumentos irrelevantes. Atribua um responsável a cada alerta e documente a ação de recuperação, inclusive quando fazer failover para uma linha secundária.
Escolha o feed conforme a carga de trabalho
Mais profundidade não é automaticamente melhor. Uma estratégia de horizonte curto pode precisar de alterações completas do livro de ofertas e baixa latência de cauda. Uma tela de risco ou um fluxo de execução mais lento pode funcionar com dados de top of book ou consolidação controlada. A decisão depende de as atualizações omitidas alterarem uma ordem, um limite de risco ou um preço apresentado ao cliente, não de uma preferência pelo maior feed.
Considere também o custo operacional. O multicast direto pode reduzir o atraso na entrega, mas a empresa assume mais trabalho de decodificação, sequenciamento, recuperação e monitoramento. Um feed gerenciado pode simplificar a integração, mas aumenta a dependência do provedor, altera o ponto de medição da latência e pode impor limites à recuperação personalizada. Compare a cobertura de suporte e o comportamento em caso de falha, além das tarifas recorrentes.
Mantenha a referência resultante junto ao inventário de feeds e revise-a após mudanças nas bolsas, lançamentos de estratégias e renovações de contratos. Para uma estratégia sensível a alterações de preço de curta duração, use 5 ms como referência de planejamento, não como meta universal. Compare sua própria latência p99 do feed até a estratégia com 5 ms.
Perguntas frequentes
Como calcular o custo de um tick de dados de mercado?
Some os custos relevantes da bolsa, do provedor, da conectividade e da infraestrutura alocada para o mesmo período. Divida o total por uma contagem claramente definida, como atualizações aceitas ou consumidas por uma estratégia, e mantenha as duas medidas separadas.
Qual deve ser a latência de um feed de dados de mercado?
Não há uma meta universal, pois o tipo de feed, a bolsa, a localização e os requisitos da estratégia variam. Meça a latência p50 e p99 em pontos definidos do fluxo e estabeleça limites com base na janela de decisão da carga de trabalho.
O que um dashboard de monitoramento de feeds de dados de mercado deve mostrar?
Acompanhe lacunas de sequência, pacotes descartados, tempo de recuperação, profundidade da fila, taxas de mensagens e latência desde o recebimento até a entrega à estratégia. Separe as métricas por bolsa e caminho do feed para que um alerta identifique onde o atraso ou a perda começa.
Plataformas · Software · Provedores · Mercados