CoinPanel: una plataforma de cripto-trading connectada en temps real als exchanges més grans
Des del 2021 soc CTO fraccional de CoinPanel, una plataforma de cripto-trading amb seu a Suècia. Vaig dirigir-ne l'arquitectura, la seguretat i l'escalabilitat en plena època de volatilitat extrema del mercat cripto, i després la seva evolució cap a Banking as a Service.
- El meu paper
- CTO fraccional
- Empresa
- CoinPanel, Suècia
- Stack
- Python, FastAPI, CCXT, GKE, Pub/Sub, Redis
- Des de
- 2021
- −70 %de cost total d'infraestructura després de revisar-ne l'arquitectura
- −90 %de cost en les dades de mercat en passar de Bigtable a Redis
- 13.000+operacions per segon en els pics, només en quatre dels exchanges
- 7+exchanges connectats: Binance, OKX, KuCoin, Bybit, Kraken…
El repte
Consumir i processar en temps real els preus i les operacions de Binance, Crypto.com, OKX, KuCoin, Bybit, Kraken i altres exchanges, executar ordres reals amb els diners dels usuaris i mantenir la plataforma estable just quan hi havia més trànsit: en les caigudes i els rebots del mercat del 2022 i el 2023.
Què vaig construir
- Ingesta de dades de mercat: un servei que recull operacions i preus dels exchanges i els desa com a sèries temporals, primer a Bigtable i després a Redis.
- Execució d'ordres contra els exchanges, desacoblada amb cues de Pub/Sub i protegida amb bloquejos a Redis perquè una ordre no s'executi mai dues vegades.
- Automatització del trading: bots amb ordres limitades, de mercat i trailing, i alertes de preu en temps real.
- Valoració de carteres: saldos per actiu i valor total en BTC, USD, EUR, GBP i AUD.
- Custòdia de les claus d'API dels usuaris a HashiCorp Vault, amb accés mitjançant identitats de Google Cloud i sense credencials al codi.
- Microserveis a Kubernetes (GKE) amb autoescalat segons la cua de missatges, i direcció de l'equip tècnic.
Decisions tècniques
De Bigtable a Redis
Vam qüestionar la solució estàndard: el canvi va reduir més d'un 90 % el cost de les dades de mercat, molt més que les optimitzacions dels especialistes de Google Cloud, i a més va millorar el rendiment.
Una capa comuna per als exchanges
CCXT amb adaptadors propis per als que es comportaven diferent: afegir un exchange no obligava a reescriure la plataforma.
Escalar sense que et bloquegin
Autoescalat segons els missatges pendents a la cua i un limitador de pes per minut cap a cada exchange, per créixer amb els pics sense que ens bloquegessin les IP.
Resultat
Una plataforma de trading estable en els pitjors dies del mercat, amb un cost d'infraestructura al voltant d'un 70 % més baix, i la base tècnica sobre la qual CoinPanel va construir el seu producte de Banking as a Service.