À tout instant, le Bitcoin se négocie à des prix légèrement différents sur des dizaines de plateformes. Le prix sur Binance peut différer de celui de Coinbase de quelques dollars, et celui-ci diffère de celui de Kraken de quelques dollars supplémentaires. Les agrégateurs de données de marché comme CoinGecko, CoinMarketCap et divers fournisseurs de données professionnels doivent collecter tous ces prix et produire un prix de référence unique qui reflète la véritable valeur de marché.
La couche de collecte de données est la fondation. Les agrégateurs maintiennent des connexions à toutes les API des grandes plateformes, en utilisant habituellement des connexions WebSocket pour les données de transactions et de carnets d'ordres en temps réel. Pour un agrégateur complet, cela implique de maintenir des centaines de connexions simultanées, chacune avec son propre format de données, ses propres limites de débit et ses propres caractéristiques de fiabilité. Certaines plateformes envoient leurs données de manière fiable. D'autres présentent des déconnexions fréquentes et nécessitent une logique de reconnexion constante.
La normalisation est le défi suivant. Chaque plateforme a ses propres conventions de nommage, ses formats d'horodatage et ses structures de données. Une plateforme peut appeler une paire BTC/USDT tandis qu'une autre l'appelle BTCUSDT ou XBT/USD. Les tailles de transaction peuvent être en devise de base sur une plateforme et en devise de cotation sur une autre. La couche de normalisation doit traduire l'ensemble dans un format interne cohérent avant qu'une quelconque agrégation pertinente puisse avoir lieu.
Le calcul du prix de référence est plus complexe qu'une simple moyenne. Le prix moyen pondéré par les volumes sur l'ensemble des plateformes est une approche courante, qui accorde plus de poids aux plateformes à volumes de trading plus élevés. Mais le volume lui-même peut être peu fiable. Le wash trading gonfle les volumes déclarés sur certaines plateformes, ce qui fausserait un calcul VWAP naïf. Les agrégateurs sophistiqués appliquent une détection des valeurs aberrantes et un ajustement des volumes pour filtrer le wash trading présumé.
La latence varie considérablement tout au long du pipeline de données. Une API d'exchange peut introduire 10 à 100 millisecondes de délai. Le transit réseau en ajoute davantage. Le traitement et l'agrégation ajoutent encore quelques millisecondes. Au moment où un prix de référence est publié, il peut avoir 50 à 500 millisecondes de retard sur le marché réel. Pour un trader particulier qui regarde un graphique de prix, c'est invisible. Pour un système algorithmique qui prend des décisions à la fraction de seconde près, cela peut être significatif.
L'agrégation des carnets d'ordres est encore plus complexe que celle des transactions. Un véritable carnet d'ordres agrégé affiche la liquidité totale disponible sur l'ensemble des plateformes à chaque niveau de prix. Cela nécessite de maintenir une vue en temps réel de chaque carnet d'ordres et de les fusionner. La difficulté, c'est que les carnets d'ordres évoluent des milliers de fois par seconde et que chaque plateforme envoie ses mises à jour à des rythmes différents. La vue agrégée reste toujours une approximation légèrement datée.
Le contrôle de la qualité des données s'effectue en continu en arrière-plan. Si une plateforme rapporte une transaction à un prix éloigné du consensus, il peut s'agir d'une valeur aberrante légitime ou d'une erreur de données. Les agrégateurs utilisent des méthodes statistiques pour détecter et traiter ces cas, en signalant ou en excluant habituellement les transactions qui s'écartent d'un certain seuil par rapport au prix de référence. Cela empêche une seule transaction erronée sur une plateforme à faible volume de faire bouger le prix agrégé.
Le stockage et la récupération des données historiques sont l'autre facette du problème. Stocker chaque transaction de chaque plateforme à pleine résolution génère des téraoctets de données par an. Chaque utilisateur a besoin d'une résolution différente. Un chercheur qui analyse des tendances de long terme voudra peut-être des bougies OHLCV journalières. Un backtester a besoin de données à la minute ou au tick. L'infrastructure de données doit permettre des requêtes efficaces à toutes ces échelles temporelles.
Le paysage des données de marché en crypto est encore en maturation par rapport à la finance traditionnelle, où les exigences de consolidated tape garantissent un flux de prix unique faisant autorité. En crypto, il n'existe pas d'obligation réglementaire de données consolidées, ce qui signifie que chaque agrégateur fait des choix légèrement différents quant aux plateformes à inclure, à la manière de les pondérer et au traitement des cas limites. Les prix que vous voyez sur les différentes plateformes différeront donc toujours légèrement.