blog-image

Qué es un Magic Number en Forex: una explicación clara y precisa

Escrito para MT4 y MT5 (MQL4/MQL5). Verifica los nombres de los campos específicos y su comportamiento con la documentación actual de MetaQuotes, ya que los detalles de implementación pueden variar entre las versiones de la plataforma.

Un magic number en forex es un identificador numérico que un Asesor Experto (EA) asigna a las órdenes o operaciones que abre. El EA puede buscar posteriormente ese número para distinguir sus propias operaciones de las órdenes manuales o de las operaciones abiertas por otros EAs en la misma cuenta. Un magic number es independiente del ticket de la orden y del comentario de la orden, y solo funciona correctamente cuando el EA está programado para asignarlo y verificarlo de manera consistente. No es automático solo por el hecho de que exista un EA.

Esa última parte es más importante de lo que la mayoría de las guías admiten, así que entremos en detalle adecuadamente.

Magic Number vs. Ticket vs. Comentario

Estos tres conceptos se confunden constantemente y, sinceramente, no creo que sea sorprendente. Todos son “números o texto adjuntos a una operación”, por lo que, superficialmente, parecen intercambiables. Pero no lo son.

IdentificadorAsignado porPropósito principal
Magic numberEA o código de tradingIdentificar qué estrategia abrió una operación
Número de ticketLa plataforma de tradingIdentificar de forma única un registro específico de orden, operación o posición
Comentario de la ordenEA, script o traderAdjuntar texto legible opcional
SímboloMercado o brókerIdentificar qué instrumento se está operando
Número de cuentaBrókerIdentificar la cuenta de trading en sí misma

Un magic number no es lo mismo que un comentario, aunque versiones anteriores de guías sobre este tema hayan dicho exactamente eso. Un comentario es texto libre, puede ser editado, truncado por la plataforma o dejarse totalmente en blanco. Un magic number es un campo numérico definido que el EA establece por programación. Sirven para propósitos diferentes, y tratar un comentario como un identificador fiable es buscar problemas, ya que no se garantiza que los comentarios sean únicos o incluso que estén presentes.

Cómo un EA asigna un Magic Number

Cuando un EA abre una operación, su código puede adjuntar un valor de magic number específico a esa orden como parte de la solicitud de operación. Ese valor viaja con la orden y, más tarde, el EA (o un script, o una herramienta de reporte externa) puede filtrar las operaciones verificando qué magic number lleva cada una.

Aquí está la parte que es fácil suponer incorrectamente: no todos los EA lo tienen automáticamente, y no todos los EA lo usan bien. Para que un magic number cumpla realmente su función, el código debe:

  • Aceptar o definir un valor de magic number en algún lugar de sus ajustes
  • Asignar ese valor cada vez que envía una orden
  • Filtrar las órdenes o posiciones existentes utilizándolo
  • Evitar interferir con las operaciones que llevan un número diferente

Algunos EAs omiten esta lógica por completo o recurren a un valor predeterminado que no es único. En ese caso, el magic number existe como un ajuste, pero no está protegiendo nada realmente.

Qué hace (y qué no hace) un Magic Number

Quiero ser directo sobre esto, porque es el error de concepto más grande que circula sobre este tema: un magic number no calcula el rendimiento. No rastrea beneficios, pérdidas, drawdown, tasa de acierto o retorno ajustado al riesgo por sí solo. Todo lo que hace es etiquetar una operación para que las herramientas compatibles, el propio EA, un script o una plataforma de análisis externa puedan agrupar las operaciones pertenecientes a la misma estrategia.

Si estás ejecutando tres EAs en una cuenta y quieres ver cómo se desempeñó cada uno individualmente, el magic number es lo que permite que una herramienta de reporte separe esos datos. Pero el cálculo real del rendimiento ocurre en otro lugar. El número en sí es solo una etiqueta.

Cómo un EA encuentra sus propias operaciones

Supongamos que el EA A opera EUR/USD usando el magic number 1001, y el EA B opera en la misma cuenta usando el magic number 2001. Cuando el EA A escanea sus operaciones abiertas, filtra específicamente las posiciones de EUR/USD etiquetadas con 1001 e ignora cualquier cosa etiquetada con 2001.

Eso suena limpio en teoría. En la práctica, filtrar solo por magic number puede ser arriesgado. Un enfoque más robusto suele verificar varios campos a la vez:

  • Cuenta
  • Símbolo
  • Magic number
  • Tipo de orden o posición
  • Versión de la estrategia
  • Dirección
  • Ticket, cuando sea relevante
  • Comentario, como verificación secundaria útil

¿Por qué molestarse con todo eso? Porque dos EAs pueden terminar usando accidentalmente el mismo magic number, especialmente si están construidos a partir de una plantilla similar o copiados de un ejemplo en línea sin cambiar el valor por defecto. Si el EA A y el EA B usan ambos el 1001, podrían empezar a leer, cerrar o modificar las operaciones del otro sin que ninguno de los dos “sepa” que está sucediendo.

