Un bot de trading que falla a las 3 AM y nadie se entera hasta el lunes puede costar miles de euros. Los sistemas auto-reparables son la diferencia entre un bot que funciona de forma fiable 24/7 y uno que necesita supervisión constante.
En FSR Smart Money, hemos implementado un sistema de watchdog multinivel que monitoriza, detecta fallos y se auto-repara sin intervención humana. El resultado: un uptime del 99.9% en producción.
¿Por Qué los Bots Fallan?
⚠️ Causas Comunes de Fallos
- Desconexión del broker: La API de IBKR pierde conexión temporalmente
- Errores de red: Timeouts, DNS failures, latencia extrema
- Memory leaks: El consumo de RAM crece gradualmente hasta colapsar
- Errores en datos: Precios corruptos, datos faltantes, timestamps inválidos
- Festivos inesperados: El mercado cierra pero el bot sigue intentando operar
- Actualizaciones del broker: Cambios en la API que rompen la compatibilidad
- Recursos del servidor: Disco lleno, CPU al 100%, procesos zombie
Arquitectura del Sistema Auto-Reparable de FSR
Nuestro sistema de auto-reparación tiene 4 niveles de protección que funcionan de forma independiente y complementaria:
Nivel 1: Health Checks Internos
Cada bot realiza auto-diagnósticos cada 60 segundos:
- Verifica conexión con IBKR (heartbeat)
- Comprueba que el data feed recibe datos actualizados
- Monitoriza uso de memoria y CPU
- Valida que las posiciones abiertas coinciden con el broker
Nivel 2: Watchdog Externo (systemd)
Usamos systemd para supervisar cada servicio. Si un proceso muere, se reinicia automáticamente:
Restart=always
RestartSec=10
StartLimitIntervalSec=300
StartLimitBurst=5
Nivel 3: Watchdog Maestro
Un proceso independiente monitoriza el estado general del sistema:
- Verifica que todos los servicios están activos
- Comprueba que el API responde correctamente
- Valida que la base de datos PostgreSQL está accesible
- Monitoriza el espacio en disco y logs
- Envía alertas por Telegram si detecta problemas
Nivel 4: Recuperación de Estado
Si el sistema se reinicia, recupera automáticamente el estado anterior:
- Sincroniza posiciones abiertas con el broker
- Recupera stop loss y take profit pendientes
- Restablece conexiones con feeds de datos
- Reanuda el monitoreo de señales
Protección contra Festivos del Mercado
Uno de los problemas más sutiles es que el bot intente operar cuando el mercado está cerrado. FSR implementa un calendario de festivos que:
- Conoce todos los festivos de NYSE/NASDAQ del año
- Detecta sesiones de media jornada (Black Friday, etc.)
- Ajusta automáticamente los horarios de operación
- Pausa los bots durante festivos y los reanuda al día siguiente
Alertas Inteligentes (Anti-Spam)
Un sistema de alertas que envía 100 mensajes por hora es inútil. FSR implementa alertas inteligentes:
🔔 Sistema de Alertas Anti-Spam
- Máximo 1 alerta cada 4 horas por tipo de evento
- Agrupación: Si hay 5 fallos similares, se envía 1 alerta resumen
- Priorización: Fallos críticos (broker desconectado) anulan el anti-spam
- Recuperación: Se notifica cuando el problema se resuelve
Ejemplo Real: Auto-Reparación en Acción
🔄 Caso: Desconexión de IBKR a las 2:47 AM
2:47:00 - IBKR TWS pierde conexión (actualización del servidor)
2:47:10 - Health check detecta: "IBKR heartbeat perdido"
2:47:15 - Bot intenta reconectar automáticamente (intento 1/5)
2:47:30 - Reconexión exitosa ✅
2:47:35 - Sincronización de posiciones con broker
2:47:40 - Sistema operativo normal reanudado
2:48:00 - Alerta Telegram: "⚠️ IBKR desconectado 30s. Reconectado automáticamente. 0 posiciones afectadas."
Tiempo total de inactividad: 40 segundos
Intervención humana necesaria: Ninguna
Métricas de Fiabilidad de FSR
📊 Estadísticas de Uptime (últimos 90 días)
- Uptime general: 99.97%
- Reconexiones automáticas: 47 (sin intervención humana)
- Fallos críticos: 0
- Alertas enviadas: 12 (todas resueltas automáticamente)
- Posiciones perdidas por fallos: 0
Lecciones Aprendidas
💡 Principios de Diseño para Sistemas Auto-Reparables
- Nunca confíes en una sola capa: Múltiples niveles de protección
- Fail fast: Detecta problemas rápido antes de que se agraven
- Recupera estado: Después de un reinicio, no empieces de cero
- Alerta inteligentemente: Ruido excesivo = alertas ignoradas
- Log everything: Sin logs detallados, no puedes diagnosticar problemas
- Testea fallos: Simula desconexiones y errores en staging
Conclusión
Un sistema de trading automatizado sin auto-reparación es como un coche sin airbag: puede funcionar bien la mayoría del tiempo, pero cuando algo falla, las consecuencias son catastróficas.
En FSR Smart Money, hemos invertido tanto esfuerzo en la fiabilidad del sistema como en la calidad de las señales. El resultado es un bot que opera 24/7 de forma fiable, se auto-repara ante fallos y solo requiere intervención humana para mejoras estratégicas, nunca para mantenimiento rutinario.
¿Quieres ver el estado del sistema en tiempo real?
Observa cómo el watchdog monitoriza todos los servicios.
Ver Dashboard en Vivo →