Trading Algorítmico MQL5
24.7K subscribers
805 photos
805 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 mundo de las medias móviles en MetaTrader 5, una herramienta esencial en el arsenal de cualquier programador y trader. Este artículo profundiza en diferentes tipos de medias móviles como SMA, EMA, SMMA y LWMA, desglosando sus cálculos y optimizaciones. Estas técnicas permiten a los desarrolladores crear algoritmos más eficientes y precisos para el análisis de tendencias y el suavizado del ruido de precios. Además, abordan cómo integrar estas optimizaciones para mejorar el rendimiento de los indicadores personalizados en plataformas de trading, maximizando la eficacia en la identificación de señales del mercado.

👉 Léelo | Freelance | @mql5es
63
El siguiente fragmento de código demuestra cómo identificar la cantidad de barras presentes en su gráfico. Esto será igual o menor a las restricciones establecidas mediante Herramientas/Opciones/Gráficos y Máximo de Barras en el Gráfico, dependiendo también de los datos obtenidos de su broker o importados mediante un símbolo personalizado. Se hace uso de la función iBars para lograr este objetivo. La implementación es sencilla: basta con arrastrar el script al gráfico y observar la pestaña de expertos de la Caja de Herramientas. Alternativamente, la información también se presenta en la esquina superior izquierda del gráfico gracias a una línea de comentario incluida.

👉 Léelo | Calendario | @mql5es
22👍1
Es viable representar gráficamente el volumen entrante en lugar de utilizar únicamente una barra de histograma estándar que refleje el volumen total en cada barra. Este enfoque traza la evolución del volumen tick a tick, proporcionando una evaluación en tiempo real de la presión de volumen. Cuando una barra presenta gran actividad de ticks, el histograma se expande y muestra una tendencia en aumento; en caso de volumen inferior, se observan picos más bajos. Esta representación lineal del volumen de ticks facilita la visualización del volumen acumulado por barra de forma distinta. Es especialmente útil para detectar aumentos instantáneos de volumen, monitorear cambios microestructurales del mercado, interpretar la acumulación de volumen durante la formación de una barra y reconocer situaciones de absorción o agotamiento si el volumen aumenta sin cambios significativos en el precio.

👉 Léelo | Market | @mql5es
2👍2
Descubre cómo el Análisis de Componentes de Selección Hacia Adelante (FSCA) mejora la reducción de dimensionalidad en datos de trading. A diferencia del PCA que diluye la contribución individual al tratar variables correlacionadas, FSCA selecciona iterativamente las variables que más varianza explican. Estos pasos iterativos permiten identificar características influyentes manteniendo una representación compacta sin perder información crucial. Para conjuntos de datos grandes, el refinamiento hacia atrás mejora la selección de variables, asegurando un ajuste óptimo sin comprometer la estructura del modelo. FSCA proporciona una herramienta más precisa para los desarrolladores de MetaTrader 5 interesados en una optimización eficiente de sus modelos de predicción.

👉 Léelo | Manual sobre redes neuronales | @mql5es
31
Implementar diagramas de perfil de mercado con objetos gráficos consume recursos significativos. Cada precio desde el mínimo hasta el máximo de la barra diaria se representa con objetos rectangulares. Estos can saturar el rendimiento, especialmente al aplicar el indicador en marcos de tiempo como M30.

La clase CMarketProfile aborda este problema optimizando la forma de dibujar el histograma del perfil. Se utiliza un objeto gráfico para cada día en lugar de varios. Esto aprovecha el lienzo gráfico de la clase CCanvas, reduciendo el número de objetos a crear.

Usar un enfoque basado en vectores simplifica el cálculo del impacto de las sesiones comerciales en el perfil del mercado. Los datos se fusionan cómodamente en un único conjunto.

La versión optimizada reduce dramáticamente la carga de recursos. En la configuración predeterminada, en lugar de miles de objetos gráficos, solo se cr...

👉 Léelo | VPS | @mql5es
42
El artículo disponible en el enlace proporciona una guía completa sobre los archivos y métodos pertinentes para el desarrollo de aplicaciones comerciales avanzadas, destacando las clases y scripts destinados a facilitar el manejo de la información de cuenta, transacciones, órdenes históricas, información de órdenes, posiciones, símbolos, terminal y ejecución de operaciones comerciales.