Por qué cada estrategia necesita un identificador único

Esto merece su propia sección, porque las consecuencias de equivocarse no son pequeñas. Si dos EAs gestionados de forma independiente comparten un magic number:

  • Un EA podría cerrar las operaciones del otro, pensando que son suyas
  • Podría modificar los niveles de stop-loss o take-profit que pertenecen a una estrategia diferente
  • Podría contar la exposición errónea al calcular el tamaño de la posición
  • Podría bloquear una entrada válida porque piensa que una posición ya está abierta
  • Los reportes y las estadísticas para ambas estrategias pueden volverse engañosos

Nada de eso es hipotético. Es un error bastante común, particularmente cuando los traders copian una plantilla de un EA y olvidan cambiar el ajuste del magic number antes de ejecutar una segunda estrategia junto a ella.

Una convención de numeración razonable y repetible ayuda a evitar esto. Aquí hay una estructura de ejemplo, aunque el formato exacto es totalmente una convención personal o de equipo, no algo que MetaTrader requiera:

DígitosSignificado
Primeros 2Familia de la estrategia
Siguientes 2Versión de la estrategia
Siguientes 2Grupo de símbolos
Últimos 2Marco temporal o variante

Bajo ese esquema, un magic number como 10030702 podría significar familia de estrategia 10, versión 03, grupo de símbolos 07, marco temporal o variante 02. Vale la pena mantener un registro sencillo junto a tus EAs para que tú (o cualquier otra persona que gestione la cuenta) pueda ver qué se está ejecutando de un vistazo:

Magic numberEASímboloMarco temporalVersión
10030702Trend EAEUR/USDH12
10040701Breakout EAGBP/USDM151

Números mágicos en MT4 vs. MT5

Esta es una distinción que no veo tratarse lo suficiente, y realmente cambia cómo se comportan los números mágicos en la práctica.

MT4 comúnmente gestiona las operaciones como tickets, donde cada orden lleva su propia identidad. MT5 funciona de forma diferente: distingue entre órdenes, operaciones y posiciones como conceptos separados, y las cuentas pueden funcionar con un modelo de cobertura (hedging) o de neto (netting).

Específicamente en una cuenta de netting, múltiples estrategias que operan el mismo símbolo pueden terminar contribuyendo a una única posición neta en lugar de permanecer como operaciones separadas e individuales. Eso significa que la atribución a nivel de posición puede complicarse más allá de simplemente asignar diferentes números mágicos y dar la tarea por terminada. El comportamiento del número mágico depende realmente de la plataforma y del modelo de cuenta que estés ejecutando, por lo que vale la pena confirmar exactamente cómo gestiona esto tu cuenta, si es de cobertura o de netting, antes de asumir que tus estrategias están claramente separadas.

Qué sucede realmente después de un reinicio

Aquí hay una afirmación que aparece en mucho contenido para principiantes y debe corregirse: un número mágico por sí solo no garantiza que un EA reconozca su operación abierta después de un reinicio y evite duplicarla. Ese comportamiento de recuperación depende enteramente de cómo esté codificado el EA.

Después de una desconexión, un reinicio de la computadora o un relanzamiento de la plataforma, un EA bien construido puede buscar operaciones coincidentes verificando el número mágico, el símbolo y otros campos relevantes. Pero el “puede” es la clave en esa frase. Para recuperarse de forma segura, el EA generalmente necesita:

  • Escanear las órdenes o posiciones actualmente abiertas
  • Filtrarlas correctamente usando sus propios identificadores
  • Reconstruir cualquier estado interno que necesite (como el precio de entrada o el progreso del trailing stop)
  • Verificar que está mirando el símbolo y la cuenta correctos
  • Gestionar correctamente los cierres parciales
  • Tener en cuenta las órdenes pendientes, no solo las posiciones abiertas
  • Evitar reentrar bajo condiciones que crearían una operación duplicada

Si falta cualquiera de esa lógica, un reinicio puede resultar absolutamente en órdenes duplicadas o en un EA que pierde el rastro de una posición que aún debería estar gestionando. El número mágico es una pieza del rompecabezas, no la solución completa.

Del mismo modo, cambiar el número mágico de un EA mientras aún tiene operaciones abiertas es un riesgo real. Si un EA abre una posición usando un número y se reinicia con uno diferente, es posible que simplemente deje de reconocer esa posición existente por completo. No cambies la configuración del número mágico de un EA en vivo a menos que el código incluya un proceso de migración específico y probado para gestionarlo.

Operaciones manuales y números mágicos

