Trading Algorítmico MQL5
31.2K 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
El siguiente código permite obtener datos de la última operación cerrada sin necesidad de utilizar bucles. Se sugiere definir una variable que establezca la hora de inicio del día actual, aunque no es un paso obligatorio. Asimismo, se pueden crear variables adicionales para imprimir gráficos y reutilizarlas en otros segmentos del código si es necesario. Al integrar este código dentro de la función OnTick(), el sistema proporcionará resultados en cada tick. Además, es posible configurar para obtener resultados una vez por barra. Para acceder a todo el historial de operaciones desde el inicio de la cuenta, se recomienda utilizar la función HistorySelect(). Esta función es eficaz para realizar selecciones en el historial de operaciones de forma precisa.

👉 Léelo | VPS | @mql5es
5👍1👌1
Descubra cómo utilizar Long Short-Term Memory (LSTM), una red neuronal avanzada, para mejorar las estrategias de seguimiento de tendencias en MetaTrader 5. El artículo explora la obtención y preprocesamiento de datos, el entrenamiento de modelos en Python, y la integración en MQL5. Se utiliza LSTM para predecir tendencias futuras y mejorar la precisión en mercados volátiles, superando problemas comunes en estrategias clásicas. Destaca la evaluación de resultados mediante pruebas retrospectivas, demostrando mejoras en el rendimiento y estabilidad. Una guía práctica para desarrolladores interesados en aplicar aprendizaje automático en algoritmos de trading.

👉 Léelo | Market | @mql5es
👍762👌2
Este Asesor Experto (EA) es una modificación de una versión anterior, diseñado para facilitar la gestión de órdenes. Para usarlo, se debe añadir a cualquier símbolo y configurar las variables necesarias para Take Profit (TP), Stop Loss (SL), trailing stop, cierre, y umbral de ganancia o pérdidas. Este EA no utiliza un número mágico, por lo que puede modificar órdenes abiertas desde el móvil, ajustando SL, TP y trailing.

Entre sus funcionalidades, se incluyen cinco botones separados para gestionar órdenes. Además, permite el cierre automático de todas las órdenes si se alcanza una ganancia o pérdida específica. Por ejemplo, configurando "CLOSE IF PROFIT-xxxx" en 100.0, cerrará todas cuando las ganancias lleguen a 100$. Análogamente, "CLOSE IF LOSS-xxxx" en -70.0 cerrará órdenes al alcanzar una pérdida de 70$. Reciente actualización: se han añadido botones para cerrar órdenes de compra...

👉 Léelo | Documentación | @mql5es
5👍31👌1
El indicador en discusión agrega tres líneas al gráfico. Su función principal es detectar el periodo actual y permitir la comparación con otros dos periodos definidos por el usuario. La dirección del movimiento del precio en los distintos lapsos indicará si hay confluencia. En caso de que las líneas se desvíen entre sí, se está viendo una falta de sincronía entre los plazos, lo cual podría sugerir la opción de abstenerse de operar. En contraste, operar en condiciones de confluencia es generalmente más seguro. El primer gráfico muestra una línea basada en los precios de cierre del periodo actual. Los otros dos gráficos exhiben las desviaciones respecto a los dos periodos seleccionados.

👉 Léelo | Calendario | @mql5es
👌421🏆1👀1
Explora la implementación de la regresión neta elástica en MQL5, que emplea la optimización mediante descenso de coordenadas para minimizar el sobreajuste en modelos lineales. Este enfoque fusiona las características clave de las técnicas de lazo y cresta, ajustando las influencias mediante alfa y lambda, lo que resulta crucial para el desarrollo de estrategias comerciales realistas. Aprende a manejar grandes conjuntos de predictores, eliminando el ruido innecesario y mejorando la capacidad de predicción. La técnica de validación cruzada se usa para afinar lambda, optimizando así el modelo. Ideal para diseñadores de algoritmos que buscan precisión en estrategias de trading.

