Sobre o projeto

O UNICORN Binance Depth Cache Cluster (UBDCC) fornece um serviço compartilhado, confiável e sincronizado de dados do livro de ofertas da Binance via API REST, abordando desafios comuns enfrentados por desenvolvedores de bots de trading. Ele elimina problemas como penalidades por reinício, conexões WebSocket duplicadas, corrupção silenciosa de dados e limitações de linguagem, oferecendo uma fonte de dados consistente acessível a partir de Python, JavaScript, Go, Rust, Java, C# e outras linguagens. O sistema garante consistência ao validar os números de sequência de cada atualização, detectar lacunas e realizar ressincronizações automáticas, além de remover níveis de preço órfãos além dos 1000 principais da Binance. Ele apresenta redundância com failover automático, limitação inteligente de taxa para chamadas de API e um estado de cluster autorrecuperável que se recupera sem bancos de dados externos como Redis ou etcd. O UBDCC foi projetado para configurações com vários bots, arbitragem, market making, desenvolvimento rápido e stacks poliglotas. Sua arquitetura compreende um componente mgmt para o estado do cluster, restapi como gateway da API e vários processos dcn executando os DepthCaches reais. Esse design permite escalar de uma única máquina (por exemplo, 1 mgmt, 1 restapi, vários DCNs) para um cluster Kubernetes com vários servidores e pods DCN. Principais recursos incluem estado determinístico do livro de ofertas baseado no UBLDC, failover automático com redundância configurável, replicação de estado autorrecuperável, acesso agnóstico de linguagem via HTTP/JSON, limitação inteligente de taxa com suporte a credenciais de API por conta e escalabilidade com os recursos disponíveis. Ele oferece filtragem flexível de dados (top N asks/bids, limite de volume), transparência total com opções de depuração e uma stack totalmente assíncrona, compilada com Cython, para desempenho máximo e tempos de acesso rápidos. O projeto oferece suporte a várias exchanges da Binance, incluindo mercados spot, margin, futures e options, juntamente com suas testnets. A instalação é simples com pip install ubdcc, e o cluster pode ser iniciado com um único comando (ubdcc start). Um console interativo e ferramentas CLI são fornecidos para gerenciamento, juntamente com um UBDCC Dashboard baseado na web com um API Builder para exploração fácil e geração de código.