Trading Algorítmico MQL5
25.3K subscribers
853 photos
853 links
Las mejores publicaciones de la mayor comunidad de tráders algorítmicos.

Suscríbase para estar al día con las tecnologías más avanzadas y el desarrollo de programas de trading.
Download Telegram
Explora el uso avanzado de uniones y arrays en MetaTrader 5 para optimizar tus algoritmos de trading. Aprenderás cómo estas estructuras de datos se pueden implementar para manipular memoria eficientemente, abriendo puertas a soluciones más sofisticadas. El artículo presenta ejemplos claros de cómo las uniones, al igual que cadenas de caracteres, pueden ser tratadas como tipos de datos especiales, permitiendo una manipulación versatile. Además, se destaca la importancia del manejo correcto de bloques de memoria para evitar errores y mejorar el rendimiento. La práctica y el entendimiento profundo de estos conceptos son esenciales para evolucionar de un programador novato a uno experimentado.

Leer más...
👍5🏆42
Este ejemplo presenta un indicador personalizado para MetaTrader 5 diseñado para mostrar una imagen BMP en el gráfico, centrado en la pantalla. Ideal para tener una imagen estática, como un logotipo o un mensaje gráfico, directamente sobre el gráfico de trading sin interferir con el análisis ni los datos del mercado.

El indicador crea un objeto `OBJ_BITMAP_LABEL` y utiliza la imagen (2.bmp) ubicada en la carpeta MQL5\Images. Se centra automáticamente en el gráfico, actualizando su posición con cada nuevo tick para mantener la alineación incluso cuando se redimensiona la ventana.

La implementación considera aspectos como la inicialización de la imagen, el manejo de errores durante la creación del objeto gráfico, y la adaptación automática de la posición de la imagen. Facilita la visualización gráfica sin pérdida de funcionalidad en el análisis técnico.

Leer más...
3👍3🏆1
El análisis de las Bandas de Bollinger en las configuraciones 6 y 7 se centra en la expansión de la volatilidad tras tendencias bien definidas. En estos casos, se trata de detectar movimientos contrarios como señales de oportunidad para abrir posiciones opuestas, con la verificación de volumen como confirmación.

Además, se explora la desviación entre bandas, interpretando rupturas como señales alcistas o bajistas. El uso de múltiples patrones simultáneamente puede ser efectivo aunque complejo por las señales canceladas.

El Índice de Fuerza Relativa (RSI) se examina a través de patrones como niveles de sobrecompra/sobreventa y divergencias. Estas configuraciones ayudan a prever reversiones en las tendencias, aunque requieren cuidado al implementarse debido a posibles fallos en sistemas con fuerte tendencia.

Leer más...
👍73🏆1
La personalización de gráficos de velas se facilita significativamente a través del control exhaustivo sobre el color y el estilo de cada componente. Este ejemplo de código permite ajustar no solo el tono de las velas alcistas y bajistas, sino también de las mechas. Las velas alcistas se representan típicamente en verde, mientras que las bajistas aparecen en rojo o granate, con la opción de modificar estos colores según las preferencias personales o necesidades analíticas.

El código está diseñado para operar dentro del entorno del gráfico, buscando ofrecer un estilo visual claro que favorece la distinción rápida entre velas de tonos diferentes. A través de la reconfiguración de buffers y propiedades de visualización, este ejemplo ilustra cómo un simple ajuste de parámetros puede mejorar notablemente la visibilidad y claridad en el análisis gráfico. Esto es especialmente relevante par...

Leer más...
5👍31
La detección de objetos en nubes de puntos es un desafío creciente, especialmente debido a su estructura dispersa e irregular. Los métodos tradicionales basados en convoluciones no distinguen adecuadamente los puntos ruidosos o irrelevantes. El Transformer, con su mecanismo de Self-Attention, ofrece una mejor adaptación, permitiendo excluir puntos no deseados de manera adaptativa. Sin embargo, el Transformer estándar no tiene en cuenta las relaciones espaciales locales, como la dirección y distancia entre puntos.

