Artículos de programación MQL4 y MQL5

icon

Aprenda el lenguaje de programación de estrategias comerciales MQL5 leyendo numerosos artículos la mayor parte de los cuales han sido escritos por Ustedes - miembros de MQL5.community. Con el fin de buscar rápidamente la respuesta sobre una u otra cuestión de programación, todos los artículos están divididos en categorías: "Integración", "Probador", "Estrategias comerciales", etc.

Siga las nuevas publicaciones y participe en sus discusiones en el foro de MQL5.community!

Nuevo artículo
últimas | mejores
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 8): Panel de métricas

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 8): Panel de métricas

Como una de las herramientas de análisis de la acción del precio más potentes, el panel de métricas está diseñado para optimizar el análisis del mercado al proporcionar instantáneamente métricas esenciales del mercado con solo hacer clic en un botón. Cada botón tiene una función específica, ya sea analizar tendencias altas/bajas, volumen u otros indicadores clave. Esta herramienta proporciona datos precisos y en tiempo real cuando más los necesita. Profundicemos en sus características en este artículo.
preview
Redes neuronales en el trading: Aprendizaje jerárquico de características en nubes de puntos

Redes neuronales en el trading: Aprendizaje jerárquico de características en nubes de puntos

Seguimos estudiando los algoritmos para extraer características de una nube de puntos. Y en este artículo, nos familiarizaremos con los mecanismos para mejorar la eficacia del método PointNet.
preview
Redes neuronales en el trading: Mejora de la eficiencia del Transformer mediante la reducción de la nitidez (SAMformer)

Redes neuronales en el trading: Mejora de la eficiencia del Transformer mediante la reducción de la nitidez (SAMformer)

El entrenamiento de los modelos de Transformer requiere grandes cantidades de datos y suele ser difícil debido a la escasa capacidad de generalización de los modelos en muestras pequeñas. El framework SAMformer ayuda a resolver este problema evitando los mínimos locales malos, mejorando la eficacia de los modelos incluso con muestras de entrenamiento limitadas.
preview
Redes neuronales en el trading: Agente multimodal con herramientas complementarias (FinAgent)

Redes neuronales en el trading: Agente multimodal con herramientas complementarias (FinAgent)

Hoy querríamos presentarle el FinAgent, un framework de agente multimodal para el comercio financiero diseñado para analizar distintos tipos de datos que reflejan la dinámica del mercado y los patrones comerciales históricos.
preview
Pruebas de robustez en asesores expertos

Pruebas de robustez en asesores expertos

En el desarrollo de una estrategia hay muchos detalles complejos a tener en cuenta, muchos de los cuales no se destacan para los traders principiantes. Como resultado, muchos comerciantes, incluido yo mismo, hemos tenido que aprender estas lecciones a las duras penas. Este artículo se basa en mis observaciones de errores comunes que la mayoría de los traders principiantes encuentran al desarrollar estrategias en MQL5. Ofrecerá una variedad de consejos, trucos y ejemplos para ayudar a identificar la descalificación de un EA y probar la solidez de nuestros propios EA de una manera fácil de implementar. El objetivo es educar a los lectores, ayudándolos a evitar futuras estafas al comprar EA, así como a prevenir errores en el desarrollo de su propia estrategia.
preview
Análisis de todas las variantes del movimiento de precios en una computadora cuántica IBM

Análisis de todas las variantes del movimiento de precios en una computadora cuántica IBM

Hoy utilizaremos un computadora cuántica de IBM para descubrir todas las variantes del movimiento de los precios. ¿Le suena a ciencia ficción? ¡Bienvenido al mundo de la informática cuántica para el trading!
preview
Pruebas retrospectivas manuales simplificadas: herramientas personalizadas en MQL5 para el Probador de Estrategias

Pruebas retrospectivas manuales simplificadas: herramientas personalizadas en MQL5 para el Probador de Estrategias

