Volver a proyectos
2026 · Trading · Activo

Trading Bot IBKR

Sistema de trading algorítmico modular con risk management multicapa y dashboard en tiempo real

Python FastAPI pandas NumPy ib_insync Docker PostgreSQL Prometheus Código

Problema

Los bots de trading comerciales son cajas negras. Necesitaba un sistema transparente, modular y seguro que separara señal → riesgo → ejecución, con capacidad de operar en IBKR.

Solución

Arquitectura hexagonal con capas independientes: Signal Engine genera señales, Risk Manager las valida contra 6+ métricas de riesgo, Execution Engine las ejecuta en IBKR. Todo orquestado por un scheduler con dashboard en tiempo real.

Logros clave

  • Risk Manager multisistema: drawdown, position sizing, correlación entre activos, volatility targeting, max daily loss, y circuit breaker
  • Dashboard en tiempo real con métricas de performance, Sharpe ratio, win rate, y equity curve
  • Soporte multi-broker via capa de abstracción (IBKR actual, extensible a otros)
  • Backtesting con walk-forward optimization y Monte Carlo simulation
  • Alertas vía Telegram y Discord en cada evento crítico

Contexto

El mundo del trading algorítmico está lleno de soluciones opacas: suscripciones mensuales, estrategias secreto, sin posibilidad de auditar. Quería construir algo diferente: un sistema donde cada decisión sea trazable, cada riesgo medible, y cada estrategia intercambiable.

Arquitectura

┌────────────┐    ┌──────────────┐    ┌──────────────┐
│  Signal    │───▶│  Risk        │───▶│  Execution   │
│  Engine    │    │  Manager     │    │  Engine      │
└────────────┘    └──────────────┘    └──────┬───────┘
       │                                      │
       ▼                                      ▼
┌────────────┐                        ┌──────────────┐
│  Data      │                        │  IBKR        │
│  Pipeline  │                        │  Gateway     │
└────────────┘                        └──────────────┘
       │                                      │
       └──────────────┬──────────────────────┘

             ┌──────────────┐
             │  Dashboard   │
             │  (FastAPI +  │
             │   templates) │
             └──────────────┘

Capas

  1. Data Pipeline — Fetch de datos OHLCV, fundamental data, y eventos de mercado
  2. Signal Engine — Estrategias modulares (momentum, mean-reversion, breakout) con sistema de pesos
  3. Risk Manager — Capa transversal que valida cada señal contra límites configurables
  4. Execution Engine — Órdenes limit/market, TWAP, iceberg, gestión de fills
  5. Dashboard — FastAPI + Bootstrap, métricas en tiempo real vía WebSocket

Risk Manager en detalle

El Risk Manager es el corazón del sistema. No es un simple validador — es una capa de seguridad con 6 guardianes:

GuardiánFunciónComportamiento
Drawdown LimiterPausa trading si drawdown > umbralReanuda automáticamente al recuperarse
Position SizerCalcula tamaño óptimo (Kelly, fixed, risk %)Ajusta por volatilidad
Correlation GuardDetecta sobrexposición a sectoresLimita tamaño si correlación > 0.7
Volatility TargetEscala posición inversamente a la volatilidadUsa ATR(14) como referencia
Daily Loss LimitMáxima pérdida diariaHard stop hasta el día siguiente
Circuit BreakerPausa total si anomalía sistémicaActivación manual o automática

Resultados

  • Sharpe ratio: 1.8 en backtest walk-forward (2024-2026)
  • Win rate: 62% en señales de momentum diario
  • Max drawdown: 8.3% en periodo de prueba
  • Disponibilidad: 99.8% en 6 meses de operación continua