Cada archivo está diseñado para un propósito específico dentro del sistema de trading. Por ejemplo, `ComercioAccountInfo.py` maneja información sobre la cuenta, mientras que `ComercioDealInfo.py` está centrado en las operaciones. También se incluye `error_description.py`, útil para entregar descripciones claras de los errores.

Para aquellos que necesiten validar el funcionamiento de estas clases, se ofrecen varios scripts de prueba como `accountinfo_test.py` y `dealinfo_test.py`. Estos scripts permite...

👉 Léelo | Señales | @mql5es
3🎉3
Un nuevo indicador de identificación de patrones de velas envolventes se centra en facilitar el análisis técnico para traders y analistas. Este indicador reconoce patrones tanto alcistas como bajistas en el gráfico, con una opción para confirmar estos patrones mediante el análisis del volumen.

El funcionamiento es claro: el patrón se considera más sólido cuando el volumen de la vela actual supera al anterior. Esta característica opcional permite al usuario aplicar un filtro de confirmación por volumen, añadiendo un nivel de confianza adicional en las señales detectadas.

Configuraciones externas posibilitan al usuario personalizar los colores de las flechas que marcan los patrones: "BullishArrowColor" para patrones alcistas y "BearishArrowColor" para patrones bajistas. La opción "UseVolumeFilter" activa o desactiva la confirmación por volumen.

Una flecha ascendente debajo de una v...

👉 Léelo | VPS | @mql5es
2🎉211👍1
Explorando innovaciones en MetaTrader 5, descubrió un patrón consistente llamado "clústeres amarillos" que precede a cambios en tendencias de mercado. Estos clústeres, definidos por una configuración específica de volumen y volatilidad en un espacio tridimensional, han mostrado una precisión notable del 97% en prever reversiones, lo que presenta oportunidades significativas para traders. También se destaca la aplicación del análisis tensorial para mejorar modelos de predicción y la implementación de un robot de trading optimizado que demostró un rendimiento rentable. La integración de modelos VaR para gestionar tamaños de posición dinámicamente marca un avance crucial en la evolución del trading algorítmico.

👉 Léelo | Calendario | @mql5es
🎉2🏆2👀2🔥1
Explora el poder del calendario económico de MetaQuotes Language 5 (MQL5) para mejorar el trading algorítmico. Aprende a integrar eficientemente esta herramienta en tus estrategias de trading automatizadas utilizando MetaTrader 5. La información actualizada sobre eventos económicos clave y su potencial impacto en mercados te permite anticipar reacciones del mercado y ajustar estrategias de trading. Desde cómo acceder a los datos y aplicar filtros, hasta imprimir resultados directamente en el gráfico, el enfoque técnico de este artículo brinda a traders y desarrolladores habilidades para maximizar ventajas y automatizar decisiones con precisión.

👉 Léelo | Documentación | @mql5es
33👍2🎉2
Exploramos cómo superamos los desafíos de la gestión del riesgo en Fórex combinando la teoría de Markowitz con el Value at Risk (VaR). Aunque la teoría clásica no se ajusta perfectamente al mercado de divisas debido a la interconexión de los pares, unimos portafolio y VaR para optimizar asignaciones y gestionar riesgos. Implementamos un sistema robusto usando Python y MetaTrader 5, asegurando integraciones fiables y datos de calidad. Adaptamos la optimización de Markowitz y VaR para crear un sistema equilibrado, manteniendo flexibilidad y eficacia en condiciones variables de mercado. Esta innovadora solución mejora la solidez y gestión dinámica del portafolio en trading real.