En este artículo diseñamos un conjunto de herramientas MQL5 personalizadas para facilitar las pruebas retrospectivas manuales en el Probador de Estrategias. Explicamos su diseño e implementación, centrándonos en los controles comerciales interactivos. A continuación mostramos cómo utilizarlo para probar estrategias de forma eficaz.
preview
Redes neuronales en el trading: Conjunto de agentes con uso de mecanismos de atención (Final)

Redes neuronales en el trading: Conjunto de agentes con uso de mecanismos de atención (Final)

En el artículo anterior, presentamos el framework adaptativo multiagente MASAAT, que usa un conjunto de agentes para analizar de forma cruzada una serie temporal multimodal a diferentes escalas de representación de datos. Hoy llevaremos a una conclusión lógica el trabajo iniciado para aplicar los planteamientos de este framework usando MQL5.
preview
Aprendizaje automático y Data Science (Parte 34): Descomposición de series temporales, desglosando el mercado bursátil hasta su núcleo

Aprendizaje automático y Data Science (Parte 34): Descomposición de series temporales, desglosando el mercado bursátil hasta su núcleo

En un mundo repleto de datos ruidosos e impredecibles, identificar patrones significativos puede resultar complicado. En este artículo, exploraremos la descomposición estacional, una potente técnica analítica que ayuda a separar los datos en sus componentes clave: tendencia, patrones estacionales y ruido. Al desglosar los datos de esta manera, podemos descubrir información oculta y trabajar con datos más claros y fáciles de interpretar.
preview
Desarrollo de un sistema de repetición (Parte 73): Una comunicación inusual (II)

Desarrollo de un sistema de repetición (Parte 73): Una comunicación inusual (II)

En este artículo, veremos cómo transferir información en tiempo real entre el indicador y el servicio, y comprenderemos por qué pueden surgir problemas al modificar el timeframe y cómo resolverlos correctamente. Como bono, tendrás acceso a la última versión de la aplicación de repetición/simulador. El contenido es exclusivamente didáctico y no debe utilizarse con otros fines.
preview
Añadimos un LLM personalizado a un robot comercial (Parte 5): Desarrollar y probar la estrategia de negociación con LLMs (III) Ajuste del adaptador

Añadimos un LLM personalizado a un robot comercial (Parte 5): Desarrollar y probar la estrategia de negociación con LLMs (III) Ajuste del adaptador

Con el rápido desarrollo de la inteligencia artificial actual, los modelos de lenguaje (LLM) son una parte importante de la inteligencia artificial, por lo que deberíamos pensar en cómo integrar LLM potentes en nuestro trading algorítmico. Para la mayoría de las personas, es difícil ajustar estos poderosos modelos según sus necesidades, implementarlos localmente y luego aplicarlos al comercio algorítmico. Esta serie de artículos adoptará un enfoque paso a paso para lograr este objetivo.
preview
Simulación de mercado (Parte 02): Orden cruzada (II)

Simulación de mercado (Parte 02): Orden cruzada (II)

A diferencia de lo que se vio en el artículo anterior, aquí vamos a hacer el control de selección en el Asesor Experto. Aunque esta no es aún una solución definitiva, nos servirá por ahora. Así que acompaña el artículo para entender cómo implementar una de las soluciones posibles.
preview
Redes neuronales en el trading: Modelos con transformada de wavelet y atención multitarea

Redes neuronales en el trading: Modelos con transformada de wavelet y atención multitarea

Le proponemos familiarizarse con un framework que combina la transformada de wavelet y el modelo multitarea Self-Attention con el objetivo de mejorar la capacidad de respuesta y la precisión de las previsiones en condiciones de mercado volátiles. La transformada de wavelet descompone los rendimientos de los activos en frecuencias altas y bajas, captando cuidadosamente las tendencias del mercado a largo plazo y las fluctuaciones a corto plazo.
preview
Búsqueda dialéctica - Dialectic Search (DA)

Búsqueda dialéctica - Dialectic Search (DA)

