Trading Algorítmico MQL5
31.1K subscribers
1.25K photos
1.25K 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
Este es un indicador zigzag estándar modificado para incluir una funcionalidad de marco de tiempo múltiple. Permite visualizar el zigzag de un marco de tiempo superior en gráficos de marcos de tiempo inferiores. La versión actual, v1.01, ofrece la conveniencia adicional de procesar el marco de tiempo actual para construir el zigzag en modo de un solo marco de tiempo. Esta configuración se activa cuando el usuario selecciona "actual" en la entrada de marco de tiempo. El enfoque principal es la flexibilidad en el análisis técnico al mantener las características esperadas del zigzag tradicional en diversos marcos de tiempo sin complicaciones adicionales innecesarias.

👉 Léelo | Calendario | @mql5es
4👨‍💻1
El artículo explora el uso de algoritmos de aprendizaje por refuerzo con variables latentes en el contexto del trading automatizado, específicamente en MetaTrader 5. Destaca cómo estas variables pueden aumentar la capacidad de exploración del Agente en entornos parcialmente observados al permitir un modelado más sofisticado de la incertidumbre. Se introducen algoritmos como el Stochastic Marginal Actor-Critic (SMAC), que optimiza la política de exploración usando estas variables. En la implementación práctica con MQL5, se discuten cambios en la arquitectura del modelo, incluida la incorporación de nodos estocásticos, para mejorar su rendimiento. Este enfoque potencialmente transforma cómo los Agentes toman decisiones bajo incertidumbre y mejora la eficacia del trading automatizado.

👉 Léelo | CodeBase | @mql5es
6👍32
El Probador de estrategias de indicadores presenta una limitación significativa al permitir solo una simulación visual de backtest para un único indicador. La solución eficaz es desarrollar un sistema que permita cargar indicadores y utilizar el probador de estrategias de asesor experto con modo visual. Esta modalidad permite probar hasta cuatro indicadores simultáneamente, evaluando cómo un indicador influye sobre otro dentro de una estrategia.

La selección permite observar visualmente el desempeño de la estrategia en tiempo real. Se incluyen cuatro indicadores nativos como configuraciones predeterminadas, con rutas automáticamente reconocidas por el sistema. Además, existe la posibilidad de probar indicadores personalizados y adaptar trayectorias según las necesidades específicas.

👉 Léelo | Foro | @mql5es
👍21
Análisis de la teoría de categorías para clasificar datos discretos. Destacando el uso de algoritmos comerciales, especialmente en trailing stops y señales de entrada. Aplicación del wizard MQL5 en el IDE para compilar código fuente común para obtener un sistema comprobable. El artículo examina los cuadrados de naturalidad en transformaciones naturales en diagramas conmutativos. Ejemplificación con pares de divisas para transacciones de arbitraje y su clasificación. Implementación de inducción al permitir predicciones a partir de varios cuadros. Uso de bosques de decisión aleatorios para mejorar la predicción. Codificación en MQL5 para implementar clasificación mediante cuadrados de naturalidad en inducción. Comparación con métodos tradicionales e importancia del aprendizaje continuo en MQL5 IDE.

👉 Léelo | VPS | @mql5es
63👍3
El patrón de velas de contraataque, conocido por su utilidad en el análisis técnico, se presenta como una señal potencial de inversión de tendencia en los gráficos de acciones o divisas. Este patrón generalmente ocurre en tendencias bien establecidas, ya sean alcistas o bajistas. Se caracteriza por la aparición de dos velas donde la segunda vela se abre con una brecha en la dirección de la tendencia anterior, pero cierra al mismo nivel que la primera vela, señalando una posible reversión. Los operadores experimentados suelen identificar este patrón para tomar decisiones estratégicas en función de las condiciones del mercado. La correcta identificación del mismo requiere un análisis detallado del contexto para garantizar su eficacia en la estrategia de trading.

👉 Léelo | Documentación | @mql5es
7👨‍💻3👍21
La vela dominante es un patrón que consta de dos velas en las que las mechas se cruzan y los cuerpos presentan un hueco hacia arriba, hacia abajo o son del mismo tamaño. Es comúnmente empleada para confirmar una tendencia tras un período de consolidación. Esta formación proporciona información valiosa sobre el mercado, permitiendo a los analistas y operadores técnicos determinar la continuación o reversión de una tendencia existente en el gráfico de precios. Su correcta identificación y análisis puede ser una herramienta crucial para la toma de decisiones estratégicas en operaciones de trading. Interpretar adecuadamente este patrón es vital para la precisión del análisis técnico.

