ChatGPT para trading: prompts que escriben, corrigen y explican código MQL5

ChatGPT para trading empieza por tus reglas: describe con precisión las entradas, las salidas y el riesgo, y ChatGPT las convierte en código MQL5 para un Expert Advisor de MetaTrader 5. Esta guía reúne prompts listos para copiar que escriben un robot, corrigen errores de compilación en MetaEditor y explican código ajeno. Después, todo robot pasa por el Probador de estrategias y por una cuenta demo.
TL;DR
- ChatGPT escribe código MQL5 cuando el prompt detalla las reglas de entrada, salida y riesgo.
- Los prompts de abajo se copian tal cual: para crear un robot, corregir errores de compilación y entender código ajeno.
- Todo robot pasa por el Probador de estrategias y por una cuenta demo antes de operar con dinero real.
La ruta completa desde una idea de trading hasta un robot funcionando en el gráfico está en Cómo lanzar un robot de trading con IA: guía paso a paso para principiantes. Esta página es la biblioteca de prompts para cada tarea de esa ruta.
¿Se puede usar ChatGPT para trading y crear un bot?
Sí, ChatGPT puede escribir el código de un robot de trading básico. La idea de trading tiene que venir de ti. ChatGPT, el chatbot de IA de OpenAI, traduce las reglas de tu sistema a MQL5, el lenguaje de programación que MetaQuotes creó para MetaTrader 5. Los robots escritos en MQL5 se llaman Expert Advisors, o EA.
La IA acelera la programación. El resultado financiero sigue dependiendo de la lógica que pongas en el prompt. Para obtener una herramienta que funcione, reparte el trabajo de antemano: qué le entregas a ChatGPT y qué compruebas tú mismo.
| Lo que ChatGPT hace bien | Lo que compruebas tú |
|---|---|
| Escribe el código de un Expert Advisor de MetaTrader 5 a partir de tus reglas | Si el EA compra y vende en los momentos que describen tus reglas |
| Conecta indicadores integrados que generan las señales de trading | Que el EA nunca abra operaciones mayores de lo planeado |
| Explica en palabras sencillas qué hace cada bloque de código | El límite de pérdida en el que el robot deja de operar |
| Añade un trailing stop que mueve el Stop Loss detrás del precio | Cómo se comporta el EA con datos históricos en el Probador de estrategias |
Ten presente este reparto: ChatGPT se encarga de teclear, y tu tiempo va a las reglas, los límites de riesgo y las pruebas.
¿Qué necesitas antes de escribir el primer prompt?
Para crear un bot de trading con ChatGPT necesitas cuatro cosas: MetaTrader 5 con MetaEditor, acceso a ChatGPT, tu estrategia escrita con palabras y una cuenta demo.
- MetaTrader 5. La terminal instalada en tu ordenador, con MetaEditor, el editor de código donde pegas, compilas y ejecutas el código de ChatGPT. La instalación está en Descargar MetaTrader 5: cómo instalar MT5 y conectar tu cuenta de trading.
- ChatGPT. ChatGPT u otro chatbot de IA que maneje bien el código. Los nombres de los modelos cambian a menudo, así que usa el más potente que tengas a tu alcance.
- Tus reglas con palabras. Condiciones claras de entrada, salida y riesgo. Tú las escribes, ChatGPT las convierte en código.
- Una cuenta demo. Una cuenta demo de RoboForex conectada a la terminal, para probar el robot con dinero virtual.