👉 Léelo | CodeBase | @mql5es
👍3👌321
QuickTradeKeys 123 es un Asesor Experto diseñado para operaciones rápidas y eficientes en el mercado. Con una tecla, los usuarios pueden realizar acciones directamente desde el gráfico. Las funcionalidades incluyen: con la tecla '1' se abre una posición de compra con un lote predeterminado; la tecla '2' permite abrir una posición de venta; mientras la tecla '3' cierra todas las posiciones abiertas usando el número mágico predefinido. Este EA es adecuado para traders principiantes y avanzados, ofreciendo un control inmediato del teclado.

Es compatible con todos los pares de divisas y marcos de tiempo. Para un rendimiento óptimo, se sugiere un spread bajo y un acceso fluido al mercado. La instalación requiere arrastrar el EA al gráfico y activar el comercio automatizado en la plataforma. Configure el número mágico según sea necesario. Recomienda su uso en cuentas demo antes de operar ...

👉 Léelo | Freelance | @mql5es
👍42
Es posible modificar y añadir filtros para personalizar la estrategia a sus necesidades específicas. La base de la estrategia consiste en comprar o cubrir cuando el precio supera el máximo de n barras y vender o abrir cortos cuando el precio cae por debajo del mínimo de n barras. Se ha realizado un backtesting en USDJPY durante el período 2013-2023. La optimización de parámetros puede ayudar a mejorar los resultados. Es importante examinar los resultados del script para determinar su efectividad y áreas de mejora. Las pruebas continuas y la evaluación crítica son clave para desarrollar estrategias más robustas.

👉 Léelo | Freelance | @mql5es
👍4
Descubre cómo la técnica Heikin Ashi puede mejorar tu estrategia de trading al suavizar las fluctuaciones del mercado y clarificar tendencias. Desarrollado en MQL5, este enfoque analiza velas japonesas modificadas para minimizar el ruido y enfocarse en movimientos de precios promedios. Con confirmaciones por RSI y riguroso control de tendencias, se asegura la fiabilidad de las señales. Ideal para traders interesados en posiciones bien fundamentadas. Las pruebas retrospectivas y en tiempo real demuestran su efectividad, mostrando precisiones elevadas en diversas condiciones de mercado. Experimenta su potencial combinándolo con otras estrategias en entornos controlados.

👉 Léelo | Cotizaciones | @mql5es
4🏆2
La conversión de cambios en niveles de precios a cambios de ángulos sigue siendo un tema complejo en los foros técnicos. Se debe a la falta de un significado interpretable de dichos cálculos en el mundo real. Hemos abordado el problema reemplazando el tiempo en el eje x, encontrando que las coordenadas polares proporcionan una forma más precisa de representar las variaciones de precios.

Implementar este enfoque en MQL5 requiere el uso de funciones trigonométricas para convertir precios de apertura y cierre en ángulos significativos. Este método, combinado con modelado de datos en Python, ofrece indicadores de trading más robustos comparado con métodos tradicionales. La aplicación de trading resultante no solo mejora la precisión, sino que también proporciona un marco para futuras investigaciones.

👉 Léelo | Señales | @mql5es
👍21
Implementación de lógica de conteo y espera en programación.

Para establecer un contador en su código, primero se necesita crear una variable para definir el límite deseado. Esto puede usarse como un parámetro de entrada para facilitar la optimización. Seguidamente, otra variable almacenará el progreso del conteo. Una vez que el contador alcance el límite, se procede al siguiente bloque de código y el contador se restablece para evitar ciclos infinitos. Se pueden establecer condiciones específicas para el conteo.

Otro método útil es combinar el conteo con periodos de espera. Este enfoque requiere variables adicionales para gestionar tanto los límites de conteo como de espera. Una vez cumplido el ciclo de conteo, el código avanza, y posteriormente, tras cumplir el ciclo de espera, se aguarda antes de continuar.

Finalmente, eliminando el bloque de espera, se puede modificar el código...

👉 Léelo | Market | @mql5es
👍2
La librería proporciona métodos públicos esenciales para gestionar rejillas en el contexto de programación. MaxDD, que denota "máxima reducción permitida", es un parámetro que se encuentra desactivado por defecto. Puede ser activado mediante el método Set, estableciendo su valor como un porcentaje del balance. El método Start tiene la función de iniciar una nueva rejilla, siempre que no se esté ejecutando una previamente. Por otro lado, Update es responsable de verificar nuevas entradas y posibles salidas. Este enfoque es ilustrado a través de un código de ejemplo de un asesor experto (EA) que opera basado en el Objeto GridManager.