👉 Léelo | Documentación | @mql5es
5👍41
Explorando avances en el manejo de registros para MetaTrader 5, este artículo detalla la evolución hacia un sistema robusto y flexible, más allá de las limitaciones estándar. Usando el patrón Singleton, se integran técnicas de rotación y almacenamiento en caché que optimizan el manejo de grandes volúmenes de datos en el registro de expertos. Con implementación de la clase CIntervalWatcher, los registros ahora se administran eficientemente, controlando el ciclo de escritura con intervalos definidos. Esta metodología no solo mejora el rendimiento, sino que asegura una gestión clara y organizada de los logs, esencial para desarrollos dinámicos en MQL5.

👉 Léelo | Foro | @mql5es
4👍1
El Histograma MACD es un componente clave del análisis técnico en gráficos financieros. Funciona mostrando la diferencia entre la línea MACD y la línea de Señal, lo que permite visualizar el impulso de una tendencia. Las barras crecientes por encima de la línea cero indican un refuerzo en el impulso comprador, mientras que las barras que crecen debajo de ella fortalecen el impulso vendedor. Si las barras se acortan, el impulso se debilita, sugiriendo un posible cambio de tendencia o consolidación del mercado. Un cruce de barras por la línea cero señala un cruce entre la línea MACD y de Señal. A pesar de su utilidad, se recomienda emplear el histograma junto con otros indicadores y análisis para un entendimiento más completo del mercado.

👉 Léelo | Señales | @mql5es
1
Un Asesor Experto presenta la capacidad de gestionar órdenes mediante una cuadrícula configurada. Permite la colocación adicional de órdenes, con o sin incremento de lote según las preferencias definidas. El sistema permite ajustar la colocación de la cuadrícula basándose en indicadores RSI y CCI, integrándolos en el proceso decisional. Las posiciones se cierran al alcanzar un beneficio preestablecido, con la opción de incluir la inversión de Media Móvil (MA). Es factible cerrar posiciones de Venta o Compra de manera individual, además de cerrar la serie completa. El Asesor también es capaz de operar basado en señales de forma automática. Se agradece cualquier reporte de errores o sugerencias para optimizar el código existente.

👉 Léelo | Señales | @mql5es
1
En sistemas comerciales, manejar órdenes es crucial. En MetaTrader 5 con MQL5, las órdenes se clasifican en mercado o pendientes. Las órdenes de mercado se ejecutan al precio actual, mientras que las pendientes se activan a un precio futuro. OrdenSend() es clave para automatizar la ejecución de órdenes; define parámetros a través de MqlTradeRequest y MqlTradeResult. MqlTradeRequest especifica detalles como símbolo, volumen y tipo de orden. MqlTradeResult indica el éxito o error tras la ejecución. Un sistema simple podría implicar cruces de medias móviles. Alternativamente, la clase CTrade en MQL5 proporciona métodos predefinidos para gestión de órdenes.

👉 Léelo | Cotizaciones | @mql5es
5👌2
La compresión de las Bandas de Bollinger es una herramienta clave en el análisis técnico, señalando una reducción en la volatilidad del mercado. Este fenómeno indica que las bandas superior e inferior se aproximan, sugiriendo una fase de consolidación. La compresión alerta sobre un movimiento de precio significativo que se avecina.

El indicador de las Bandas de Bollinger consiste en tres componentes: una banda media con la Media Móvil Simple (SMA) de 20 periodos, y bandas superior e inferior calculadas mediante la desviación estándar. Cuando estas bandas se comprimen, visualizan un mercado en calma con una volatilidad mínima y equilibrio entre la compra y venta.

Este fenómeno es crucial, ya que tras la expansión de las bandas después de la compresión, se anticipa el fin de la consolidación y el inicio de una fuerte tendencia. Sin embargo, el squeeze no determina la dirección del mo...

