Artículos sobre programación en el lenguaje 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
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
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
Creación de un sistema personalizado de detección de regímenes de mercado en MQL5 (Parte 1): Indicador

Creación de un sistema personalizado de detección de regímenes de mercado en MQL5 (Parte 1): Indicador

Este artículo detalla la creación de un sistema de detección de regímenes de mercado MQL5 utilizando métodos estadísticos como la autocorrelación y la volatilidad. Se proporciona el código para que las clases clasifiquen las condiciones de tendencia, rango y volatilidad y un indicador personalizado.
preview
Red neuronal en la práctica: Pseudo inversa (II)

Red neuronal en la práctica: Pseudo inversa (II)

Por esta razón, dado que estos artículos tienen un propósito didáctico y no están enfocados en mostrar cómo implementar una funcionalidad específica, haremos algo un poco diferente aquí. En lugar de mostrar cómo implementar la factorización para obtener la inversa de una matriz, nos centraremos en cómo factorizar la pseudo inversa. El motivo es que no tiene sentido mostrar cómo factorizar algo de forma genérica si podemos hacerlo de manera especializada. Y mejor aún, será algo que podrás entender mucho más profundamente, comprendiendo por qué las cosas son como son. Así que veamos por qué, con el tiempo, un hardware sustituye a un software.
preview
Redes neuronales: así de sencillo (Parte 69): Restricción de la política de comportamiento basada en la densidad de datos offline (SPOT)

Redes neuronales: así de sencillo (Parte 69): Restricción de la política de comportamiento basada en la densidad de datos offline (SPOT)

En el aprendizaje offline, utilizamos un conjunto de datos fijo, lo que limita la cobertura de la diversidad del entorno. Durante el proceso de aprendizaje, nuestro Agente puede generar acciones fuera de dicho conjunto. Si no hay retroalimentación del entorno, la corrección de las evaluaciones de tales acciones será cuestionable. Mantener la política del Agente dentro de la muestra de entrenamiento se convierte así en un aspecto importante para garantizar la solidez del entrenamiento. De eso hablaremos en este artículo.
preview
Algoritmos de optimización de la población: Resiliencia ante el estancamiento en los extremos locales (Parte I)

Algoritmos de optimización de la población: Resiliencia ante el estancamiento en los extremos locales (Parte I)

El presente artículo presenta un experimento único cuyo objetivo es investigar el comportamiento de los algoritmos de optimización basados en poblaciones en el contexto de su capacidad para abandonar eficientemente los mínimos locales cuando la diversidad en la población es baja y alcanzar los máximos globales. Los trabajos en este campo nos permitirán comprender mejor qué algoritmos específicos pueden continuar con éxito la búsqueda a partir de las coordenadas fijadas por el usuario como punto de partida, y qué factores influyen en su éxito en este proceso.
preview
DoEasy. Funciones de servicio (Parte 3): Patrón "Barra exterior"

DoEasy. Funciones de servicio (Parte 3): Patrón "Barra exterior"

En este artículo desarrollaremos el patrón Price Action "Barra exterior" en la biblioteca DoEasy y optimizaremos los métodos de acceso a la gestión de los patrones de precios. Además, trabajaremos en la corrección de los fallos y errores detectados durante las pruebas de la biblioteca.
preview
Redes neuronales en el trading: Un método complejo de predicción de trayectorias (Traj-LLM)

Redes neuronales en el trading: Un método complejo de predicción de trayectorias (Traj-LLM)

En este artículo, me gustaría presentarles un interesante método de predicción de trayectorias desarrollado para resolver problemas en el campo de los movimientos de vehículos autónomos. Los autores del método combinaron los mejores elementos de varias soluciones arquitectónicas.
preview
Redes neuronales en el trading: Segmentación guiada (Final)

Redes neuronales en el trading: Segmentación guiada (Final)

Continuamos el trabajo iniciado en el artículo anterior sobre la construcción del marco RefMask3D usando herramientas MQL5. Este marco está diseñado para explorar de forma exhaustiva la interacción multimodal y analizar las características de una nube de puntos, seguida de la identificación del objeto de destino partiendo de la descripción proporcionada en lenguaje natural.
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
Factorización de matrices: lo básico

Factorización de matrices: lo básico

Como el objetivo aquí es ser didáctico. Mantendré las cosas en su forma más sencilla. Es decir, implementaremos solo lo necesario: la multiplicación de matrices. Verás que esto será suficiente para simular la multiplicación de una matriz por un escalar. La gran dificultad que muchas personas tienen a la hora de implementar un código utilizando la factorización de matrices es que, a diferencia de una factorización escalar, donde en casi todos los casos el orden de los factores no altera el resultado, cuando se usan matrices, la cosa no es así.
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
Modelos polinómicos en el trading

