Termos de Referência
Busco un desarrollador experto en MQL5 (MetaTrader 5) para construir un Expert Advisor (EA) completamente autónomo, robusto, escalable y con panel on-chart, incluyendo 3 módulos de estrategia parametrizables, compatibilidad con Strategy Tester, y logs detallados.
El EA será de propiedad exclusiva del cliente y debe entregarse con código fuente (.mq5).
Alcance obligatorio (sin recortes)
Estrategia 1 — Cruce de Medias Móviles (tendencia)
- Compra cuando MA rápida cruza por encima de la lenta; venta en cruce opuesto.
- Parámetros: tipo MA, periodos, timeframe, filtros opcionales (distancia mínima, etc.).
Estrategia 2 — RSI (reversión / sobrecompra-sobreventa)
- Entradas/salidas por niveles RSI configurables; filtros opcionales (tendencia/sesión/volatilidad).
- Parámetros: periodo RSI, niveles, timeframe, confirmaciones.
Estrategia 3 — Divergencia MACD (OBLIGATORIAMENTE OBJETIVA, NO SUBJETIVA)
Debe ser 100% programable (sin interpretación visual):
- Pivotes/swing highs & lows confirmados (sin repintado) usando SwingLookback (o equivalente).
- Reglas base:
- Alcista: Low2 < Low1 y MACD2 > MACD1
- Bajista: High2 > High1 y MACD2 < MACD1
- Parámetros obligatorios: SwingLookback, distancia mínima entre pivotes, umbral mínimo MACD, confirmación al cierre de vela, expiración/invalidation opcional.
- Modo debug visual opcional (líneas/etiquetas) para validar pivotes y divergencias.
3. Gestión del Riesgo
Gestión de riesgo obligatoria
- Lote fijo y/o % riesgo.
- SL/TP fijo y/o ATR opcional.
- Máx. trades simultáneos / por símbolo.
- Filtros: spread máximo, slippage máximo, horarios/sesiones (configurable).
- Protección: stop por pérdida diaria/semana o drawdown (configurable).
5. Control Humano
Panel on-chart (obligatorio; no solo Inputs)
Mínimo:
- ON/OFF global del EA
- ON/OFF por estrategia (MA/RSI/MACD)
- Kill switch (detiene nuevas entradas; opción de cerrar posiciones configurable)
- Estado del EA, símbolo(s) gestionados, spread, última señal y razón
- Edición desde panel (mínimo: riesgo y activación de módulos)
6. Mejora Continua y Aprendizaje
Arquitectura modular (obligatoria)
Separación mínima:
- Strategy interface (3 módulos independientes)
- Trade/Execution manager
- Risk manager
- Logger
- UI/Panel
Debe quedar escalable para futuras ampliaciones.
7. Métricas y Evaluación
Tester, optimización y logs (obligatorio)
- Compatible con Strategy Tester MT5.
- Parámetros optimizables.
- Logs CSV mínimo (JSON opcional) con: fecha/hora, símbolo, estrategia, señal, motivo, entrada, salida, resultado, códigos de error.
8. Resultados Esperados
Entregables obligatorios
- .mq5 + .ex5
- Archivo(s) .set de ejemplo
- Guía corta de uso/configuración
- Ejemplo de logs (CSV)
- Confirmación de propiedad exclusiva
Soporte
- 14 días de corrección de bugs (sin cambios de alcance).
9. Retroalimentación del Sistema
Preguntas de pre-calificación (incluye las que suelen hacer los desarrolladores para evitar confusiones)
Responde en el mismo mensaje y en el mismo orden:
A) Presupuesto / alcance / entregables
- ¿Confirmas USD 400 precio fijo total por TODO el alcance descrito (sin recortes)? (Sí/No)
- ¿Confirmas entrega de código fuente (.mq5) + compilado + .set y propiedad exclusiva? (Sí/No)
- ¿Incluyes 14 días de bugfix post-entrega (solo bugs, sin cambios de lógica)? (Sí/No)
- ¿Cuál es tu plazo estimado (días calendario)?
B) Instrumentos, temporalidades y mercado (preguntas típicas)
- ¿El EA será para un par específico (ej. EURUSD) o debe operar multi-símbolo desde el inicio? (Respuesta esperada: debe ser multi-símbolo desde el inicio)
- ¿Debe operar en cualquier timeframe o un timeframe específico? (Debe permitir configurar timeframe por estrategia)
- ¿Habrá restricción de horarios/sesiones (Londres/NY) o 24/5? (Debe ser parametrizable)
- ¿Debe operar en netting o hedging? (Indica si tu cuenta es hedging; el EA debe soportar el modo de la cuenta)
C) Señales y reglas exactas (para evitar “subjetividad”)
- Para MACD Divergencia: escribe tu método exacto de pivotes confirmados (no repaint) en pseudocódigo o pasos:
- ¿Cómo defines swing high/low?
- ¿Cómo confirmas el pivote?
- ¿Cómo aplicas MinBarsBetweenSwings y el umbral MACD?
- ¿La señal se genera solo al cierre de vela? (Sí/No)
- ¿Cómo evitas duplicar señales (múltiples entradas por la misma divergencia)?
D) Entradas / salidas / gestión de órdenes (preguntas típicas)
- ¿Las entradas serán market o pending orders? (Debe ser parametrizable o explicar tu enfoque)
- ¿Cómo se define SL/TP: fijo, ATR, o ambos? (Debe soportar ambos opcionalmente)
- ¿Habrá trailing stop / break even? (Opcional, indicar si lo incluyes dentro del budget)
- ¿Máximo de posiciones simultáneas por símbolo y total? (Debe ser parametrizable)
- ¿Cómo manejarás slippage, requotes y trade context busy?
E) Gestión de riesgo (preguntas típicas)
- ¿Riesgo por trade será % del balance/equity o lote fijo? (Debe soportar ambos)
- ¿Incluirás límites de pérdida diaria/semanal o por drawdown? (Sí/No)
- ¿Incluirás filtro de spread máximo? (Sí/No)
F) Multi-símbolo y configuración por símbolo (preguntas típicas)
- ¿Cómo se seleccionan símbolos? (MarketWatch / lista input / panel)
- ¿Cómo guardarás parámetros por símbolo? (.set por símbolo / JSON / archivo interno)
- ¿El EA usará OnTick + bucle por símbolos, o OnTimer para multi-símbolo? (explicar)
G) Panel on-chart (preguntas típicas)
- ¿Confirmas panel on-chart real (no solo Inputs)? (Sí/No)
- ¿Qué tecnología usarás: CDialog / CCanvas / objetos gráficos?
- Lista exacta de controles mínimos que incluirás (ON/OFF global, ON/OFF por estrategia, Kill switch, estado, razón última señal, riesgo).
- ¿El panel permitirá cambiar parámetros sin reiniciar el EA? (Sí/No)
H) Tester, logs y calidad (preguntas típicas)
- ¿Confirmas compatibilidad con Strategy Tester y parámetros optimizables? (Sí/No)
- ¿Qué campos exactos tendrá el CSV log? (enumerarlos)
- ¿Cómo garantizas reproducibilidad en Tester (misma configuración = mismo comportamiento)?
- ¿Entregas un set de casos de prueba (ej. 3 divergencias alcistas + 3 bajistas) y capturas/logs?
I) Publicación / propiedad / soporte (preguntas típicas)
- ¿Confirmas que el EA quedará listo para publicarse como Expert Advisor (código limpio, sin dependencias raras)? (Sí/No)
- ¿Confirmas que no reutilizarás partes con licencias restrictivas que impidan propiedad exclusiva? (Sí/No)
- ¿Qué incluye tu soporte post-entrega exactamente (bugs vs cambios)?