Inicio › Automatización › MT5 no ejecuta mi EA
Por qué MT5 no ejecuta mi EA (y cómo averiguarlo)
Cuando un experto «no hace nada», casi nunca está roto: hay seis causas que explican la inmensa mayoría de los casos, y todas se pueden comprobar en cinco minutos. El orden importa: empezar por el código cuando el problema era un permiso es la forma más común de perder una tarde.
Las seis causas, por orden de frecuencia
| Síntoma | Causa habitual | Comprobación |
|---|---|---|
| El experto está en el gráfico pero no pasa nada | El trading algorítmico está desactivado: el botón de la barra superior, el permiso global del terminal o el permiso del propio experto. | Botón «Trading algorítmico» en verde (no rojo) y ajustes del terminal con la ejecución algorítmica permitida. Además, en las propiedades del experto debe estar marcado el permiso correspondiente. |
| Solo aparece una carita triste junto al nombre | El experto se ha añadido al gráfico sin permiso de trading o con errores de inicialización. | Revisar los permisos en las propiedades del experto y la pestaña «Expertos»: si la inicialización falló, ahí aparece el motivo. |
| No hay mensajes ni errores | El experto está esperando sus condiciones de entrada. Un experto con filtro de tendencia, de horario o de volatilidad puede pasar horas sin operar por diseño. | Comprobar en el código si imprime mensajes y si tiene filtros de hora o de sesión. Ojo con la hora del servidor, que no es la tuya. |
| Intenta operar y no entra | Rechazo de la ejecución: stops demasiado próximos al precio, volumen por debajo del mínimo, margen insuficiente, mercado cerrado o cuenta de solo lectura. | Pestaña «Diario»: el terminal registra el rechazo con su código de error. Ese código es la respuesta (se consulta en la documentación oficial de MQL5). |
| El símbolo no es el correcto | El experto opera un nombre concreto de símbolo y en tu bróker se llama distinto (o el gráfico está en otro instrumento). | Ver el símbolo del gráfico y el que el experto usa internamente: deben coincidir. Los nombres cambian entre brókers. |
| En demo va y en real no | La cuenta real tiene otros símbolos disponibles, otro volumen mínimo, otro margen o modo de cobertura distinto. | Comparar lista de símbolos, volumen mínimo, spread y modo de cuenta entre demo y real. |
Diagnóstico en cinco minutos
- Trading algorítmico activado (barra superior en verde) y permiso del experto marcado.
- Mira la pestaña «Expertos»: ¿el experto imprime algo? ¿Se inicializó bien?
- Mira la pestaña «Diario»: busca las líneas con «trade», «order» o «error». Ahí está el rechazo con su código.
- Comprueba el gráfico: símbolo correcto, temporalidad con datos y precio actualizándose.
- Comprueba los filtros del experto: horarios, sesiones y umbrales que puedan no cumplirse nunca.
- Prueba con un experto mínimo que solo intente abrir una posición muy pequeña sin stops. Si eso funciona, el canal está bien y el problema es de configuración o de lógica.
Si el problema está en el código
- No compila: no hay archivo ejecutable, así que no se puede añadir al gráfico. Revisa la pestaña «Errores» de MetaEditor (archivo y línea) y vuelve a compilar.
- Falla la inicialización: si el experto aborta al iniciarse (por ejemplo, porque no encuentra el símbolo o los datos históricos), el terminal lo indica. Un experto bien hecho avisa por el Diario en lugar de quedarse en silencio.
- Usa datos que aún no están disponibles: indicadores que necesitan más barras de las que hay, o históricos no descargados. En símbolos sintéticos con poco historial cargado, eso es frecuente.
- Envía órdenes con parámetros inválidos: distancia de stop mínima del símbolo, decimales de precio o de volumen mal redondeados (paso de volumen).
Antes de culpar al bróker
Los rechazos por parte del servidor existen (mercado cerrado en un símbolo con horario, cuenta de solo lectura, símbolo deshabilitado para ese tipo de cuenta), pero son la minoría. La prueba que lo descarta es simple: un experto mínimo que intente abrir el volumen mínimo permitido, sin stops, en el símbolo correcto. Si esa orden entra, tu canal de ejecución funciona y el problema está en tu configuración o en tu lógica.
Preguntas frecuentes
¿Por qué aparece en el gráfico pero no abre operaciones?
Por permisos desactivados, símbolo equivocado, condiciones de entrada que no se cumplen (o filtros horarios mal ajustados) o rechazos de ejecución por stops, volumen o margen. El Diario lo dice.
¿Dónde veo por qué no ejecuta?
En «Expertos» (mensajes del propio experto) y en «Diario» (rechazos del servidor con su código de error).
¿Por qué funciona en demo y no en real?
Porque cambian símbolos disponibles, volumen mínimo, spread, margen y modo de cuenta. Compáralo antes de tocar el código.
¿Puede ser el bróker?
Es posible, pero poco frecuente. Un experto mínimo que intente una operación pequeña y válida sirve para descartarlo.
¿Un experto sin compilar se ejecuta?
No: sin archivo compilado no se puede añadir al gráfico. Corrige los errores y vuelve a compilar.
Primero medir, después automatizar
En la academia los expertos se usan para lo que el riesgo exige: calcular el tamaño por riesgo, colocar stops, respetar límites y horarios. Ver qué se puede automatizar de verdad.
Sigue leyendo
- Instalar un EA en MetaTrader 5 paso a pasoDónde va el archivo, los permisos y los errores típicos de instalación.
- Cómo funciona un EA por dentroCiclo de eventos, envío de órdenes y depuración con el Diario.
- Plan de trading: qué escribir y cómo revisarloUn EA ejecuta reglas: si no están escritas y medidas, automatiza el azar.
- Stop loss en índices sintéticosPor qué los stops mal colocados provocan rechazos y salidas prematuras.