Prueba tu robot en una cuenta demo gratuita
Abre una cuenta demo de RoboForex y ejecuta con dinero virtual el código que escribe ChatGPT.
¿Cómo escribir un prompt que ChatGPT convierta en código MQL5 que funcione?
Dale a ChatGPT cinco cosas: un rol, las reglas de entrada y salida, las reglas de riesgo, los parámetros de entrada y la petición de comentarios. Una petición vaga devuelve un robot en bruto con errores de lógica. Un prompt con las cinco partes devuelve código más fácil de configurar y de revisar.
- Rol. Pide a ChatGPT que actúe como un desarrollador experto en MQL5 para MetaTrader 5.
- Entrada y salida. Las señales exactas que abren y cierran una operación, sin margen para dos lecturas.
- Riesgo. Cómo se calcula el lote y dónde van el Stop Loss y el Take Profit.
- Parámetros. Períodos de los indicadores, lote y distancias de los stops como parámetros de entrada, para cambiarlos en la configuración del robot sin editar el código.
- Comentarios. Una nota breve en lenguaje sencillo sobre cada bloque clave, para revisar la lógica con rapidez.
Así se usa ChatGPT para trading en la práctica: el mismo robot de media móvil, pedido de dos maneras.
| Prompt débil | Prompt sólido | |
|---|---|---|
| Prompt | Escribe un robot de trading para MT5 con una media móvil que compre cuando el precio esté por encima de la línea y venda cuando esté por debajo. | Actúa como un desarrollador experto en MQL5 y escribe un Expert Advisor para MT5. Compra cuando una barra cerrada cruce por encima de una media móvil simple de 20 períodos y vende cuando una barra cerrada la cruce por debajo. Cierra la posición abierta con la señal opuesta. Permite solo una posición abierta a la vez. Añade parámetros de entrada para un lote de 0.01 y para el Stop Loss y el Take Profit en pips. Explica en palabras sencillas qué hace cada bloque de código. |
| Qué obtienes | Una plantilla de EA en bruto con ajustes arbitrarios de la media móvil. Las operaciones se abren sin órdenes de protección y pueden acumularse. | Una base legible en MQL5 con tus ajustes, órdenes de protección y un manejo predecible de las señales. |
Crea tu propia versión del prompt sólido a continuación. Elige una tarea, completa tus reglas y copia el resultado en ChatGPT.
Generador de prompts
Tu prompt
Sea cual sea la tarea, la regla es la misma: cuanto más exactas son las reglas del prompt, menos rondas de correcciones necesita el código.
Prompts que escriben un robot de trading
Construye el robot módulo a módulo. Cada prompt de abajo cubre un bloque de un Expert Advisor típico de MetaTrader 5. Cópialo, cambia los números según tus reglas y pégalo en ChatGPT. El código listo de un primer robot completo está en Tu primer expert advisor en MQL5: un robot listo para copiar y lanzar hoy.
Robot de cruce de medias móviles
Prompt
Actúa como un desarrollador experto en MQL5 para MetaTrader 5. Escribe un Expert Advisor (EA) limpio y modular basado en el cruce de dos medias móviles exponenciales, con la EMA rápida de período 10 y la EMA lenta de período 20. Incluye parámetros de entrada para FastMAPeriod, SlowMAPeriod, FixedLot (por defecto 0.01), StopLossPips, TakeProfitPips y MagicNumber. Abre una posición Buy cuando la EMA rápida cruce por encima de la EMA lenta y cierra cualquier posición Sell existente. Abre una posición Sell cuando la EMA rápida cruce por debajo de la EMA lenta y cierra cualquier posición Buy existente. Permite solo una posición abierta a la vez. Comprueba si hay una barra nueva y evalúa las señales de cruce con los valores de las EMA de las dos últimas barras cerradas. Procesa cada señal una sola vez. Gestiona solo las posiciones que coincidan con el símbolo actual y el MagicNumber. Convierte los pips a puntos correctamente para cotizaciones de 3 y 5 dígitos, usando 10 puntos por pip en símbolos de 3 y 5 dígitos y 1 punto por pip en el resto. Usa la biblioteca CTrade para ejecutar las órdenes. Valida los handles de los indicadores y los resultados de las operaciones de trading. Añade comentarios claros que expliquen cada bloque de código.
En el resultado, comprueba tres cosas: el EA lee los valores de los indicadores de barras cerradas, convierte bien los pips en cotizaciones de 5 dígitos y actúa una vez por barra nueva.