👉 Léelo | Foro | @mql5es
6👍1🏆1
Presentamos una función para convertir horas del servidor a través de distintas zonas horarias de brokers. Esta utilidad es esencial al trabajar con datos de barras, ticks o eventos de calendario económico, permitiendo ajustar entre horarios estándar, como los de EE.UU. y la UE, o sin horario de verano. El script mencionado ayuda a identificar correctamente si estamos en período DST o no.

La función utiliza la notación de offset estándar de los lenguajes de programación: zonas horarias positivas como GMT+3 se traducen en desfases positivos (+10800) y las negativas en desfases negativos. A diferencia de MQL5, que usa una convención inversa en TimeGMTOffset().

Para más herramientas, se sugiere consultar la biblioteca completa TimeZoneInfo.mqh.

👉 Léelo | Market | @mql5es
3👍2
La creación de estrategias en MQL5 para traders puede presentar complejidades que los principiantes pasan por alto. Errores comunes incluyen el sobreajuste de parámetros y el mal uso de modelos de IA. Vendedores poco confiables en el mercado MQL5 suelen promover EA ineficaces, por lo que es necesario verificar detalles técnicos, como la presencia de archivos ONNX.

El sobreajuste es un error crítico en la modelización donde una estrategia parece efectiva en pruebas históricas pero falla en condiciones reales. La optimización excesiva en MetaTrader 5 puede dar lugar a resultados poco fiables. Para evitarlo, es crucial utilizar datos más amplios, limitar el número de parámetros ajustables y considerar costos de operación como comisiones y spreads.

Probar fuera de muestra es esencial para determinar la robustez de la estrategia. Un enfoque estructurado y analítico beneficia un desarro...

👉 Léelo | Documentación | @mql5es
5👍1
Explora el fascinante mundo de MQL5 creando tu propio indicador personalizado desde cero. Descubre cómo trabajar desde la lógica básica hasta la implementación total, sin depender de funciones predefinidas. Aprende a diseñar una media móvil en forma de línea y otra en estilo de vela, capturando tendencias con precisión. Domina el uso de buffers para almacenar y mostrar datos calculados, y personaliza cada aspecto visualmente. Con un enfoque práctico y detallado, incluso los principiantes podrán construir herramientas de análisis a medida, perfeccionando sus habilidades y optimizando sus estrategias comerciales. Atrévete a innovar desde lo esencial hasta lo avanzado en MetaTrader 5.

👉 Léelo | Foro | @mql5es
22
El código mencionado operará adecuadamente con o sin el uso de un Stop Loss. Para su implementación, es fundamental incluir "Trade.mqh" para acceder a la clase CTrade, que facilita el manejo de posiciones y órdenes. Se recomienda configurar un parámetro de entrada para ajustar la distancia de arrastre según las preferencias, aunque no es obligatorio. Se debe definir una instancia de la clase CTrade, eligiendo el nombre que se prefiera, idealmente tras el manejador de eventos OnInit.

Es necesario incorporar una sentencia if para verificar si alguna posición está activa, llamando a la función Check_TrailingStop() con cada tick. Esto asegura que el EA rastree eficientemente las posiciones. La declaración debe colocarse al principio del controlador de eventos OnTick para un funcionamiento óptimo. Además, se debe declarar una función personalizada, como Check_TrailingStop(), para gestiona...

👉 Léelo | Guía de algotrading | @mql5es
21
El código proporcionado se utiliza para detectar la llegada de una nueva barra o vela en un gráfico temporal. El procedimiento comienza almacenando el tiempo de la barra o vela anterior. Después, se incrementan 60 segundos a este tiempo para calcular el tiempo de cierre de la vela actual. Cuando el tiempo actual coincide con este tiempo de cierre calculado, se confirma la recepción de una nueva barra, indicando que la barra actual se ha cerrado.

El uso de una bandera booleana, llamada 'NewBarRecived', es crucial para prevenir la ejecución múltiple del bloque de código, asegurando que se ejecuta solo una vez por cada barra. Opcionalmente, se incluyen funciones como `comentario()` y `playsound("ok.wav")` para verificar la precisión del código. Se reactiva la bandera a false cuando el tiempo actual supera el cierre de la vela actual, preparando el código para la siguiente barra. Los co...

