En este artículo
Al terminar, sabrás…
- Distinguir códigos y estados entre MT4 y MT5.
- Comprobar rejilla, distancias y mínimos con unidades exactas.
- Recalcular riesgo y documentar una incidencia concreta.
Conceptos sin salir del artículo
Stop-loss Lote Margen de garantíaEmpieza por la respuesta y el estado de la cuenta
Ante un rechazo de MT4 o MT5, conserva el mensaje exacto y la instrucción que lo provocó. Precio, volumen, distancia de stops, permisos y sesión son problemas diferentes. Aumentar la posición, quitar el SL o insistir con clics no identifica la causa. El proveedor configura cuenta e instrumento; la plataforma comunica una respuesta que debes interpretar en ese contexto.
Distingue rechazo confirmado, ejecución y respuesta incierta. Tras un timeout o fallo de conexión, reconcilia posiciones, órdenes activas e historial antes de repetir la instrucción. Identifica ticket, símbolo completo, volumen y hora. La ausencia de una fila nueva en una sola ventana no prueba que nada haya ocurrido. Una ejecución parcial exige comprobar cantidad realizada y resto, no únicamente el volumen solicitado.
En un programa MT5, OrderSend=true no acredita por sí solo una ejecución: revisa la estructura de resultado y los eventos posteriores. Para reducir exposición utiliza la operación de cierre de la posición correcta. Una venta nueva puede abrir otra posición en una cuenta hedging. El procedimiento para respuestas ausentes se desarrolla en gestión de la cuenta desde el móvil.
No mezcles los catálogos de MT4 y MT5
MQL4 obtiene códigos mediante GetLastError(); MQL5 incluye el código del servidor en retcode del resultado. Las parejas siguientes señalan categorías parecidas, sin hacer idéntico el tratamiento de todas las operaciones. Un programa también puede imprimir su propio texto: identifica el origen del registro antes de buscar un número.
| Problema | MT4 | MT5 | Primera comprobación |
|---|---|---|---|
| Stops inválidos | 130 | 10016 | Lado, distancia y rejilla del precio. |
| Volumen inválido | 131 | 10014 | Mínimo, incremento y máximo. |
| Trading deshabilitado | 133 | 10017 | Permisos y modo del símbolo. |
| Mercado cerrado | 132 | 10018 | Sesión del instrumento concreto. |
| Fondos insuficientes | 134 | 10019 | Margen requerido y estado de cuenta. |
| Sin cotizaciones | 136 | 10021 | Antigüedad de precios y respuesta. |
Guarda si se trataba de entrada, modificación o cierre. Una categoría correcta ayuda a investigar, pero no reconstruye toda la secuencia de solicitudes. La respuesta de otra orden no confirma el estado de esta.
Precio con decimales correctos, stop incorrecto
Separa Point, Tick size, Stops Level y Freeze Level. Los decimales describen presentación; el incremento mínimo define la rejilla. Stops Level establece distancia y Freeze Level una zona que restringe operaciones. No son campos intercambiables. Copia unidades de la especificación: los nombres parecidos de MT4 y MT5 no autorizan asumir la misma representación de cada propiedad.
Modelo de un instrumento lineal ficticio: punto 0,00001, incremento de precio 0,00005, Stops Level de 20 puntos, Bid 1,10000 y Ask 1,10010. Para el SL de una nueva compra comprobamos distancia desde Bid. El precio 1,09983 está a 17 puntos y fuera de la rejilla: dividido entre 0,00005 da 21.996,6, que no es entero. El nivel 1,09980 sí está en la rejilla y a 20 puntos. Solo comprobamos esas dos condiciones en una instantánea; no garantizamos aceptación ni ejecución.
Si la entrada fuera al Ask indicado, la distancia al SL inicial sería 0,00027 y al corregido 0,00030. Para 10.000 unidades de la divisa base y valoración USD asignada, las pérdidas de precio serían 2,70 y 3 USD, antes de costes y con ejecución exacta supuesta. La corrección aumenta 0,30 USD el importe previsto. Como ejercicio adicional, a 0,90 EUR por USD serían 2,43 y 2,70 EUR: diferencia de 0,27 EUR. Un cambio técnicamente válido puede superar tu límite de pérdida.
MT4 advierte que MODE_STOPLEVEL=0 puede significar ausencia de distancia mínima o control dinámico del servidor no expresado en el campo. No promete aceptar cualquier stop. No traslades automáticamente esa salvedad específica a cualquier campo de otra plataforma. Ante modificación rechazada, registra también MODE_FREEZELEVEL o SYMBOL_TRADE_FREEZE_LEVEL, según corresponda. Cambiar formato decimal no elimina una restricción operativa. Actualiza cotizaciones antes de evaluar otro intento: Bid y Ask pueden haber cambiado.
Cumplir el incremento no basta para el volumen
En otro modelo, el mínimo es 0,10 lote y el incremento 0,01. Tu cálculo permite 0,04: cumple el incremento, pero no el mínimo. Subir a 0,10 multiplica la exposición por 2,5. No has reparado el mismo plan, sino cambiado su tamaño. Comprueba también máximo, límites agregados aplicables y, para un cierre parcial, el volumen que quedaría después.
Subir al mínimo multiplica la exposición por 2,5; la aceptación técnica no valida el presupuesto.
- Cantidad calculada
- 0,04 lote – Cumple incremento 0,01.
- Mínimo requerido
- 0,10 lote – 0,04 no lo alcanza.
- Cambio de exposición
- 2,5 veces – 0,10 dividido entre 0,04.
Margen disponible y pérdida prevista hasta el SL responden a preguntas distintas. Un saldo que permite enviar una orden no certifica que esa posición respete tu presupuesto. Cambiar apalancamiento tampoco corrige una distancia o un volumen incompatible con el límite. Recalcula cantidad, costes y reserva, y descarta la configuración cuando no encaje. El procedimiento de tamaño de posición permite evaluar el plan revisado.
Sesión, permisos y expediente de incidencia
Comprueba cuenta, servidor y símbolo con su sufijo. Lee la sesión del instrumento, no la de otra pareja o bolsa. Revisa conexión, hora de la última cotización y operaciones permitidas. Un modo close-only no justifica intentar una entrada opuesta como atajo. En automatización separa permiso del terminal, configuración del programa y restricciones del servidor; recibir precios no acredita permiso para operar.
Si persiste la incidencia, prepara versión de plataforma, identificador de cuenta enmascarado, símbolo, hora y zona, tipo de instrucción, parámetros y respuesta exacta. Conserva reloj de origen al convertir una hora a Europe/Madrid. No incluyas contraseñas ni códigos de acceso. Expón qué estado está confirmado y cuál sigue pendiente: facilita una respuesta comprobable sin presentar una hipótesis como diagnóstico.
Tres acciones para resolver sin aumentar el riesgo
- Crea un registro de una incidencia concreta: solicitud original, mensaje, plataforma y estado confirmado. Tras una respuesta incierta compara las tres áreas de la cuenta y no interpretes expectativas como ejecución o rechazo.
- Copia en demo la especificación del símbolo: punto, incremento de precio, distancias, mínimo, máximo e incremento de volumen. Calcula el stop del ejemplo sin enviar una operación y comprueba qué condiciones cumple cada precio.
- Compara el plan antes y después de corregir: distancia desde la entrada, cantidad, pérdida prevista, costes y margen. Si la modificación supera el límite, descarta esa configuración; el objetivo del ejercicio es identificar la causa, no conseguir aceptación a cualquier precio.
Comprueba lo aprendido
Aprox. 2 minutos de práctica.
Ver respuesta y explicación
Correcto: cumple incremento, pero no mínimo. Subir cambia el riesgo.
Más preguntas
¿Debo quitar el stop para que acepten la orden?
Quitar protección no es una corrección del mismo plan: crea una operación distinta sin esa condición de salida. Identifica primero lado de cotización, rejilla, distancia y tipo de orden permitido. Si las condiciones no encajan, descartar la configuración es un resultado válido. En una posición existente comprueba por separado el último SL aceptado: el rechazo de una modificación no demuestra que el nuevo nivel haya quedado activo.
¿Stops Level cero permite cualquier stop?
La referencia MQL4 admite dos interpretaciones de MODE_STOPLEVEL=0: ausencia de distancia mínima o control dinámico del servidor que el campo no expresa. Es una salvedad de ese campo, sin convertirla en regla universal para todas las plataformas. También debes comprobar lado de precio, rejilla y condiciones actuales. Conserva respuesta y hora si el rechazo sigue sin explicación y pide al proveedor los requisitos aplicados a esa instrucción concreta.
¿El mismo número significa lo mismo en MT4 y MT5?
No utilices una lista combinada. MQL4 y MQL5 tienen catálogos separados y un programa puede generar además mensajes propios. Identifica plataforma, tipo de respuesta y origen del registro. Las parejas de esta guía comparan categorías, sin igualar todos sus procedimientos. Interpretar una etiqueta correctamente tampoco reconstruye el historial completo: todavía necesitas relacionar la solicitud con identificadores, tiempos y cantidades realmente ejecutadas en la cuenta.
¿Puedo reenviar después de perder la conexión?
Primero reconcilia el estado sincronizado de la cuenta. La falta de respuesta puede dejar incierto el resultado anterior. Comprueba posiciones, instrucciones pendientes e historial, incluidas cantidades parciales, usando identificadores, símbolo y hora. Si persiste la incertidumbre, conserva registros y consulta soporte oficial. Volver a pulsar no confirma lo ocurrido: podría aumentar exposición o abrir una posición opuesta en una cuenta que registra ambas direcciones por separado.
Fuentes y comprobación
- MQL4: códigos del servidor
Catálogo40–82 leído, incluidos130/131/132/133/134/136 y GetLastError.
- MQL5: retcode del servidor
Catálogo50–97 leído: categorías, parcial10010 y restricciones.
- MQL4: propiedades del símbolo
Propiedades44–70 consultadas; salvedad dinámicaMODE_STOPLEVEL y FreezeLevel.
- MQL5: propiedades del símbolo
Apartados73–125 leídos para tiempo,punto,ticksize,stops/freeze y límites de volumen.
- MQL5: OrderSend
Distinción entre retorno de función y ejecución consultada en artículo anterior del mismo trabajo ES.
Los cálculos utilizan supuestos explícitos. No sustituyen los datos actuales de mercado ni las condiciones de tu proveedor.