Trailing stop
Prompt
Actúa como un desarrollador experto en MQL5. Escribe una función modular de trailing stop que se pueda integrar en un Expert Advisor de MT5. Incluye parámetros de entrada para EnableTrailing como bool, TrailingStopPips como int con valor por defecto 30, TrailingStepPips como int con valor por defecto 5 y MagicNumber como long. Si EnableTrailing es false, no hagas nada. Recorre todas las posiciones abiertas y gestiona solo las que coincidan con el símbolo del gráfico actual y el MagicNumber. Trata las posiciones BUY y SELL por separado. Para una posición BUY, calcula el Stop Loss móvil por debajo del precio Bid actual. Para una posición SELL, calcula el Stop Loss móvil por encima del precio Ask actual. Empieza a mover el stop solo cuando la ganancia flotante de la posición alcance al menos TrailingStopPips. Mueve el Stop Loss solo cuando el nivel propuesto mejore el Stop Loss existente en al menos TrailingStepPips. Si no existe Stop Loss, colócalo cuando se cumplan las condiciones del trailing. Nunca alejes un Stop Loss del precio actual de forma que aumente el riesgo de la posición. Convierte los pips a distancia de precio correctamente según los dígitos y el tamaño del punto del símbolo. Antes de modificar una posición, lee SYMBOL_TRADE_STOPS_LEVEL y SYMBOL_TRADE_FREEZE_LEVEL de ese símbolo, convierte sus valores de puntos a distancia de precio y respeta las restricciones aplicables del bróker. No fijes en el código distancias fijas del bróker, porque los ajustes del símbolo pueden variar. Normaliza el Stop Loss propuesto a los dígitos del símbolo. Usa el ticket de la posición al modificarla, para que se cambie la posición correcta en cuentas hedging. Comprueba tanto el valor devuelto por PositionModify() como el código de resultado del servidor de trading. Registra un mensaje claro si una modificación falla o la bloquean las restricciones del bróker. Conserva el Take Profit existente de la posición al modificar su Stop Loss. Añade comentarios claros que expliquen cada bloque de código y cualquier supuesto sobre los niveles del símbolo.
Comprueba que las posiciones de compra y de venta tengan cálculos de Stop Loss separados y que el Take Profit se mantenga donde estaba cuando el Stop Loss se mueve.
Filtro de horario de trading
Prompt
Actúa como un desarrollador experto en MQL5. Crea un filtro horario modular para un Expert Advisor de MT5. Incluye parámetros de entrada para StartHour como int con valor por defecto 9, StartMinute como int con valor por defecto 0, EndHour como int con valor por defecto 21 y EndMinute como int con valor por defecto 0. Crea una función booleana IsTradingAllowed() que use TimeCurrent() y la hora del servidor del bróker. Valida que las horas estén entre 0 y 23 y los minutos entre 0 y 59. Compara la hora actual del día con la ventana de trading configurada usando un intervalo semiabierto, en el que se permite operar en el instante exacto de inicio y no se permite en el instante exacto de fin. Admite ventanas de trading que cruzan la medianoche. Por ejemplo, una ventana de las 22 horas 00 minutos a las 02 horas 00 minutos permite operar desde las 22 horas hasta la medianoche y desde la medianoche hasta las 02 horas. Si la hora de inicio es igual a la hora de fin, trata la ventana como desactivada y devuelve false. Añade comentarios claros que expliquen la base de la hora del servidor y el manejo de la medianoche.
Comprueba que una ventana que cruza la medianoche funcione y que el filtro lea la hora del servidor del bróker, que puede diferir del reloj de tu ordenador.
Tamaño de la posición según un porcentaje de riesgo
Prompt
Actúa como un desarrollador experto en MQL5. Escribe una función fiable para calcular dinámicamente el tamaño de la posición según el riesgo de la cuenta. Incluye parámetros de entrada para RiskPercent como double con valor por defecto 1.0 y StopLossPips como int con valor por defecto 100. Obtén el equity de la cuenta con AccountInfoDouble(ACCOUNT_EQUITY). Lee el tamaño del tick, el valor del tick, el volumen mínimo, el volumen máximo y el paso de volumen del símbolo con SymbolInfoDouble(). Convierte StopLossPips a distancia de precio correctamente para el símbolo actual. Calcula la pérdida monetaria de un lote a la distancia de Stop Loss indicada y después calcula el tamaño del lote para que la pérdida estimada no supere RiskPercent del equity actual. Redondea el volumen hacia abajo al SYMBOL_VOLUME_STEP válido más cercano. No redondees hacia arriba, porque podría superar el riesgo solicitado. Aplica SYMBOL_VOLUME_MIN y SYMBOL_VOLUME_MAX. Si el volumen calculado es menor que SYMBOL_VOLUME_MIN, devuelve 0 y explica que la operación se debe omitir, sin subirla al lote mínimo. Limita el volumen a SYMBOL_VOLUME_MAX. Valida todos los parámetros de entrada y los valores del símbolo. Devuelve 0 si RiskPercent, StopLossPips, el tamaño del tick, el valor del tick o el paso de volumen no son válidos, o si la pérdida no se puede calcular de forma fiable. Documenta con claridad que las comisiones, el deslizamiento, los gaps y la conversión de divisas pueden hacer que la pérdida real difiera de la estimada. Añade comentarios claros y una breve explicación del cálculo.
Comprueba que el volumen siempre se redondee hacia abajo al paso permitido y que el robot omita la operación cuando el lote resulte menor que el mínimo.
Ejecuta Expert Advisors en RoboForex MetaTrader 5
MT5 de escritorio con MetaEditor, trading algorítmico y el Probador de estrategias integrados.
Prompts que depuran el código en MetaEditor
Para corregir un error de compilación de MQL5 con ChatGPT, copia el mensaje exacto y el número de línea de la pestaña Errores de MetaEditor, envíalo de vuelta con el código y pide la corrección más pequeña posible. Repite el ciclo hasta que el código compile.
- PegarPon el código de ChatGPT en un archivo nuevo de Expert Advisor en MetaEditor.
- CompilarHaz clic en Compilar en la barra de herramientas o pulsa F7.
- Copiar los erroresAbre la pestaña Errores de la Caja de herramientas y copia cada mensaje con su número de línea.
- Enviar y repetirEnvía los errores con el código a ChatGPT, pega la corrección y compila de nuevo.