👉 Léelo | Calendario | @mql5es
2👍1
Durante la volatilidad del mercado en 2020, los operadores utilizaron herramientas técnicas para evaluar posibles recuperaciones. Las zonas horarias de Fibonacci identificaron puntos de inflexión basados en el comportamiento del precio histórico. Aunque sigue existiendo debate sobre su eficacia, estas herramientas ofrecieron un marco útil en medio de la incertidumbre y estímulo económico.

En la serie anterior, se analizó una estrategia basada en VWAP, indicando compra por encima y venta por debajo de los niveles de VWAP. Sin embargo, el uso exclusivo de VWAP es problemático en condiciones extremas. Al combinar VWAP con retrocesos de Fibonacci, se mejoran las decisiones de trading, identificando soportes y resistencias potenciales. TrendMap integra MQL5 con un servidor Python procesando estos datos para generar señales. Se busca aumentar la robustez de las estrategias de trading media...

👉 Léelo | Freelance | @mql5es
5👍1👌1
La media logarítmica es una función matemática que relaciona dos números no negativos, calculada como su diferencia dividida por el logaritmo natural de su cociente. Este concepto es frecuentemente aplicado en problemas de ingeniería, específicamente en áreas de transferencia de calor y masa. Su utilidad radica en proporcionar una medida comparativa útil cuando los valores se multiplican o dividen entre sí, permitiendo modelar y analizar fenómenos físicos de manera efectiva. Este cálculo es esencial para los profesionales que manejan modelos matemáticos precisos y requieren soluciones efectivas para optimizar procesos térmicos y de transferencia de masa en sistemas complejos.

👉 Léelo | Foro | @mql5es
👍1
El rango medio diario (ADR) y el rango verdadero medio (ATR) son indicadores de volatilidad que ayudan en el análisis técnico. Ambos se centran en la variación de precios, pero difieren en su cálculo y aplicación.

El ADR mide la amplitud de las fluctuaciones de precios para un periodo determinado, calculando la media de las diferencias entre los precios máximo y mínimo diarios. Es útil para prever la volatilidad en un día de negociación específico y ayuda a planificar estrategias de trading.

En contraste, el ATR ofrece un enfoque más completo y preciso, considerando no solo las variaciones entre el máximo y mínimo del día actual, sino también las diferencias con el cierre del día anterior. Esto hace que el ATR sea valioso para medir la volatilidad sin un marco de tiempo fijo y se emplea en el manejo de riesgos y stop-loss.

Ambos se utilizan en el mercado, pero el ATR es preferido p...

👉 Léelo | Foro | @mql5es
👍21
Los desarrolladores con experiencia en MetaTrader 5 ya habrán considerado la necesidad de optimizar la legibilidad del código. Hacer código legible no es tanto por la máquina, sino para otros desarrolladores. MQL5, al derivar de C/C++, ofrece oportunidades para mejorar la comprensión utilizando directivas como #define.

La creación del archivo Defines.mqh ilustra cómo reemplazar simbologías por definiciones más comprensibles. Organizar el código y su estructura de directorios facilita su manejo y distribución. En el contexto de sistemas de trading, funciones como DispatchMessage ofrecen interfaces modulares para interactuar con eventos en tiempo real.

Resaltando la función DispatchMessage, su manejo de mensajes dentro de la clase C_Mouse destaca cómo modularizar y estructurar mensajes complejos. Esta técnica optimiza la adaptabilidad y comprensión del código. Mantener un código limpi...

👉 Léelo | Documentación | @mql5es
2👍2🏆1
La media armónica es una herramienta matemática utilizada en el análisis de datos, particularmente útil cuando se trabaja con tasas o proporciones. Se calcula dividiendo el número total de observaciones por la suma de los recíprocos de cada valor en una serie de datos. Este método proporciona una forma más precisa de media cuando se tienen datos que son recíprocos por naturaleza, como velocidades o ratios.

En contraposición a la media aritmética, que puede verse influenciada por valores atípicos, la media armónica es menos susceptible a estas distorsiones, lo que la convierte en un valor de referencia importante en ciertos contextos. Su aplicación en campos como la estadística y la informática es esencial para realizar análisis precisos y obtener resultados más representativos de un conjunto de datos.

👉 Léelo | Freelance | @mql5es
👍321