Las operaciones manuales normalmente no llevan un número mágico de la misma forma deliberada que uno asignado por un EA, aunque la convención exacta puede variar según la plataforma, el script o la herramienta de copy-trading. Un EA tiene que decidir explícitamente cómo trata estas:

  • Ignorar las operaciones manuales por completo y gestionar solo las suyas
  • Incluir las operaciones manuales de alguna manera, si la lógica lo requiere
  • Gestionar estrictamente sus propias operaciones etiquetadas y dejar todo lo demás sin tocar
  • Respetar la exposición existente creada por otros sistemas en la misma cuenta

Asumir que un EA “sabrá” automáticamente qué operaciones son manuales y cuáles no, es un error. Ese comportamiento debe estar integrado en el código.

Errores comunes que conviene evitar

  • Reutilizar el mismo número mágico en EAs no relacionados: Este es probablemente el problema más común y puede causar que dos estrategias interfieran con las operaciones de la otra sin que ninguna de ellas emita una alerta de error.
  • Cambiar el número mágico mientras las operaciones están abiertas: El EA puede simplemente dejar de reconocer sus propias posiciones existentes.
  • Filtrar por número mágico pero no por símbolo: Un EA puede terminar modificando o contando operaciones en el instrumento incorrecto si no verifica ambos.
  • Asumir que el número mágico evita las entradas duplicadas: No lo hace por sí solo. La protección contra duplicados requiere una lógica de estado de entrada separada en el código.
  • Asumir que cada herramienta de reporte importa los datos del número mágico automáticamente: Algunas herramientas de análisis o reporte pueden no exponer ni preservar este dato, así que verifícalo antes de confiar en él.
  • Tratar los comentarios de las órdenes como identificadores fiables: Los comentarios pueden ser truncados, editados o dejarse en blanco, nada de lo cual se aplica a un número mágico correctamente asignado.

Lista de verificación de la lógica del EA antes del despliegue

Vale la pena repasar esto antes de poner cualquier EA en una cuenta real:

  • ¿Asigna un número mágico deliberado y no predeterminado?
  • ¿Filtra tanto por número mágico como por símbolo, no solo por uno?
  • ¿Distingue entre órdenes de mercado y órdenes pendientes?
  • ¿Gestiona correctamente los cierres parciales?
  • ¿Puede reconstruir su estado correctamente después de un reinicio?
  • ¿Evita entradas duplicadas bajo las mismas condiciones?
  • ¿Ignora o incluye intencionadamente las operaciones manuales, en lugar de comportarse de forma impredecible con ellas?
  • ¿Gestiona de forma segura los cambios en la configuración de entrada, sin romper la lógica existente?
  • ¿Registra los errores y las acciones de trading en algún lugar que realmente puedas revisar?
  • ¿Funciona correctamente con el modelo de cobertura o de netting de tu cuenta?

Nota sobre la creación de EAs sin experiencia en programación

Tradicionalmente, convertir una estrategia manual en un EA significaba contratar a un desarrollador, lo que tiende a ser lento y costoso, y a menudo implica varias rondas de corrección de errores antes de que el código coincida con lo que pretendías. El software de construcción de estrategias ha hecho esto considerablemente más accesible para los traders sin conocimientos de programación, permitiéndote generar la lógica de un EA sin escribir MQL por ti mismo.

Dicho esto, la automatización no significa automáticamente que sea segura o libre de errores. Incluso un EA generado sigue conllevando un riesgo operativo real:

  • Errores de codificación, ya sean escritos por humanos o generados
  • Desconexiones del bróker
  • Interrupciones del VPS o del hosting
  • Órdenes duplicadas por una lógica de recuperación incompleta
  • Tamaño de lote incorrecto
  • Actualizaciones de la plataforma que cambian el comportamiento esperado
  • Estado interno corrupto tras una caída
  • Fallo de la estrategia ante condiciones cambiantes del mercado
  • Robo de credenciales, si el acceso a la cuenta no está debidamente protegido
  • EAs de terceros maliciosos o mal evaluados

Un constructor de estrategias puede reducir significativamente el esfuerzo de programación, pero el EA que produce sigue necesitando revisión de código, pruebas reales, controles de riesgo y alguien que lo vigile de verdad. También necesita que la plataforma esté funcionando, el trading algorítmico habilitado, una conexión activa con el bróker y una computadora o VPS funcional para monitorear el mercado. No opera “todo el tiempo” por sí solo; opera solo mientras toda esa infraestructura se mantenga en pie.

Una cosa más que vale la pena corregir: no hay un límite fijo como “hasta 99 EAs” en una cuenta. La capacidad práctica depende de tu CPU, la memoria disponible, los límites de la plataforma y el bróker, cuántos gráficos tienes abiertos, la frecuencia de los ticks, la eficiencia del código, la estabilidad de la red y cuánta exposición te sientes cómodo asumiendo a la vez. Cualquiera que cite un número específico sin vincularlo a un límite documentado del bróker o de la plataforma, probablemente esté adivinando.