Hoy nos familiarizaremos con el Algoritmo Dialéctico (DA), un nuevo método de optimización global inspirado en el concepto filosófico de la dialéctica. El algoritmo explota la singular división de la población en pensadores especulativos y prácticos. Las pruebas demuestran un impresionante rendimiento de hasta el 98% en tareas pequeñas y una eficiencia global del 57,95%. El artículo explica estas métricas y presenta una descripción detallada del algoritmo y resultados experimentales con distintos tipos de características.
preview
Añadimos un LLM personalizado a un robot comercial (Parte 5): Desarrollar y probar la estrategia de negociación con LLMs (IV) - Probar la estrategia de trading

Añadimos un LLM personalizado a un robot comercial (Parte 5): Desarrollar y probar la estrategia de negociación con LLMs (IV) - Probar la estrategia de trading

Con el rápido desarrollo de la inteligencia artificial en la actualidad, los modelos de lenguaje (LLM) son una parte importante de la inteligencia artificial, por lo que debemos pensar en cómo integrar potentes LLM en nuestro trading algorítmico. Para la mayoría de las personas, resulta difícil ajustar estos potentes modelos según sus necesidades, implementarlos localmente y luego aplicarlos al comercio algorítmico. Esta serie de artículos adoptará un enfoque paso a paso para lograr este objetivo.
preview
Del básico al intermedio: Variables (I)

Del básico al intermedio: Variables (I)

Muchos programadores principiantes tienen muchas dificultades para comprender por qué sus códigos no funcionan como esperan. Existen muchos detalles que hacen que un código sea realmente funcional. No se trata simplemente de escribir toda una serie de funciones y operaciones para que un código funcione. ¿Qué tal si aprendemos de la manera correcta cómo se crea un código real en lugar de copiar y pegar fragmentos de código encontrados aquí y allá? El contenido expuesto aquí tiene como objetivo, pura y simplemente, la didáctica. En ningún caso debe considerarse como una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Del básico al intermedio: Unión (I)

Del básico al intermedio: Unión (I)

En este artículo, veremos qué es una unión. Aquí, mediante la experimentación, analizaremos las primeras construcciones en las que podría utilizarse una unión. No obstante, lo que se mostrará aquí es solo la parte básica de todo un conjunto de conceptos e información que se explorará más a fondo en artículos futuros. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe considerarse una aplicación cuya finalidad no sea aprender y estudiar los conceptos mostrados.
preview
Creación de un asesor experto integrado de MQL5 y Telegram (Parte 7): Análisis de comandos para la automatización de indicadores en los gráficos

Creación de un asesor experto integrado de MQL5 y Telegram (Parte 7): Análisis de comandos para la automatización de indicadores en los gráficos

En este artículo, exploramos cómo integrar los comandos en Telegram con MQL5 para automatizar la adición de indicadores en los gráficos de trading. Cubrimos el proceso de análisis sintáctico de los comandos del usuario, ejecutándolos en MQL5, y probando el sistema para asegurar un comercio basado en indicadores sin problemas.
preview
Operar con el Calendario Económico MQL5 (Parte 5): Mejorar el panel de control con controles adaptables y botones de filtro

Operar con el Calendario Económico MQL5 (Parte 5): Mejorar el panel de control con controles adaptables y botones de filtro

En este artículo, creamos botones para filtros de pares de divisas, niveles de importancia, filtros de tiempo y una opción de cancelación para mejorar el control del panel. Estos botones están programados para responder dinámicamente a las acciones del usuario, lo que permite una interacción fluida. También automatizamos su comportamiento para reflejar los cambios en tiempo real en el panel de control. Esto mejora la funcionalidad general, la movilidad y la capacidad de respuesta del panel.
preview
Redes neuronales en el trading: Clusterización doble de series temporales (Final)

Redes neuronales en el trading: Clusterización doble de series temporales (Final)

Continuamos implementando los enfoques propuestos por los autores del framework DUET, que ofrece un enfoque innovador para el análisis de series temporales, combinando la clusterización temporal y de canales para identificar patrones ocultos en los datos analizados.
preview
Desarrollo de un sistema de repetición (Parte 44): Proyecto Chart Trade (III)

Desarrollo de un sistema de repetición (Parte 44): Proyecto Chart Trade (III)