Modelos polinómicos en el trading

Este artículo trata sobre los polinomios ortogonales. Su uso puede suponer la base de un análisis más preciso y eficaz de la información del mercado, de modo que el tráder pueda tomar decisiones más informadas.
preview
Algoritmo de optimización del billar — Billiards Optimization Algorithm (BOA)

Algoritmo de optimización del billar — Billiards Optimization Algorithm (BOA)

El método BOA, inspirado en el clásico juego del billar, modela el proceso de búsqueda de soluciones óptimas como un juego de bolas que intentan acertar en las troneras que representan los mejores resultados. En este artículo revisaremos los fundamentos del BOA, su modelo matemático y su eficacia para resolver diversos problemas de optimización.
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
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
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
Análisis del impacto del clima en las divisas de los países agrícolas usando Python

Análisis del impacto del clima en las divisas de los países agrícolas usando Python

¿Cómo se relacionan el clima y el mercado de divisas? La teoría económica clásica no ha reconocido durante mucho tiempo la influencia de estos factores en el comportamiento del mercado. Pero ahora las cosas han cambiado. Hoy intentaremos encontrar conexiones entre el estado del tiempo y la posición de las divisas agrarias en el mercado.
preview
Redes neuronales en el trading: Framework comercial híbrido con codificación predictiva (Final)

Redes neuronales en el trading: Framework comercial híbrido con codificación predictiva (Final)

Continuamos nuestro análisis del sistema comercial híbrido StockFormer, que combina codificación predictiva y algoritmos de aprendizaje por refuerzo para el análisis de series temporales financieras. El sistema se basa en tres ramas del Transformer con un mecanismo Diversified Multi-Head Attention (DMH-Attn) que permite identificar patrones complejos y relaciones entre activos. Ya nos hemos familiarizado con los aspectos teóricos del framework e implementado los mecanismos de DMH-Attn, así que hoy hablaremos sobre la arquitectura de los modelos y su entrenamiento.
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
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 4): Dimensionamiento dinámico de posiciones

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 4): Dimensionamiento dinámico de posiciones

El uso exitoso del trading algorítmico requiere un aprendizaje continuo e interdisciplinario. Sin embargo, la infinita gama de posibilidades puede consumir años de esfuerzo sin producir resultados tangibles. Para abordar esta cuestión, proponemos un marco que introduce gradualmente la complejidad, lo que permite a los operadores perfeccionar sus estrategias de forma iterativa en lugar de dedicar un tiempo indefinido a resultados inciertos.
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
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
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
Redes neuronales en el trading: Enfoque sin máscara para la predicción del movimiento de precios

Redes neuronales en el trading: Enfoque sin máscara para la predicción del movimiento de precios

En este artículo nos familiarizaremos con el método Mask-Attention-Free Transformer (MAFT) y su aplicación en el ámbito del trading. A diferencia de los Transformers tradicionales, que requieren el enmascaramiento de los datos durante el procesamiento de la secuencia, el MAFT optimiza el proceso de atención eliminando la necesidad de enmascaramiento, lo que mejora significativamente la eficiencia computacional.
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
Cambiamos a MQL5 Algo Forge (Parte 2): Trabajando con varios repositorios

Cambiamos a MQL5 Algo Forge (Parte 2): Trabajando con varios repositorios

Hoy analizaremos uno de los posibles enfoques para organizar el almacenamiento del código fuente de un proyecto en un repositorio público. Utilizando la distribución en diferentes ramas, crearemos reglas claras y cómodas para el desarrollo del proyecto.
preview
Cómo publicar código en CodeBase: Guía práctica

Cómo publicar código en CodeBase: Guía práctica

En este artículo, analizaremos el proceso de publicación de diferentes tipos de programas para el terminal en la biblioteca de código fuente MQL5 usando ejemplos reales.
preview
Simulación de mercado (Parte 12): Sockets (VI)

Simulación de mercado (Parte 12): Sockets (VI)

En este artículo, veremos cómo resolver algunos problemas y cuestiones al usar código escrito en Python dentro de otros programas. Más concretamente, mostraré un problema habitual que ocurre al usar Excel junto con MetaTrader 5, aunque para esta comunicación utilizaremos Python. Sin embargo, hay un pequeño inconveniente en esta implementación. No ocurre en todos los casos, sino solo en algunos específicos. Cuando ocurre, es necesario entender la razón. En este artículo, empezaré a explicar cómo resolverlo.
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
Algoritmo de Tribu Artificial (Artificial Tribe Algorithm, ATA)