El SEFormer surge como una combinación de lo mejor de ambos enfoques. Codifica la estructura local en función de dirección y distancia, permitiendo identificar cambios espaciales y detectar patrones de manera más precisa. La implementación del SEFormer en redes multiescala mejora la capacidad de detección en nubes de puntos, ofreciendo una descripción estructural detallada.
...

Leer más...
👍322
Descubre cómo transformar tus habilidades de trading algorítmico con el Asistente MQL5, al explorar configuraciones del SAR parabólico y distintos patrones comerciales. La serie de artículos descompone cómo este indicador, sensible a cambios de precios, puede indicar tendencias y giros potenciales con precisión. Analiza 10 patrones separados, optimizando y comparando resultados de forma independiente y en combinaciones. La implementación en MQL5 se maneja con indicadores y clases estándar, permitiendo a traders y desarrolladores crear Asesores Expertos sólidos. Este análisis proporciona insights valiosos para mejorar la toma de decisiones a través de pruebas exhaustivas en mercados con volatilidad controlada.

Leer más...
🏆31
Descubre cómo los desarrolladores de MetaTrader 5 pueden ampliar sus habilidades a un nivel más avanzado mediante el uso de recursividad en sus programas. La recursividad, una técnica estándar en programación donde funciones se llaman a sí mismas para resolver problemas complejos, ofrece una forma más intuitiva y sencilla de crear bucles en MQL5 sin recurrir a comandos tradicionales. Si bien puede parecer complicado al principio, esta técnica no solo simplifica el código sino que promueve una comprensión más profunda del control de flujo y gestión de datos en aplicaciones de trading automatizado. Este enfoque no solo es útil para mejorar la eficiencia de codificación, sino que también fortalece las bases para enfrentar futuros desafíos profesionales.

Leer más...
👍541
Descubre el revolucionario algoritmo ACMO, que emula la dinámica de las nubes para resolver complejos problemas de optimización. Inspirado en la naturaleza, este método utiliza fenómenos como la generación, movimiento y dispersión de nubes para explorar eficientemente el espacio de soluciones, evitando atascos en óptimos locales. ACMO divide el espacio de búsqueda en regiones y asigna dinámicamente nubes para encontrar soluciones óptimas. Su enfoque innovador y meticuloso ofrece a los desarrolladores herramientas avanzadas para mejorar estrategias en trading algorítmico. Con parámetros ajustables, ACMO permite un control detallado, facilitando su aplicación en diversas áreas.

Leer más...
3👍31🏆1
¿Qué es breakeven en trading? Breakeven es una técnica que permite mover el nivel de stop loss al precio de apertura una vez que el mercado ha alcanzado un cierto margen favorable. Su propósito es proteger la operación y evitar pérdidas inesperadas. Implementar breakeven se considera esencial para asegurar que una operación no termine en pérdida si no se alcanza el takeprofit, o para asegurar ganancias ajustando el stop loss por encima de la entrada.

Breakeven puede aplicarse de varias maneras, como usando un número fijo de puntos, el Average True Range (ATR) para adaptarse a la volatilidad del mercado, o basado en el Risk-Reward Ratio (RRR). Estos enfoques garantizan un manejo efectivo del riesgo en diversas condiciones de mercado.

Leer más...
13👍621
La recursividad es una técnica útil en programación, pero las definiciones permiten mayor control sobre el código. Las definiciones pueden adoptar formas diversas en un código y son útiles para macros, directivas de compilación o constantes especiales. Un uso interesante es mediante directivas #define y #undef para gestionar versiones de código. Estos enfoques no requieren memorizar, sino comprender y aplicar. Directivas como #ifdef y #ifndef actúan similar a instrucciones if en programación, permitiendo compilar partes del código según condiciones definidas. Controlar versiones de código con directivas es esencial para eficientar mantenimiento y modificaciones futuras en el desarrollo.

