À propos du projet
Le UNICORN Binance Depth Cache Cluster (UBDCC) est un service partagé, fiable et synchronisé de données du carnet d'ordres Binance accessible via une API REST, qui répond aux défis courants auxquels sont confrontés les développeurs de bots de trading. Il élimine des problèmes comme les pénalités de redémarrage, les connexions WebSocket dupliquées, la corruption silencieuse des données et les limites linguistiques, en proposant une source de données cohérente accessible depuis Python, JavaScript, Go, Rust, Java, C# et d'autres langages.
Le système garantit une cohérence totale en validant les numéros de séquence de chaque mise à jour, en détectant les écarts et en effectuant des resynchronisations automatiques, tout en supprimant les niveaux de prix orphelins situés au-delà des 1000 premiers niveaux du carnet d'ordres Binance. Il intègre de la redondance avec basculement automatique, une limitation de débit intelligente pour les appels API, et un état de cluster auto-cicatrisant qui se rétablit sans bases de données externes comme Redis ou etcd.
L'UBDCC est conçu pour les configurations multi-bots, l'arbitrage, la création de marché, le développement rapide et les stacks technologiques polyglottes. Son architecture comprend un composant `mgmt` pour l'état du cluster, `restapi` comme passerelle API, et plusieurs processus `dcn` exécutant les DepthCaches réels. Cette conception lui permet de s'adapter d'une seule machine (par exemple 1 mgmt, 1 restapi, plusieurs DCNs) à un cluster Kubernetes avec plusieurs serveurs et pods DCN.
Ses fonctionnalités clés incluent un état de carnet d'ordres déterministe basé sur UBLDC, un basculement automatique avec redondance configurable, une réplication d'état auto-cicatrisante, un accès indépendant du langage via HTTP/JSON, une limitation de débit intelligente avec support des identifiants API par compte, et une scalabilité adaptée aux ressources disponibles. Il propose un filtrage flexible des données (N meilleures demandes/offres, seuil de volume), une transparence totale avec options de débogage, et une stack entièrement asynchrone et compilée en Cython pour des performances maximales et des temps d'accès rapides. Le projet prend en charge plusieurs exchanges Binance, dont les marchés spot, à marge, futures et options, ainsi que leurs réseaux de test.
L'installation est simple avec `pip install ubdcc`, et le cluster peut être démarré avec une seule commande (`ubdcc start`). Une console interactive et des outils CLI sont fournis pour la gestion, ainsi qu'un tableau de bord web UBDCC avec un API Builder pour une exploration facile et la génération de code.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.