👉 Léelo | Guía de algotrading | @mql5es
👍31
Considerando el crecimiento de un proyecto de Panel de administración ya con varios paneles integrados, es crítico implementar estrategias adecuadas para mantenerlo eficiente. La organización del código es esencial en este proceso, ya que aporta claridad y sostenibilidad al desarrollo de algoritmos en MQL5. Una buena estructura y documentación del código facilitan su mantenimiento y su posible expansión.

Para optimizar la legibilidad, claridad en nombres de variables y comentarios son imprescindibles. La modularidad y uso de bibliotecas integradas son claves para la mantenibilidad. En términos de escalabilidad, algoritmos eficientes y procesamiento paralelo son vitales. Este enfoque permite manejar mejor grandes volúmenes de datos y soporta el crecimiento sin necesidad de modificaciones sustanciales.

👉 Léelo | VPS | @mql5es
9👍4
La optimización del código para detectar nuevas barras es esencial para mejorar el rendimiento y la eficiencia. En lugar de utilizar el método del tiempo, el conteo de barras ofrece una alternativa más ligera y rápida. Para implementar este enfoque, es fundamental declarar variables de tipo entero para manejar el conteo. Inicialmente se debe asignar el conteo de barras a la variable "BarsTotal_OnInt" durante el proceso de inicialización.

Posteriormente, la función iBars() se utiliza para asignar el número actual de barras a la variable "BarsTotal_OnTick", que se actualiza continuamente en cada tick. Para garantizar que el código funcione correctamente, es recomendable integrar comentarios claros y utilizar alertas que validen la exactitud de los resultados y aseguren el correcto seguimiento de los datos en tiempo real del gráfico.

👉 Léelo | Documentación | @mql5es
👍311
Script diseñado para análisis de velas. Recupera precios de apertura, cierre, máximo y mínimo de velas del instrumento financiero en ejecución. Clasificación de velas en alcistas, bajistas o neutrales según relación de cierre y apertura. Calcula amplitud de cada vela y las medias para alcistas y bajistas. Identifica las 5 velas más significativas por amplitud. Genera informe con número de velas por categoría, amplitudes medias y velas significativas. El informe se muestra como comentario en el gráfico del instrumento, facilitando la visualización del análisis. Herramienta útil para operadores, contribuyendo a decisiones de trading informadas sobre niveles de Take Profit o Stop Loss.

👉 Léelo | Cotizaciones | @mql5es
👍41
El artículo profundiza en el uso de Python para procesar datos del cliente MetaTrader 5, resumiendo el proceso de extracción, conversión y análisis de datos de tendencias. Se destaca la elección de Python por su extensas bibliotecas que aceleran el desarrollo de aplicaciones para trading algorítmico. Enfocándose en cómo seleccionar bibliotecas como pytrendseries, se aborda la integración de datos de MT5, transformándolos en formatos manejables con pandas. Se proporcionan pasos detallados para etiquetar tendencias en datos de serie temporal y se exploran funciones para detectar y visualizar tendencias, brindando herramientas efectivas para traders y desarrolladores interesados en análisis de datos automatizado.

👉 Léelo | CodeBase | @mql5es
6👍2🏆2
Este indicador ofrece una evaluación del movimiento direccional dentro de un período específico. Comparte similitudes con los gráficos renko, pero abarca movimientos en ambas direcciones. Su funcionalidad permite identificar de manera efectiva las zonas de consolidación. Esta característica resulta útil al aplicar estrategias de ruptura. Su implementación en análisis técnico puede optimizar la detección de patrones de comportamiento del mercado. La representación precisa de tendencias direccionales proporciona un marco más estructurado para la toma de decisiones fundamentadas. Considerar esta herramienta puede mejorar la estrategia analítica al abordar con precisión las señales de consolidación y ruptura.

👉 Léelo | Freelance | @mql5es
42
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