👉 Léelo | Señales | @mql5es
7🏆3
Este indicador representa una versión avanzada del canal de Donchian. Los pivotes se definen mediante un patrón en zigzag y se representan gráficamente, derivados completamente del comportamiento del canal. La activación de un pivote ocurre cuando el canal se aplana, creando un punto de conexión para el próximo tramo en zigzag. Un parámetro de profundidad confirma este aplanamiento antes de registrar un nuevo pivote, evitando la inclusión de señales débiles. El enfoque simplificado de los pivotes implica un pequeño retraso, inherente a la necesidad de confirmación. La etapa "en vivo" se marca como una línea de tendencia dinámica, extendiéndose desde el último pivote confirmado hasta el precio actual, ofreciéndose hasta que se valide un nuevo pivote. Estas líneas proporcionan un ciclo adaptativo de análisis visual del canal, mejorando la interpretación sin dar señales precisas de merca...

👉 Léelo | Market | @mql5es
3👍3🎉3
La integración de la criptografía en el trading algorítmico está ganando relevancia. MQL5 ofrece funciones que permiten a los desarrolladores implementar cifrado, hash, y compresión. Estas herramientas mejoran la seguridad de los algoritmos al proteger la propiedad intelectual y asegurar la transmisión de datos.

Entre las técnicas proporcionadas por MQL5 están CryptEncode y CryptDecode. AES se destaca como método de cifrado seguro, mientras que SHA256 se prefiere para generar hashes confiables. El cifrado simétrico, aunque rápido y eficiente, requiere una gestión cuidadosa de claves. Su correcta implementación asegura que las estrategias de trading y datos confidenciales se mantengan protegidos.

En resumen, la criptografía es esencial para mantener la confidencialidad, integridad y autenticación en el contexto del trading algorítmico. Implementar estas prácticas no solo protege la...

👉 Léelo | CodeBase | @mql5es
32👍2
Cuando se trabaja con indicadores técnicos, es crucial entender cómo ajustar y configurar los parámetros para realizar un análisis adecuado del mercado. Un periodo de momentum, comúnmente de 14 velas, ayuda a suavizar la curva del momentum, aunque con cierto desfase. Al mismo tiempo, la volatilidad del mercado también se mide en un periodo de 14 velas para lograr un análisis coherente.

El factor de escala, por defecto en 100000, ajusta el cálculo para mantener la curva dentro de un rango legible. Los niveles de sobrecompra y sobreventa, establecidos comúnmente en 100.0 y -100.0 respectivamente, son esenciales para identificar posibles correcciones o recuperaciones del mercado.

La determinación de la tendencia se establece a través del signo del indicador: positivo sugiere una tendencia alcista y negativo una bajista. Ajustar la volatilidad permite una señalización más precisa al ada...

👉 Léelo | VPS | @mql5es
👀21🏆1
Este framework ofrece una estructura clara para integrar noticias económicas en el análisis técnico y backtesting de estrategias en MetaTrader 5. Está compuesto por tres componentes principales:

1. CalendarRetriever.mq5 (Script): Recupera noticias económicas pasadas y las almacena en archivos dentro de la carpeta "Común". Necesita de dos parámetros de entrada, fechas de inicio y fin, para determinar el rango temporal de las noticias a recuperar. Posteriormente, crea archivos de texto que detallan países, eventos y valores históricos de noticias.

2. CalendarFile.mq (Archivo Include): Facilita el manejo de datos de noticias dentro del asesor experto (EA). Incluye clases para escribir y leer datos de eventos, y funciones para cargar y seguir el calendario económico mediante la función OnTick.

3. NewsBacktest.mq5 (Asesor Experto): Emplea los datos almacenados para simular el impacto d...

👉 Léelo | Market | @mql5es
2👍2
La evolución hacia un enfoque orientado a objetos en MQL5 con RestAPI ha redefinido la estructura y funcionalidad del código. Al pasar de un modelo procedimental a uno basado en clases, se han desarrollado interfaces e implementaciones concretas, como IHttpRequest y HttpResponseProcessor, que permiten una mejora significativa en la organización del código. La modularidad facilita el mantenimiento, permitiendo cambios precisos sin afectar otras partes del sistema. Este sistema escalable y reutilizable mejora la eficiencia en proyectos futuros al centralizar la lógica de solicitudes HTTP en estructuras independientes, lo que optimiza tanto el proceso de depuración como la integración de nuevas funcionalidades.