Preguntas frecuentes

¿Es necesario un número mágico para cada Asesor Experto? 

No. Un número mágico es un ajuste que el código del EA debe definir y usar deliberadamente; no es una función obligatoria de la plataforma que exista automáticamente en cada EA. Algunas configuraciones simples o de una sola estrategia podrían no usar ninguno. Se vuelve realmente importante una vez que ejecutas más de un EA en la misma cuenta, ya que sin un identificador consistente, separar las operaciones de cada estrategia se vuelve difícil rápidamente.

¿Puedo establecer mi propio número mágico o el EA lo elige automáticamente? 

En la mayoría de los EAs, el número mágico es un parámetro ajustable que puedes configurar tú mismo, generalmente visible en el panel de propiedades o de configuración de entrada del EA. Algunos EAs vienen con un valor predeterminado que los traders nunca cambian, que es exactamente cómo ocurren las colisiones de números mágicos entre estrategias no relacionadas. Vale la pena elegir y registrar deliberadamente tu propio valor para cada EA en lugar de aceptar el valor predeterminado con el que se lanzó el código.

¿Qué pasa si dos EAs en la misma cuenta usan el mismo número mágico por accidente? 

Pueden empezar a interferir con las operaciones del otro. Un EA puede cerrar, modificar o contar las posiciones del otro como si pertenecieran a su propia estrategia, ya que ambos están técnicamente etiquetados de la misma forma. Esto puede producir cálculos de exposición incorrectos, entradas bloqueadas o estadísticas de rendimiento engañosas para ambas estrategias. Asignar a cada EA un número mágico genuinamente único, y verificarlo, evita este problema específico.

¿Funciona un número mágico de la misma manera en MT5 que en MT4? 

No del todo. MT4 generalmente organiza las operaciones en torno a tickets individuales. MT5 separa las órdenes, las operaciones y las posiciones, y las cuentas pueden funcionar con un modelo de cobertura o de netting. En una cuenta de netting, varias estrategias que operan el mismo símbolo pueden terminar contrib 아닌 contribuyendo a una posición neta combinada en lugar de permanecer totalmente separadas, por lo que la atribución basada solo en el número mágico puede no contar la historia completa en MT5 de la misma forma directa que en MT4.

¿Puedo usar el número mágico de una orden para recuperar el estado de un EA después de un corte de energía o una desconexión? 

Parcialmente, y solo si el EA está codificado para ello. Un EA bien construido puede escanear las órdenes y posiciones abiertas después de reconectarse, filtrar por número mágico y símbolo, y reconstruir cualquier estado interno que necesite para seguir gestionando la operación correctamente. Pero esto no es automático solo porque exista un número mágico. Si esa lógica de recuperación no fue escrita en el EA, un reinicio aún puede resultar en una orden duplicada o en una posición que el EA ya no rastrea correctamente.

Resumen final

Un número mágico es una etiqueta, no una garantía. Es genuinamente útil, posiblemente esencial una vez que más de una estrategia automatizada comparte una cuenta, pero solo hace lo que el código circundante le indica. No calcula el rendimiento por sí mismo, no restaura automáticamente el estado de un EA después de un reinicio y no evita las operaciones duplicadas a menos que una lógica separada se encargue de ello. Comprender dónde termina el trabajo del número mágico y dónde el código más amplio del EA debe asumir la responsabilidad es, en realidad, el punto central de este tema.

Este artículo tiene fines educativos y no constituye asesoramiento financiero o de trading. El trading automatizado conlleva riesgos operativos y financieros, incluyendo la posibilidad de errores de codificación, problemas de conectividad y pérdidas inesperadas.

Lectura adicional 

About the Author

Petko Aleksandrov

Chief Mentor & Founder

Founder of EA Academy and Algo Trading Space with over 100,000 students educated globally. Petko combines practical trading experience with rigorous testing methodology, setting new standards for transparency in the algorithmic trading industry.

View Profile

Related Posts

EA de trading de oro avanzado: vea cada regla, configuración y riesgo
EA de trading de oro avanzado: vea cada regla, configuración y riesgo

Advertencia de riesgo: Los productos con apalancamiento conllevan un riesgo sustancial para su capital. La simulación histórica describe lo que ya suc...

8/28/2026
EA de trading avanzado de oro: Ver cada regla, configuración de prueba y riesgo

Advertencia de riesgo: Los productos con apalancamiento conllevan un riesgo sustancial para tu capital. La simulación histórica describe lo que ya suc...

8/28/2026
EA de trading avanzado de oro: Ver cada regla, configuración de prueba y riesgo
  • Share

Comment

No comments yet. Be the first to comment!

Leave a Comment

Your email address will not be published. Required fields are marked with *