Volver a proyectos
2026 · Trading · Activo

Crypto Bot — Arbitraje + UI Web

Bot de trading para criptomonedas con motor de arbitraje, Flask UI y backtesting integrado

Python Flask WebSocket pandas SQLite Docker Binance API Código

Problema

Las oportunidades de arbitraje en crypto duran segundos. Necesitaba un sistema que detectara discrepancias de precio entre exchanges y ejecutara órdenes antes de que se cerraran.

Solución

Motor de arbitraje con WebSocket connections a múltiples exchanges, cola de prioridad de oportunidades, y ejecución asíncrona. Interfaz web Flask para monitoreo en tiempo real y backtesting integrado para validar estrategias.

Logros clave

  • Arbitraje triangular y cross-exchange con latencia <500ms
  • Backtesting vectorizado con pandas para simular estrategias históricamente
  • Dashboard web en tiempo real con WebSocket streaming
  • Sistema de logging estructurado para auditoría de trades

Contexto

En el mundo crypto, milisegundos separan una oportunidad rentable de una pérdida. Los bots de arbitraje comerciales son caros y cerrados. Construí este bot para democratizar el acceso al arbitraje algorítmico con total transparencia.

Arquitectura

┌──────────────┐     ┌───────────────┐     ┌──────────────┐
│  WebSocket   │────▶│  Arb Engine   │────▶│  Order       │
│  Feed Handler│     │  (priority q) │     │  Executor    │
└──────────────┘     └───────┬───────┘     └──────┬───────┘
       ▲                     │                     │
       │                     ▼                     ▼
┌──────────────┐     ┌───────────────┐     ┌──────────────┐
│  Binance     │     │  Backtest     │     │  Binance     │
│  Bybit       │     │  Engine       │     │  Bybit       │
│  Kraken      │     │  (pandas)     │     │  Kraken      │
└──────────────┘     └───────────────┘     └──────────────┘


                     ┌──────────────┐
                     │  Flask UI    │
                     │  + WebSocket │
                     └──────────────┘

Tecnología clave

  • WebSocket asíncrono con websockets + asyncio para feeds en tiempo real
  • Backtesting vectorizado con pandas para simular órdenes sin slippage modelado
  • Flask + Socket.IO para dashboard interactivo con órdenes en vivo