En el artículo anterior, expliqué cómo puedes manipular los datos de la plantilla para usarlos en un OBJ_CHART. Allí solo introduje el tema sin entrar en muchos detalles, ya que en esa versión el trabajo se hizo de una manera muy simplificada. Sin embargo, se hizo de esa forma precisamente para facilitar la explicación del contenido. Pues, a pesar de parecer simple hacer ciertas cosas, algunas no son tan evidentes, y sin comprender la parte más simple y básica, no entenderás realmente lo que estoy haciendo.
preview
Creación de un Panel de administración de operaciones en MQL5 (Parte IV): Capa de seguridad de inicio de sesión

Creación de un Panel de administración de operaciones en MQL5 (Parte IV): Capa de seguridad de inicio de sesión

Imagine un actor malicioso infiltrándose en la sala del administrador comercial y obteniendo acceso a las computadoras y al panel de administración que se utilizan para comunicar información valiosa a millones de comerciantes en todo el mundo. Una intrusión de este tipo podría tener consecuencias desastrosas, como el envío no autorizado de mensajes engañosos o clics aleatorios en botones que desencadenan acciones no deseadas. En esta discusión, exploraremos las medidas de seguridad en MQL5 y las nuevas características de seguridad que hemos implementado en nuestro Panel de administración para protegernos contra estas amenazas. Al mejorar nuestros protocolos de seguridad, nuestro objetivo es proteger nuestros canales de comunicación y mantener la confianza de nuestra comunidad comercial global. Encuentre más información en la discusión de este artículo.
preview
Sistemas neurosimbólicos en trading algorítmico: Combinación de reglas simbólicas y redes neuronales

Sistemas neurosimbólicos en trading algorítmico: Combinación de reglas simbólicas y redes neuronales

El artículo relata la experiencia del desarrollo de un sistema comercial híbrido que combine el análisis técnico clásico con las redes neuronales. El autor describe detalladamente la arquitectura del sistema, desde el análisis básico de patrones y la estructura de la red neuronal hasta los mecanismos de toma de decisiones comerciales, compartiendo código real y observaciones de carácter práctico.
preview
Desarrollo de un sistema de repetición (Parte 48): Conceptos que hay que entender y comprender

Desarrollo de un sistema de repetición (Parte 48): Conceptos que hay que entender y comprender

¿Qué tal aprender algo nuevo? En este artículo, aprenderás cómo transformar scripts y servicios y por qué es útil hacerlo.
preview
Factorización de matriсes: un modelado más práctico

Factorización de matriсes: un modelado más práctico

Es muy probable que no te hayas dado cuenta de que el modelado de las matrices era un tanto extraño, ya que no se indicaban filas y columnas, solo columnas. Esto resulta muy raro al leer un código que realiza factorizaciones de matrices. Si esperabas ver las filas y columnas indicadas, podrías haberte sentido bastante confundido al intentar implementar la factorización. Además, esa forma de modelar las matrices no es, ni de cerca, la mejor manera. Esto se debe a que, cuando modelamos matrices de esa forma, nos enfrentamos a ciertas limitaciones que nos obligan a usar otras técnicas o funciones que no serían necesarias si el modelado se realiza de manera más adecuada.
preview
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 07): Primeras mejoras (II)

Desarrollo de un sistema de repetición — Simulación de mercado (Parte 07): Primeras mejoras (II)

En el artículo anterior realizamos correcciones en algunos puntos y agregamos pruebas a nuestro sistema de repetición para garantizar la mayor estabilidad posible. Asimismo, comenzamos a crear y utilizar un archivo de configuración para dicho sistema.
preview
Del básico al intermedio: Variables (II)

Del básico al intermedio: Variables (II)

En este artículo vamos a ver cómo trabajar con variables del tipo estática. Este tema suele confundir a muchos programadores, tanto principiantes como aquellos con algo de experiencia. Esto se debe a que existen algunos cuidados y trucos que deben observarse al usar este mecanismo. El contenido expuesto aquí tiene como objetivo, pura y simplemente, la enseñanza didáctica. En ningún caso debe considerarse como una aplicación cuya finalidad no sea el aprendizaje y estudio de los conceptos presentados.
preview
Optimización de la quimiotaxis bacteriana - Bacterial Chemotaxis Optimisation (BCO)

