INVESTIGAÇÃO E PRÁTICA

Qualidade de dados WebSocket de criptomoedas: lacunas, ordem e recuperação

Crie uma lista prática de verificações para fluxos de mercado: falhas de sequência, atualizações duplicadas, instantâneos antigos e recuperação antes de retomar sinais.

Ilustração editorial que acompanha: Qualidade de dados WebSocket de criptomoedas: lacunas, ordem e recuperação
Ilustração editorial; não são dados de mercado em tempo real. Photo: Jakub Zerdzicki · Pexels

Uma ligação WebSocket ativa não equivale a uma visão fiável do mercado. As mensagens podem chegar tarde, o consumidor local pode acumular atraso e um livro pode continuar visível depois de se perder o estado necessário para o atualizar. A questão útil é saber se a representação atual pode ser reconstruída a partir de um ponto inicial válido e das atualizações necessárias. A qualidade dos dados deve responder a esta questão antes de um modelo interpretar os números.

01

Atribua uma identidade a cada observação

Conserve a plataforma, o produto, o canal, o identificador do evento ou sequência documentada, a hora do evento e a hora de receção local. As regras de sequência dependem do canal: um contador contínuo num fluxo pode não ser contínuo num subconjunto filtrado de outro. A documentação da Coinbase Exchange discute explicitamente lacunas e entregas fora de ordem, pelo que o consumidor precisa de mais do que um ícone de ligação. Mantenha visíveis nos diagnósticos as falhas de leitura e os tipos de mensagem não suportados. Converter silenciosamente campos malformados em zero pode criar um acontecimento de mercado inexistente, mais difícil de detetar do que um valor explicitamente em falta.

02

Reconstrua a partir de uma fronteira de instantâneo consistente

Um livro de ordens precisa normalmente de um instantâneo e das atualizações posteriores à sua fronteira, de acordo com o protocolo do fluxo escolhido. As regras de armazenamento temporário, ordenação e reprodução devem vir desse protocolo, não ser inventadas a partir de exemplos de outra bolsa. Trate um novo instantâneo como substituição do estado quando a documentação assim o indicar. Misturar os seus níveis com um livro local antigo pode conservar ordens que já desapareceram. Registe a fronteira da recuperação e o primeiro momento em que os indicadores derivados voltam a ser válidos; restabelecer a ligação, por si só, não demonstra continuidade.

03

Uma atualização hipotética em falta

Imagine um canal cuja sequência documentada é contínua: a um estado válido em 100 seguem-se atualizações 101 e 103. A atualização 102 pode conter o cancelamento da melhor oferta de compra. Continuar diretamente com 103 pode, portanto, exagerar o apoio comprador, mesmo que todos os preços recebidos pareçam razoáveis. Marque como indisponíveis as características dependentes do livro, inicie a ressincronização documentada e retome apenas quando o novo estado for coerente. Não insira uma atualização vazia inventada para 102. Da mesma forma, não conte duas vezes uma retransmissão de 101: o tratamento de duplicados deve preservar o estado produzido por uma única aplicação correta.

04

Meça separadamente atualidade e acumulação de atraso

A idade do evento estima há quanto tempo surgiu a informação de mercado, enquanto o atraso de processamento local revela se o consumidor está a ficar para trás. Uma mensagem de atividade pode mostrar que a ligação está viva sem provar que o livro ou fluxo de negócios de cada produto está atualizado. Compare marcas temporais só depois de verificar unidades e pressupostos dos relógios; confundir segundos com milissegundos pode anular um limite de idade aparentemente rigoroso. Quando possível, utilize um relógio monotónico para durações locais. Conserve idades por produto e tamanho da fila, em vez de uma única hora global que outro instrumento ativo possa atualizar.

05

Teste a recuperação com falhas explicáveis

Reproduza um segmento gravado depois de remover intencionalmente uma atualização, duplicar um negócio, alterar a ordem de chegada e interromper a ligação. Defina a resposta esperada para cada canal. Confirme que uma lacuna suspende o indicador em vez de produzir uma leitura forte de compra ou venda, e que a recuperação não volta a contar os mesmos negócios nas medidas acumuladas. Compare o estado reconstruído com um novo instantâneo fiável quando o protocolo o permitir. Inclua mercados calmos nos testes: a ausência de negócios pode ser legítima, mas um livro antigo não deve ser considerado saudável apenas porque a atividade é baixa.

06

Mostre a incerteza à camada de decisão

Publique um estado de qualidade compacto ao lado das métricas derivadas: atual, em recuperação, desatualizado ou indisponível, incluindo idade e motivo quando úteis. Preserve o último valor válido para diagnóstico apenas se estiver claramente identificado; não permita que entre numa classificação nova como se acabasse de ser observado. Analise a fração do tempo em que cada mercado é utilizável e se as falhas se concentram em períodos voláteis. Um scanner que apresenta menos candidatos por falta de dados comporta-se de forma diferente de outro que analisou todo o universo e não encontrou candidatos. Uma cobertura transparente torna essa diferença visível.

Fontes e âmbito dos exemplos

As fontes sustentam as definições e os mecanismos. Os cenários numéricos são exemplos educativos hipotéticos, não preços atuais, previsões nem resultados reportados pela HOSTuvo. As imagens são ilustrações editoriais.