Ejemplo 1: CTrade undeclared identifier
ChatGPT usó comandos de trading como trade.Buy() pero no incluyó la biblioteca estándar de trading ni declaró el objeto CTrade.
Prompt
El compilador de MQL5 informa CTrade undeclared identifier en la línea [número de línea] tras la compilación. Revisa el código correspondiente y haz la corrección mínima necesaria. Si hace falta, añade la directiva de inclusión de la biblioteca estándar correcta #include <Trade/Trade.mqh> y declara el objeto de trading como CTrade trade;. Explica los cambios que hiciste. Mi código: [pega aquí tu código .mq5]
Ejemplo 2: llaves sin cerrar o un OnTick mal escrito
Las llaves no están equilibradas, o el nombre de un manejador de eventos tiene una errata. En MQL5 el manejador del tick es OnTick(), con O y T mayúsculas. La causa real puede estar por encima de la línea que señala el compilador.
Prompt
El compilador de MetaEditor informa un error de sintaxis o de estructura de funciones. Revisa todo el archivo MQL5 en busca de llaves sin cerrar, cuerpos de función ausentes y nombres de manejadores de eventos mal escritos, como OnTick(). Identifica la causa de cada error informado, haz las correcciones mínimas necesarias y explica qué líneas cambiaste. Mi código: [pega aquí tu código .mq5]
Envía los mensajes exactos de la pestaña Errores junto con el código, y la mayoría de los errores típicos se resuelven en pocas rondas. Una compilación limpia solo significa que el código es MQL5 válido. La lógica de trading todavía tiene que superar las pruebas de abajo.
Prompts que explican código que no escribiste
Dale a ChatGPT el archivo .mq5 del robot y pide que explique la lógica. Esto sirve con robots de código abierto, como los del Code Base de MQL5 que se describen en Robots de trading gratis para MT5: cómo descargar, probar e instalar Expert Advisors del MQL5 Market, incluso si no programas.
Explicar el robot línea por línea
Prompt
Actúa como un desarrollador experto en MQL5. Explica este código línea por línea e incluye los números de línea de cada sección. Desglosa el propósito de cada función, de cada declaración de variable y de cada handle de indicador técnico usado en el script. Mi código: [pega aquí tu código .mq5]
Encontrar el lote, los stops y la entrada
Prompt
Analiza este script de MQL5 e identifica exactamente dónde se definen el volumen de la posición o tamaño del lote, los niveles de Stop Loss y Take Profit de protección y las señales de entrada al mercado. Señala los números de línea concretos o las variables de entrada que controlan estos parámetros, e indica de forma explícita cualquier ajuste que se calcule dentro del código y no esté fijado como parámetro de entrada. Mi código: [pega aquí tu código .mq5]
La respuesta muestra qué ajustes cambias en la pestaña Parámetros de entrada y cuáles están dentro del código. Lo que hace cada parámetro habitual se explica en Configuración de un robot de trading: tamaño de lote, stops y magic number. Contrasta la explicación con el propio código, porque ChatGPT puede pasar por alto detalles en un archivo largo.
¿Cómo probar un bot de trading con ChatGPT antes de operar?
Prueba un bot de trading con ChatGPT en cuatro etapas: el Probador de estrategias, una cuenta demo, una cuenta de centavos ProCent y solo después una cuenta real estándar. Una compilación limpia no dice nada sobre cómo opera el robot, así que cada etapa comprueba algo que la anterior no puede.
- Probador de estrategiasEl historial muestra si las operaciones se abren donde dicen las reglas y qué tan profunda es la reducción
- Cuenta demoLas cotizaciones en vivo comprueban la ejecución de órdenes con dinero virtual
- Cuenta ProCentSpreads y ejecución reales, con el saldo contado en centavos
- Cuenta estándarSolo cuando el robot funcione de forma estable en todas las etapas anteriores
Empieza con la prueba paso a paso de Un backtest de 15 minutos. Después pasa el robot a la cuenta demo y observa cómo se ejecutan sus órdenes con precios en vivo. Sigue la cuenta ProCent: el robot opera con dinero real y spreads reales, con los volúmenes más pequeños y un saldo expresado en centavos. Los resultados pasados no garantizan rendimientos futuros.
Conclusión
ChatGPT escribe código MQL5 para un robot de trading cuando el prompt lleva reglas exactas de entrada, salida y riesgo. Empieza con el prompt del cruce, compila el resultado en MetaEditor, elimina los errores con los dos prompts de corrección y ejecuta el robot en el Probador de estrategias. Después déjalo en una cuenta demo con dinero virtual antes de cualquier operación real.
Preguntas frecuentes
¿Puede ChatGPT operar por mí?
ChatGPT escribe y explica el código y no tiene conexión con tu cuenta de trading. El Expert Advisor se ejecuta dentro de MetaTrader 5, y la terminal envía las órdenes al bróker. Tú decides cuándo se activa el robot y con qué límites de riesgo.
¿Sirve ChatGPT para el trading?
ChatGPT es un asistente cómodo para escribir código de trading y explicar cómo funciona un algoritmo. No inventa estrategias rentables ni predice precios, así que el resultado depende de las reglas que le da el trader.
¿Puede ChatGPT escribir código MQL5?
Sí, ChatGPT puede escribir el código básico de un Expert Advisor de MetaTrader 5. Un prompt detallado da la mejor base: el rol, las reglas de entrada y salida, el cálculo del lote y los niveles de los stops. Compila el resultado en MetaEditor y pruébalo antes de usarlo.
¿Son legales los bots de trading con IA?
Ejecutar un Expert Advisor en tu propia cuenta es una función estándar de MetaTrader 5, y las cuentas de RoboForex permiten el trading algorítmico. Un robot escrito con ChatGPT es un Expert Advisor como cualquier otro. Las normas sobre trading automatizado pueden variar de un país a otro, así que revisa las que se aplican donde vives.
¿Funcionan de verdad los bots de trading con IA?
Un bot de trading funciona en el sentido de que aplica sus reglas a cada señal mientras la terminal está encendida. Que gane dinero depende de la estrategia y de los límites de riesgo, y escribir el código con IA no cambia ninguna de las dos. Los resultados con datos históricos no garantizan rendimientos futuros.
¿Qué versión de ChatGPT funciona mejor para MQL5?
Usa el modelo más avanzado disponible en ChatGPT que maneje bien la programación. Los nombres y la disponibilidad de los modelos cambian a menudo, y hasta un modelo potente comete errores, así que todo fragmento de código pasa por compilación y pruebas.
- Cómo lanzar un robot de trading con IA: guía paso a paso para principiantes: la ruta completa desde una idea de trading hasta un robot en el gráfico.
- Tu primer expert advisor en MQL5: un robot listo para copiar y lanzar hoy: código completo para comparar con lo que te da ChatGPT.
- Cómo instalar un EA en MT5 y abrir tu primera operación automática: pon el robot compilado en un gráfico.
- Un backtest de 15 minutos: cómo probar un robot de trading en MetaTrader 5: la primera prueba para cualquier robot que escriba ChatGPT.
Cualquier información proporcionada en los artículos de este sitio web se basa únicamente en las opiniones personales de los autores. Estos artículos no deben interpretarse como recomendaciones de trading ni como una llamada a la acción. Los autores y RoboForex no asumen responsabilidad alguna por los resultados de las operaciones realizadas a partir de estas recomendaciones y análisis. Los resultados pasados no son indicativos de resultados futuros. Operar con acciones y CFDs conlleva un riesgo alto de pérdida del capital.