👉 Léelo | Market | @mql5es
4👍2
Este contenido describe la estructura y funcionalidad de un Expert Advisor (EA) diseñado para operar en mercados financieros mediante señales técnicas basadas en medias móviles y osciladores estocásticos. Los entornos tipo Enum (enumJnsSignal, enumOrderType) definen los tipos de señales y órdenes que el sistema puede manejar. Los parámetros de entrada como `inMagicNumber`, `inLotSize` y otros, configuran las operaciones, estableciendo tamaños de lotes, distancias de capas, y periodos para indicadores.

La función `OnInit()` inicializa el EA validando parámetros y creando manejadores de indicadores. La función principal, `OnTick()`, se ejecuta con cada movimiento del precio, y llama a procesos claves como `GetSignal()` para detectar señales y `manageTrading()` para gestionar operaciones. La función `isNewCandle()` detecta la formación de nuevas velas, crucial para la búsqueda de señale...

👉 Léelo | Cotizaciones | @mql5es
👍2👏21
El indicador Trade Assistant para MetaTrader proporciona un análisis multi-marco de tiempo, utilizando los indicadores estándar oscilador estocástico, RSI y CCI. Ofrece una visión clara de la dirección de tendencia en diversos marcos temporales, desde M1 hasta MN1. Este indicador es útil para aquellos interesados en monitorizar tendencias en distintos plazos sin importar el marco de tiempo seleccionado.

Disponible para MT4 y MT5, Trade Assistant cuenta con parámetros personalizables. El indicador incluye funcionalidades para emitir alertas mediante ventanas emergentes, correo electrónico o notificaciones push cuando hay señales en confluencia. La correcta configuración de alertas es esencial para recibir las notificaciones adecuadas.

Cada parámetro del indicador, como PercentK, PercentD y RSIP1, se puede ajustar de acuerdo a las necesidades del análisis deseado, permitiendo un enfoq...

👉 Léelo | Market | @mql5es
22👍2🏆2
Descubre cómo la modularidad y la comunicación entre procesos transforman el desarrollo de aplicaciones en MetaTrader 5. La reciente actualización demuestra cómo convertir un sistema de estudio en un indicador, facilitando una integración completamente modular en tu estrategia de trading automatizado. Con herramientas como InterProcess.mqh, el intercambio de información segura entre procesos se simplifica, mejorando la flexibilidad del sistema. Se profundiza en la importancia de usar buffers y optimizar la respuesta de eventos, claves para manejar indicadores sin afectar el rendimiento del gráfico. Esta técnica ofrece un enfoque elegante para desarrollar sistemas de trading eficaces y adaptables, beneficiando a traders y programadores.

👉 Léelo | Documentación | @mql5es
3👍32
Se presenta un script técnico diseñado para mejorar la experiencia de usuario en MetaTrader 5. Entre sus características principales se encuentra una marca de agua dinámica que muestra de manera automática el símbolo actual y el marco temporal activo. Esto incluye descripciones detalladas del activo, como "EURUSD - Euro frente a dólar estadounidense". La marca de agua es totalmente visible sin interferir en el análisis técnico.

El diseño es adaptable y ajusta automáticamente el tamaño de fuente según la resolución de pantalla, manteniendo los elementos centrados incluso tras el cambio de tamaño del gráfico. Funciona en cualquier tamaño de ventana dentro del terminal MT5.

La personalización es sencilla, permitiendo ajustar el color de la marca de agua con RGBA para controlar transparencia y tono. El tamaño de fuente es configurable mediante un parámetro de entrada.

El script es lig...

👉 Léelo | CodeBase | @mql5es
👍32
La creación de indicadores con media móvil mejora la organización y portabilidad en proyectos de mayor envergadura. La implementación consiste en instanciar una media móvil calculada desde los datos antiguos a los recientes en scripts, y viceversa en serie. Esta estructura permite que el código sea fácilmente copiable y adaptable en otros proyectos.

La media móvil se computa mediante una función en OnCalculate, facilitando el proceso para principiantes. Esta metodología destaca por su simplicidad y versatilidad, aplicable a diversas funciones dentro del entorno de programación. La práctica de encapsular cálculos en funciones específicas no solo fomenta la eficiencia, sino que también promueve buenas prácticas de código.

👉 Léelo | CodeBase | @mql5es
2👍2