Cómo especificar controles de riesgo para un robot de trading
Convierte tus reglas de riesgo en condiciones comprobables para un EA o cBot. Incluye límites de exposición, rechazos y casos de aceptación.

«Controlar el riesgo» es demasiado amplio para una especificación. Un desarrollador necesita saber qué medir, cuándo bloquear una acción y cómo registrar la decisión. Puedes empezar por describir qué debe ocurrir antes de una entrada, después de una ejecución y al reiniciar la plataforma.
Define los filtros antes de enviar una orden
Si usas un filtro de spread, documenta la unidad, el umbral y el momento de la medición. Un filtro en puntos no equivale necesariamente al mismo número en pips. Indica si una señal bloqueada se descarta o se puede reevaluar dentro de una ventana determinada.
Para limitar exposición, aclara si se cuentan solo las posiciones de este EA, todas las posiciones de un símbolo o todas las de la cuenta. Si el volumen calculado no respeta el mínimo o el incremento permitido, define si se cancela la entrada o se redondea de una manera acordada.
Separa ejecución y estado interno
Una orden enviada puede ser rechazada. El programa debe distinguir la intención de operar de una ejecución confirmada y registrar qué pasó. Si permites reintentos, delimita los errores que los habilitan y cómo se evita repetir una operación ya ejecutada.
Si el programa se reinicia, define cómo reconoce sus posiciones y qué datos necesita recuperar. Una prueba de reinicio con una posición abierta puede detectar problemas que un backtest continuo no revela.
Convierte cada regla en un caso de aceptación
- Señal válida con spread por encima del límite → el programa registra la causa y no envía una orden.
- Señal válida con exposición en el máximo → la estrategia bloquea la nueva entrada.
- Orden rechazada → el programa registra el código de retorno y no marca una posición como abierta.
- Reinicio con una posición reconocida → el robot vuelve a supervisarla sin abrir un duplicado.
Especifica el resultado esperado antes de hacer la prueba. Guarda símbolo, datos, parámetros y versión del programa para poder repetirla. Consulta los códigos de retorno de ejecución de MQL5 para distinguir clases de respuesta del servidor.


