Framework Profesional de Trading Algorítmico Event-Driven para MetaTrader 5
Este framework implementa una arquitectura event-driven (basada en eventos) para trading algorítmico profesional. Desarrollado por LIA Engineering Solutions, combina principios sólidos de ingeniería de software con estrategias cuantitativas de trading.
✅ Monitorea mercados en tiempo real
✅ Genera señales basadas en indicadores técnicos (RSI)
✅ Calcula tamaños de posición apropiados
✅ Valida riesgo antes de ejecutar
✅ Ejecuta órdenes automáticamente en MT5
✅ Notifica sobre operaciones realizadas
🎯 Separación de responsabilidades: Cada módulo tiene una función específica
🔄 Event-driven: Comunicación asíncrona entre componentes
🔧 Extensible: Fácil agregar nuevas estrategias
📚 Mantenible: Código limpio y documentado
🏭 Production-ready: Preparado para operar en real (con precaución)
┌─────────────────────────────────────────────────────────────┐
│ TRADING DIRECTOR │
│ (Orquestador Central) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────┐
│ Events Queue │
└─────────────────┘
│
┌────────────────────┼────────────────────┐
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Data │────────▶│ Signal │───────▶│ Position │
│ Provider │ │Generator │ │ Sizer │
└──────────┘ └──────────┘ └──────────┘
│
▼
┌──────────┐
│ Risk │
│ Manager │
└──────────┘
│
▼
┌──────────┐
│ Order │
│ Executor │
└──────────┘
- ✅ Arquitectura Event-Driven completa
- ✅ Estrategia RSI (Mean Reversion)
- ✅ Risk Management por leverage factor
- ✅ Position Sizing (volumen fijo)
- ✅ Multi-símbolo simultáneo
- ✅ Stop Loss / Take Profit automáticos
- ✅ Notificaciones (Consola + Telegram opcional)
- 🔐 Variables de entorno para credenciales
⚠️ Advertencia en cuentas reales- 🛡️ Validación de leverage
- 📊 Logging detallado
- macOS 10.15+
- Python 3.11+
- MetaTrader 5
- Cuenta DEMO en un broker
# 1. Clonar proyecto
git clone <REPO_URL>
cd lia-framework-clean
# 2. Crear entorno virtual
python3.11 -m venv venv
source venv/bin/activate
# 3. Instalar dependencias
pip install -r requirements.txt
# 4. Configurar .env
cp env.example .env
# Editar .env con tus credenciales
# 5. Ejecutar
python main.pyMT5_PATH=/Applications/MetaTrader 5.app/Contents/MacOS/MetaTrader 5
MT5_LOGIN=12345678
MT5_PASSWORD=TuPassword
MT5_SERVER=ICMarkets-Demo
MT5_TIMEOUT=60000
MT5_PORTABLE=FalseTradingConfig(
symbols=['EURUSD', 'GBPUSD', 'USDJPY'],
timeframe='1min',
# RSI
rsi_period=14,
rsi_upper=70.0,
rsi_lower=30.0,
sl_points=50,
tp_points=100,
# Sizing
fixed_volume=0.01,
# Risk
max_leverage_factor=3.0
)# Activar entorno
source venv/bin/activate
# Ejecutar
python main.py============================================================
LIA ENGINEERING SOLUTIONS
TRADING FRAMEWORK - EVENT-DRIVEN ARCHITECTURE
============================================================
29/01/2026 14:30:00.123 - Cargando configuración...
✓ Configuración cargada:
- Símbolos: EURUSD, GBPUSD, USDJPY
- Timeframe: 1min
- RSI: Period=14, Upper=70.0, Lower=30.0
...
============================================================
SISTEMA LISTO PARA OPERAR
============================================================
29/01/2026 14:30:05.789 - 📊 DATA: EURUSD | Close: 1.08456
Presiona Ctrl + C
lia-framework-clean/
├── config/
│ └── trading_config.py # Configuración centralizada
├── core/
│ ├── events/
│ │ └── events.py # Sistema de eventos
│ └── utils/
│ └── utils.py # Utilidades comunes
├── modules/
│ ├── platform_connector/
│ ├── data_provider/
│ ├── signal_generator/
│ ├── position_sizer/
│ ├── risk_manager/
│ ├── order_executor/
│ ├── portfolio/
│ ├── notifications/
│ └── trading_director/
├── logs/ # Logs (se crea automáticamente)
├── .env # Credenciales (NO SUBIR A GIT)
├── .env.example # Template
├── requirements.txt
├── main.py # Punto de entrada
└── README.md
# config/trading_config.py
symbols=['XAUUSD', 'BTCUSD'] # Oro y Bitcoinrsi_period=21, # Más suave
rsi_upper=75.0, # Menos señales
rsi_lower=25.0fixed_volume=0.05, # 5 micro lotes
max_leverage_factor=5.0 # Mayor exposición✅ Verificar que MT5 esté abierto
✅ Revisar credenciales en .env
✅ Confirmar servidor online
✅ Verificar símbolos disponibles en tu broker
✅ Actualizar symbols en config/trading_config.py
✅ Operar en horario de mercado activo
✅ Ajustar niveles RSI (ej: 65/35 en lugar de 70/30)
✅ Verificar que no hay posiciones abiertas
- Siempre usa cuenta DEMO
- Comienza con volúmenes pequeños (0.01 lotes)
- Monitorea logs continuamente
- Backtesting primero
- Paper trading mínimo 30 días
- Cuenta REAL solo cuando estés seguro
- Leverage conservador (max 3x)
- Diversifica símbolos
- Monitoreo diario
- Backups de configuración
- Nunca subas
.enva Git - Contraseñas seguras
- 2FA en broker
- No compartas credenciales
Para guía detallada de instalación paso a paso en macOS + VS Code, ver:
- Revisa Troubleshooting
- Verifica logs en
logs/ - Consulta documentación MT5
Bienvenidas siguiendo:
- Código limpio y documentado
- Respeto a arquitectura event-driven
- Tests para nuevas features
El trading de instrumentos financieros conlleva riesgos significativos.
Este software se proporciona "tal cual" sin garantías de ningún tipo.
El usuario asume toda la responsabilidad por el uso del sistema.
- ❌ No garantizamos ganancias
- ❌ No somos asesores financieros
- ✅ Usa SOLO capital que puedas permitirte perder
Copyright © 2026 LIA Engineering Solutions
Todos los derechos reservados.
Permitido para uso educativo y de investigación.
- Arquitectura event-driven
- Estrategia RSI
- Risk Management
- Backtesting engine
- Dashboard web
- Múltiples estrategias
- Machine Learning integration
Desarrollado con criterio de ingeniería, pensado para operar.
LIA Engineering Solutions - Acelerando decisiones, diseño y ejecución.