Leer más...
👍53
La era de los macrodatos ha introducido cientos de millones de conjuntos de datos con potencial sin igual para la previsión de mercados financieros. Sin embargo, no todos los datos alcanzan esta capacidad. Este análisis se centra en evaluar la utilidad de datos alternativos en estrategias comerciales, específicamente en el mercado XAUEUR, que rastrea el precio del oro en euros. Se analizarán índices de volatilidad del CBOE vinculados al euro y al oro. Además, se usaron modelos de aprendizaje profundo para examinar la correlación entre datos de MetaTrader 5 y CBOE, sugiriendo la posible integración de información interactiva en modelos predictivos. La visualización efectiva juega un papel crucial en la interpretación correcta de datos complejos.

Leer más...
👍53
El artículo aborda el uso avanzado de la directiva #define en MQL5 para crear macros que optimizan el código al evitar llamadas repetitivas de funciones a través de la inserción de código inline, lo que puede mejorar la eficiencia a costa de más memoria. Se destaca la importancia de trabajar cuidadosamente con macros, ya que tienen limitaciones, como no contar con control de tipos ni seguridad proporcionada por el compilador, lo que podría complicar la depuración. Aunque más cerca de un procedimiento que de una función, estas macros pueden mejorar el rendimiento en situaciones específicas, ofreciendo una alternativa sofisticada para desarrolladores en el ámbito de trading algorítmico.

Leer más...
👍6
En una reciente actualización del desarrollo de sistemas de repetición, se han realizado ajustes significativos en el código DispatchMessage para mejorar la interacción entre el indicador de mouse y Chart Trade. Aunque la causa específica del problema es incierta, se ha logrado estabilizar la interacción al modificar ciertas líneas del código, específicamente en C_ChartFloatingRAD.mqh.

Se sugiere eliminar el evento CHARTEVENT_OBJECT_CLICK y sus líneas asociadas para evitar confusiones en la comunicación entre el sistema y el usuario. Este ajuste no afecta lo discutido previamente en artículos anteriores sobre protocolos de comunicación.

Además, se ha profundizado en la planificación de protocolos, destacando la importancia de transmitir información de manera ordenada y clara, utilizando cadenas alfanuméricas y delimitadores para garantizar que el receptor comprenda los mensajes co...

Leer más...
👍114😎2
Analizar la creación de aplicaciones comerciales adaptativas es vital para enfrentar las fluctuaciones del mercado. Evaluar soluciones potenciales puede mejorar estrategias comerciales; no todas son aplicables. El objetivo es optimizar el comercio en el par NZDJPY, a través de modelos de IA.

Se obtiene y analiza una base de datos M1 extensa. El modelo SGD demostró buen desempeño, destacando el precio alto como predictor clave. Se empleó RFE, confirmando la relevancia de todos los predictores. La DNN ajustada mejoró la predicción de errores.

El apilamiento de modelos ayudó a superar sesgos y mejorar el rendimiento. El proceso incluyó ajustes de parámetros y verificaciones de sobreajuste. Exportar modelos a ONNX contribuyó a desarrollar un Asesor Experto eficiente.

Leer más...
👍832
Descubre cómo optimizar estrategias de trading con medidas alternativas al ratio de Sharpe. Este artículo presenta herramientas innovadoras para evaluar el riesgo en MetaTrader 5, incluyendo el coeficiente de Burke y los indicadores de momentos parciales. Aprende a implementar estas métricas y visualiza curvas de equidad modeladas, para obtener una evaluación más precisa del rendimiento ajustado al riesgo. La aplicación de las métricas se realiza mediante scripts en MQL5, que permiten una reproducción exacta de los experimentos. Ideal para desarrolladores y traders que buscan enfoques avanzados de análisis en sus inversiones.