Optimización de la quimiotaxis bacteriana - Bacterial Chemotaxis Optimisation (BCO)

Este artículo presenta la versión original del algoritmo de optimización de la quimiotaxis bacteriana (BCO) y su versión modificada. Hoy veremos con detalle todas las diferencias, centrándonos en la nueva versión de BCOm, que simplifica el mecanismo de movimiento bacteriano, reduce la dependencia de la historia de cambios de posición y utiliza operaciones matemáticas más sencillas en comparación con la versión original, sobrecargada computacionalmente. También realizaremos pruebas y extraeremos conclusiones.
preview
Algoritmo de Irrigación Artificial — Artificial Showering Algorithm (ASHA)

Algoritmo de Irrigación Artificial — Artificial Showering Algorithm (ASHA)

Este artículo presenta el Algoritmo de Irrigación Artificial (ASHA), un nuevo método metaheurístico desarrollado para resolver problemas generales de optimización. Basado en la modelización de los procesos de flujo y almacenamiento del agua, este algoritmo construye el concepto de un campo ideal en el que cada unidad de recurso (agua) es invocada para encontrar una solución óptima. Hoy descubriremos cómo el ASHA adapta los principios de flujo y acumulación para asignar eficazmente los recursos en el espacio de búsqueda, y también veremos su aplicación y los resultados de sus pruebas.
preview
Introducción a las curvas ROC (Receiver Operating Characteristic)

Introducción a las curvas ROC (Receiver Operating Characteristic)

Las curvas ROC son representaciones gráficas que se utilizan para evaluar el rendimiento de los clasificadores. A pesar de que los gráficos ROC son relativamente sencillos, existen conceptos erróneos y dificultades comunes a la hora de utilizarlos en la práctica. El objetivo de este artículo es ofrecer una introducción a los gráficos ROC como herramienta para los profesionales que desean comprender la evaluación del rendimiento de los clasificadores.
preview
Desarrollo de un sistema de repetición (Parte 26): Proyecto Expert Advisor — Clase C_Terminal

Desarrollo de un sistema de repetición (Parte 26): Proyecto Expert Advisor — Clase C_Terminal

Podemos comenzar a elaborar un EA para uso en repetición/simulación. Sin embargo, necesitamos algo refinado, no solo una solución cualquiera. No debemos, no obstante, ser intimidados por la complejidad inicial. Es esencial iniciar de algún punto, si no, acabaremos por acomodarnos, reflexionando sobre la dificultad del desafío sin realmente intentar superarlo. La esencia de la programación es exactamente esa: enfrentar un obstáculo y buscar superarlo a través de estudio, pruebas y extensa investigación.
preview
Indicador personalizado: Trazado de puntos de entradas parciales en cuentas netting

Indicador personalizado: Trazado de puntos de entradas parciales en cuentas netting

En este artículo, exploraremos una forma interesante y diferente de crear un indicador en MQL5. En lugar de centrarnos en una tendencia o patrón gráfico, el objetivo será gestionar nuestras propias posiciones, incluyendo las entradas y salidas parciales. Utilizaremos intensivamente matrices dinámicas y algunas funciones comerciales (Trade) relacionadas con el historial de transacciones y las posiciones abiertas para indicar en el gráfico dónde se llevaron a cabo estas operaciones.
preview
Simulación de mercado (Parte 16): Sockets (X)

Simulación de mercado (Parte 16): Sockets (X)