Algoritmo de Tribu Artificial (Artificial Tribe Algorithm, ATA)

Este artículo detalla los componentes clave y las innovaciones del algoritmo de optimización ATA, un método evolutivo con un sistema de comportamiento dual único que se adapta según la situación. Usando el cruce para la exploración en profundidad y la migración para la búsqueda cuando se dan atascos en óptimos locales, el ATA combina el aprendizaje individual y el social.
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
Introducción a MQL5 (Parte 11): Guía de trabajo con indicadores incorporados en MQL5 para principiantes (II)

Introducción a MQL5 (Parte 11): Guía de trabajo con indicadores incorporados en MQL5 para principiantes (II)

Descubra cómo desarrollar un Asesor Experto (Expert Advisor, EA) en MQL5 utilizando múltiples indicadores como el RSI, la media móvil y el oscilador estocástico para detectar divergencias alcistas y bajistas ocultas. En este artículo aprenda a implementar una gestión de riesgos eficaz y a automatizar las operaciones con ejemplos detallados y código fuente totalmente comentado con fines educativos.
preview
Algoritmo de búsqueda con retroceso — Backtracking Search Algorithm (BSA)

Algoritmo de búsqueda con retroceso — Backtracking Search Algorithm (BSA)

¿Qué pasaría si un algoritmo de optimización pudiera recordar sus recorridos pasados y usar esa memoria para encontrar mejores soluciones? El BSA hace precisamente eso: equilibrar la exploración con la revisión de lo que ya ha demostrado su eficacia. En este artículo, desvelaremos los secretos del algoritmo. Una idea sencilla, parámetros mínimos y un resultado estable.
preview
Desarrollo de un sistema de repetición (Parte 50): Esto complica las cosas (II)

Desarrollo de un sistema de repetición (Parte 50): Esto complica las cosas (II)

Vamos resolver la cuestión del ID del gráfico, pero al mismo tiempo, vamos empezar a garantizar que el usuario pueda hacer uso de una plantilla personal, enfocada en analizar el activo que desea estudiar y simular. El contenido expuesto aquí tiene como objetivo, pura y simplemente, ser didáctico. En ningún caso debe considerarse como una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 9): Flujo externo

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 9): Flujo externo

Este artículo explora una nueva dimensión del análisis utilizando librerías externas diseñadas específicamente para análisis avanzados. Estas librerías, como pandas, proporcionan potentes herramientas para procesar e interpretar datos complejos, lo que permite a los operadores obtener una visión más profunda de la dinámica del mercado. Al integrar estas tecnologías, podemos salvar la brecha entre los datos brutos y las estrategias viables. Únase a nosotros para sentar las bases de este enfoque innovador y liberar el potencial de combinar la tecnología con la experiencia en el comercio.
preview
Criterios de tendencia. Final

Criterios de tendencia. Final

En este artículo veremos cómo aplicar en la práctica algunos criterios de tendencia, y también intentaremos desarrollar algunos criterios nuevos. La atención se centrará en la eficacia de la aplicación de estos criterios al análisis de datos de mercado y al trading.
preview
De novato a experto: Noticias animadas utilizando MQL5 (IX) Gestión de múltiples símbolos en un único gráfico para el trading de noticias

De novato a experto: Noticias animadas utilizando MQL5 (IX) Gestión de múltiples símbolos en un único gráfico para el trading de noticias

El trading basado en noticias suele requerir la gestión de múltiples posiciones y símbolos en muy poco tiempo debido al aumento de la volatilidad. En este artículo, abordamos los retos que plantea el trading con múltiples símbolos mediante la integración de esta función en nuestro EA «News Headline». En este artículo veremos cómo el trading algorítmico con MQL5 hace que el trading con múltiples símbolos sea más eficiente y eficaz.
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
DoEasy. Elementos de control (Parte 29): Control auxiliar "ScrollBar"

DoEasy. Elementos de control (Parte 29): Control auxiliar "ScrollBar"

En este artículo, comenzaremos a desarrollar el control auxiliar ScrollBar y sus objetos derivados: las barras de desplazamiento verticales y horizontales. ScrollBar (barra de desplazamiento) se usa para desplazar el contenido del formulario si va más allá del contenedor. Por lo general, las barras de desplazamiento se encuentran en la parte inferior y derecha del formulario. La barra horizontal en la parte inferior desplaza el contenido hacia la izquierda y hacia la derecha, mientras que la barra vertical desplaza el contenido hacia arriba y hacia abajo.