Leer más...
👍123
Descubre cómo integrar de manera eficiente los indicadores de tendencia en tus asesores para MetaTrader 5. El artículo detalla cómo conectar indicadores clave como Media Móvil Adaptativa, ADX y Bandas de Bollinger en asesores. Incluye ejemplos prácticos con inicialización de variables, desinicialización y obtención de datos para facilitar el desarrollo de algoritmos de trading. Las plantillas de código están listas para copiar y usar, optimizando así el tiempo de desarrollo. Esta guía técnica es esencial para programadores que buscan mejorar sus estrategias de trading automatizado con indicadores precisos y eficaces.

Leer más...
👍7🏆2
A partir del 1 de julio de 2025, las versiones mínimas de las plataformas de trading serán:

• MetaTrader 4 — build 1440, lanzado el 21 de febrero de 2025
• MetaTrader 5 — build 4755, lanzado el 13 de diciembre de 2024

Después de esta fecha, las versiones de escritorio más antiguas no podrán conectarse a los servidores de brokers.

En los últimos meses se lanzaron tres actualizaciones para MetaTrader 5:

Build 4620 — ampliación del soporte OpenBLAS y corrección de solicitudes del historial de ticks.
Build 4730 — ampliación del soporte OpenBLAS y optimización general del funcionamiento en la versión de escritorio y web.
Build 4755 — corrección de error en el simulador de estrategias y mejoras generales.

En cada versión de MetaTrader 4 mejoramos el rendimiento de la plataforma y corregimos errores.

Descarga la última versión de la plataforma y aprovecha las nuevas funciones
👍1175🏆2🔥1👌1
Explorar el uso de inteligencia artificial para predecir el índice FTSE 100 es una innovación en el mundo comercial. Utilizando MQL5, los desarrolladores han creado un Asesor Experto que aprovecha un modelo de regresión lineal múltiple para prever precios futuros, optimizando así las decisiones de trading. La estrategia se beneficia de enfoques avanzados, como la normalización de datos y la minimización de varianza, utilizando la teoría de carteras de Harry Markowitz. Al integrar estos elementos, se mejoran las decisiones de inversión al gestionar dinámicamente el riesgo, permitiendo una evaluación inteligente y ágil del mercado financiero para maximizar el rendimiento.

Leer más...
5👍3🔥1👌1
La segmentación de objetos en escenas 3D implica desafíos complejos, como la identificación y el enmascaramiento de objetos en nubes de puntos dispersas. Existen dos enfoques principales para la segmentación: basados en suposiciones y basados en la agrupación. Los métodos de suposición tienden a ser ineficaces debido a la complejidad de las nubes de puntos y la alta variabilidad de los objetos 3D. En contraste, los métodos de agrupación se enfocan en etiquetas semánticas y desplazamiento del centro de instancia pero pueden ser ineficientes por el tiempo de procesamiento requerido.

El método SPFormer busca equilibrar estos enfoques combinando la agrupación ascendente con transformaciones para obtener instancias de escena mejor definidas. En el proceso ascendente, el uso de una 3D U-Net dispersa permite agrupar objetos potenciales en superpoints, lo que optimiza la segmentación al redu...

Leer más...
👍852🔥1
En el segundo artículo de la serie sobre Connexus, se analizará el protocolo HTTP, el funcionamiento de las URLs y se introducirán dos clases: CQueryParam y CURL. HTTP funciona sobre TCP/IP y es un protocolo sin estado, que permite transferir datos en la web. Cada solicitud y respuesta tiene una línea de solicitud, cabeceras y, a veces, un cuerpo.

Las clases CQueryParam y CURL gestionan parámetros de consulta y la construcción de URLs completas. Estas herramientas son esenciales para crear URLs complejas que interactúan efectivamente con los servidores. La clase CJson se utilizará para organizar los parámetros en formato JSON, simplificando el manejo y validación de datos.

Leer más...
3🏆3👍1