Estamos a punto de concluir este desafío. Sin embargo, antes de pasar al siguiente, quiero que tú, querido lector, procures comprender estos dos artículos, tanto este como el anterior. Así podrás entender realmente el próximo artículo, en el que abordaré exclusivamente la parte referente a la programación en MQL5. Aunque en él también procuraré que sea fácil de entender. Si no comprendes estos dos últimos artículos, con toda seguridad tendrás grandes dificultades para entender el siguiente. El motivo es simple: los contenidos se van acumulando. Cuantas más cosas haya que hacer, más cosas será necesario crear y comprender para alcanzar el objetivo.
preview
Redes generativas antagónicas (GAN) para datos sintéticos en modelos financieros (Parte 1): Introducción a las GAN y los datos sintéticos en modelos financieros

Redes generativas antagónicas (GAN) para datos sintéticos en modelos financieros (Parte 1): Introducción a las GAN y los datos sintéticos en modelos financieros

Este artículo presenta a los operadores bursátiles las redes generativas antagónicas (Generative Adversarial Networks, GAN) para generar datos financieros sintéticos, abordando las limitaciones de datos en el entrenamiento de modelos. Este artículo presenta a los operadores bursátiles las redes generativas antagónicas (GAN) para generar datos financieros sintéticos, abordando las limitaciones de datos en el entrenamiento de modelos.
preview
Envío de mensajes desde MQL5 a Discord: creación de un bot Discord–MetaTrader 5

Envío de mensajes desde MQL5 a Discord: creación de un bot Discord–MetaTrader 5

Al igual que Telegram, Discord es capaz de recibir información y mensajes en formato JSON utilizando sus API de comunicación. En este artículo, vamos a explorar cómo se pueden utilizar las API de Discord para enviar señales de trading y actualizaciones desde MetaTrader 5 a su comunidad de trading en Discord.
preview
DoEasy. Elementos de control (Parte 5): Objeto básico WinForms, control "Panel", parámetro AutoSize

DoEasy. Elementos de control (Parte 5): Objeto básico WinForms, control "Panel", parámetro AutoSize

En este artículo, crearemos un objeto básico para todos los objetos de la biblioteca WinForms y comenzaremos a implementar la propiedad AutoSize del objeto WinForms "Panel", es decir, el cambio automático del tamaño para que se ajuste a su contenido interno.
preview
Desarrollo de un sistema de repetición (Parte 47): Proyecto Chart Trade (VI)

Desarrollo de un sistema de repetición (Parte 47): Proyecto Chart Trade (VI)

En este artículo finalizaremos el indicador Chart Trade, haciéndolo funcional hasta el punto de poder usarlo junto con algún Expert Advisor. Entonces, en este artículo finalizaremos el indicador Chart Trade, haciéndolo funcional hasta el punto de poder usarlo junto con algún Expert Advisor. Esto nos permitirá acceder y trabajar con el indicador, como si estuviera realmente vinculado al Expert Advisor. Pero lo haremos de una manera mucho más interesante que en el pasado.
preview
Superar los retos de integración de ONNX

Superar los retos de integración de ONNX

ONNX es una gran herramienta para la integración de código complejo de IA entre diferentes plataformas, es una gran herramienta que viene con algunos desafíos que uno debe abordar para obtener el máximo provecho de ella, En este artículo se discuten los problemas comunes que podría enfrentar y cómo mitigarlos.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 4): Analytics Forecaster EA

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 4): Analytics Forecaster EA

Estamos pasando de simplemente ver las métricas analizadas en gráficos a una perspectiva más amplia que incluye la integración de Telegram. Esta mejora permite que los resultados importantes se envíen directamente a tu dispositivo móvil a través de la aplicación Telegram. Acompáñenos en este viaje que exploraremos juntos en este artículo.
preview
Redes neuronales en el trading: Modelo adaptativo multiagente (Final)

Redes neuronales en el trading: Modelo adaptativo multiagente (Final)

En el artículo anterior, nos familiarizamos con el framework MASA, un framework adaptativo multiagente que combina enfoques de aprendizaje por refuerzo y estrategias adaptativas para ofrecer un equilibrio armonioso entre rentabilidad y riesgo en condiciones de mercado turbulentas. Asimismo, construimos la funcionalidad de los agentes individuales de este framework. En este artículo continuaremos el trabajo empezado, llevándolo a su conclusión lógica.