Trading Algorítmico MQL5
25.7K subscribers
874 photos
874 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 artículo diserta sobre la importancia de entender a fondo los comandos básicos de programación en MQL5, destacando el comando FOR. Aunque básico, el FOR se prefiere por su claridad al incorporar pasos de control del bucle en su declaración. Esto lo hace más legible que WHILE y DO WHILE, que distribuyen el control del flujo en varias partes. Aprender su correcto uso y diferencias es esencial para enfrentar cualquier problema de programación. La comprensión de estas estructuras básicas permite a los desarrolladores adaptarse a desafíos complejos con mayor facilidad y efectividad.

Leer más...
👍8👌2👀1
El contenido proporciona una exposición didáctica de las reglas de precedencia en la programación en MQL5. Se aclara que, aunque los primeros códigos creados puedan parecer simples, imparten una comprensión básica que permite comenzar a estructurar scripts. Se introduce el tema de los operadores, explicando la importancia de las reglas de precedencia y cómo su correcta aplicación puede evitar resultados inesperados.

La representación en una tabla de operadores ofrece una guía visual para entender el orden de sus aplicaciones, siendo los operadores de referenciación prioritarios. El artículo destaca la importancia de la claridad en la escritura del código, usando paréntesis para mejorar la legibilidad y prevenir errores, especialmente en casos como el operador ternario o ejemplos complejos donde la precedencia es crítica.

Finalmente, se subraya que un buen programador debe prever el ...

Leer más...
👍1442👌1
La programación es técnica y requiere precisión. Factorizaciones erróneas pueden causar resultados inesperados en el código. Es crucial entender la declaración de variables y constantes. Hoy, se aborda el uso de matrices y cadenas en lenguajes tipados y no tipados. En lenguajes como C y C++, las matrices y cadenas pueden tener manejos complejos. MQL5 se sitúa en un punto intermedio, facilitando el aprendizaje aunque ciertas manipulaciones requieran conocimientos sólidos.

En MQL5, una cadena es una matriz con un final específico. Este lenguaje facilita algunas operaciones que en C/C++ serían más complicadas. El uso de operadores en cadenas, aunque parece simple, exige precaución. La comprensión profunda de estos conceptos permite expandir las posibilidades más allá de la biblioteca estándar de MQL5. A través del formateo de cadenas, se pueden cumplir criterios específicos, esencial pa...

Leer más...
👍63👌1
La programación en MQL5 ofrece diversas oportunidades para personalizar formatos de salida, aunque su biblioteca estándar sea muy completa. Si necesitas visualizar valores binarios en MetaTrader 5, y la funcionalidad no existe por defecto, debes desarrollar una solución propia. Usando un bucle y entendiendo bien los operadores y variables, puedes crear un formato binario personalizado. La clave es manipular cadenas de texto con funciones existentes y aplicar el razonamiento lógico para resolver problemas. Al explorar el uso de operadores de desplazamiento, podrás optimizar tus programas en MQL5, entendiendo su uso en la manipulación de bits y aumentando la eficacia de tus funciones.

Leer más...
👍72👌1
El contenido tiene un propósito educativo y no debe considerarse una aplicación final. En el artículo anterior, se mostraron soluciones sencillas aplicables por principiantes utilizando conocimientos básicos y creatividad. A pesar de funcionar, ciertas manipulaciones de texto pueden parecer complicadas para los nuevos en programación. La clave es entender cómo se traduce información para que el ordenador la entienda y para que los resultados sean comprensibles para los humanos.

Al inicio, los procesadores usaban BCD para entender números decimales, pero se pasó a cálculos binarios, dejando la traducción a los programadores. Este principio condujo a la creación de bibliotecas para conversión entre bases numéricas. MQL5, por ejemplo, permite crear pequeñas bibliotecas didácticas para entender estas transformaciones. La implementación manual de estas traducciones ayuda en el aprendizaje...

Leer más...
👍7👌1
El texto presenta conceptos avanzados de programación, centrados en el manejo de matrices y cadenas, y su aplicación práctica en la generación de contraseñas. Se aborda la conversión entre formatos numéricos y la importancia de las decisiones de diseño en la implementación de algoritmos. También se destaca la optimización de código a través de la declaración de variables en bucles, y se explora el uso de operadores ternarios para ajustes de índices en matrices. El objetivo es permitir la comprensión de conceptos subyacentes que podrán ser aplicados en futuros problemas de programación, promoviendo un enfoque analítico para resolver desafíos en la codificación.

Leer más...
👍8👌1
Explora la aplicación de las Bandas de Bollinger en el trading algorítmico en MetaTrader 5. Este artículo detalla cómo implementar estrategias utilizando IA y análisis discriminante lineal en MQL5. En un experimento, se entrenaron dos modelos de IA: uno para predecir directamente los precios y otro para pronosticar transiciones entre zonas definidas por las Bandas de Bollinger. Los resultados revelan que predecir precios directamente es más efectivo. Además, el artículo muestra análisis de datos y visualizaciones prácticas para traders, apoyados por la biblioteca scikit-learn. Descubre cómo estas técnicas avanzadas pueden optimizar tus decisiones de trading y desarrollo.

Leer más...
👍8👌1
El pronóstico de series temporales es crucial en áreas como finanzas. Sin embargo, la "maldición de la dimensionalidad" complica el análisis de series multimensionales. Una ventana de datos pequeña puede afectar el rendimiento predictivo. Para abordar este problema, se ha desarrollado la ecuación STI. Esta convierte información espacial de variables en información temporal de la variable objetivo. El modelo STNN utiliza la ecuación STI y la arquitectura Transformer para predecir eficientemente las series temporales. Esto se logra aprovechando la capacidad del Transformador para extraer información global y mejorar la precisión de la predicción numérica. Su implementación teórica se puede realizar con herramientas como MQL5.

Leer más...
👍65👌2
El artículo explora la optimización de parámetros en redes neuronales, destacando una solución innovadora para reducir el consumo de memoria. El enfoque tradicional, Adam, consume memoria considerable al manejar momentos de primer y segundo orden. El método propuesto, Adam-mini, realiza un trabajo efectivo agrupando parámetros para aplicar tasas de aprendizaje óptimas. Esto reduce el consumo de memoria a la mitad manteniendo o incluso mejorando el rendimiento. Implementar Adam-mini en MQL5 implica cambios en la estructura de datos y uso de OpenCL, destacando la eficiencia de cálculo a través de grupos de trabajo optimizados. Es ideal para aprovechar hardware limitado y mejorar el entrenamiento en redes grandes.

Leer más...
👍6👌21
Los desarrolladores de algoritmos de negociación enfrentan el desafío de adaptarse a mercados en constante cambio. Las estrategias deben ajustarse según el comportamiento del mercado: una estrategia de reversión a la media es útil en mercados con rangos limitados, pero no cuando hay una tendencia clara. Codificar múltiples estrategias puede permitir a los usuarios elegir la más adecuada manualmente. Sin embargo, lo ideal es diseñar programas que cambien automáticamente de estrategia según las condiciones del mercado. Se necesita un método cuantitativo para medir tendencias y movimientos de reversión a la media. Esto se puede lograr mediante una matriz de transición que modele el comportamiento del mercado.

Leer más...
👍6👌5🔥1
El artículo explora cómo el comportamiento social en la naturaleza inspira algoritmos de optimización, destacando el algoritmo ASBO, que se basa en liderazgo dinámico y autoorganización. ASBO utiliza técnicas como la mutación autoadaptativa y la generación de números aleatorios a través del método Box-Muller para mejorar la exploración del espacio de soluciones. Este enfoque es relevante para la optimización de estrategias comerciales en MetaTrader 5, ofreciendo un método para adaptar dinámicamente los parámetros de búsqueda y mejorar la precisión en la toma de decisiones. La implementación incluye un enfoque detallado para evaluar y ajustar adaptaciones en tiempo de ejecución.

Leer más...
👍1052🎉2👌2
La entropía de transferencia es clave para analizar interacciones entre series temporales, cuantificando la información transferida de una a otra. Esto permite identificar direcciones de influencia causal entre procesos. Se aplica en MQL5 para series potencialmente acopladas, mejorando tareas de predicción.

La causalidad de Granger, basada en correlaciones, ayuda a identificar relaciones causales, pero tiene limitaciones y no siempre identifica mecanismos causales definitivos. Una causa no puede preceder a su efecto y contiene información única transferida al efecto.

La entropía de transferencia se basa en divergencia de Kullback-Leibler para medir la dirección de la transferencia de información. Las pruebas de significancia y el enfoque no paramétrico aseguran solidez en los resultados.

Leer más...
👍13👌1
El artículo aborda el enfoque innovador del Aprendizaje Simulado Condicionado por Objetivos (BC) para el aprendizaje por refuerzo offline, evitando la tradicional evaluación de valor de estado y acción. En su lugar, BC utiliza un modelado supervisado de trayectorias preconstruidas para mejorar la política del Agente. Se destacan preguntas críticas sobre la utilidad de trayectorias offline en la secuenciación y el aprendizaje de políticas. Presenta un marco de dos etapas que comprime información de trayectoria para entrenar políticas eficaces. Este método, sobre todo el GCPC propuesto, ofrece representaciones útiles de trayectorias, demostrando gran potencial y eficacia para decisiones con horizontes largos para traders y desarrolladores.

Leer más...
👍107👌2
El enfoque de optimización de política sujeta a restricciones en aprendizaje por refuerzo offline es prometedor. Utiliza transiciones históricas para entrenar políticas que maximizan el valor de la función. Las restricciones estabilizan la distribución de acciones del agente, asegurando la validez de estimaciones de valor. El algoritmo CFPI, presentado en "Offline Reinforcement Learning with Closed-Form Policy Improvement Operators", aborda la inestabilidad del aprendizaje por refuerzo offline usando operadores de mejora de estrategia estables, limitando el desplazamiento distribucional mediante aproximaciones lineales.

CFPI propone usar distribuciones gaussianas unitarias para modelar estrategias, mejorando de forma determinista el valor. También sugiere una mezcla de gaussianas para captar múltiples modos en datos heterogéneos, aunque esto complejiza la optimización. Propone soluci...

Leer más...
👍94🔥3👌2
La herramienta GIT sigue siendo fundamental para cualquier desarrollador que aspire a ser profesional. Aunque más fácil de usar en Windows 10 que en Windows 11, su relevancia persiste por su capacidad de documentar y gestionar cambios en código, crucial para proyectos en constante evolución.

El procedimiento básico para comenzar incluye la instalación de GIT y su configuración inicial, focalizando en cómo ajustar MetaEditor para trabajar con MQL5. Con guía sencilla, los usuarios pueden configurar sus entornos y usar la GUI para gestionar repositorios.

GIT, a través de sus estados COMMITTED, MODIFIED y STAGED, brinda un control preciso sobre el código, permitiendo reversiones y seguimiento eficaz de cambios. Es un recurso valioso para documentar experiencias y aprender de los errores en programación.

Leer más...
👍1422👌2
La continuación del artículo detalla cómo ampliar una biblioteca de gestión de posiciones EX5 existente y crear dos Asesores Expertos básicos para demostraciones prácticas. Uno de estos Asesores Expertos utilizará un panel gráfico, lo que permite importar e implementar la biblioteca EX5 en el código MQL5.

El proceso de importación de una biblioteca .EX5 en una aplicación MQL5 requiere las directivas #import después de #property en el archivo de código fuente. Es fundamental especificar la ruta y nombre del archivo correctamente para evitar errores comunes asociados con definiciones incorrectas de prototipos de función.

Actualizar una biblioteca EX5 exige seguir una secuencia específica de compilación para asegurar la integración de cambios en proyectos MQL5. Una función destacada es el Stop Loss dinámico, que es esencial en estrategias de negociación y se adapta continuamente a fl...

Leer más...
👍124👌2
Descubre cómo perfeccionar un asesor experto en MetaTrader 5 con funcionalidades avanzadas. Integra eficientemente indicadores y condiciones para optimizar algoritmos de trading. Aprende a manejar sistemas de señalización a través de medias móviles y buffers de indicadores, facilitando la automatización. Diseña outputs claros con rectángulos visuales de riesgo-recompensa, esenciales para evaluar el rendimiento de las operaciones. Mejora estrategias mediante el uso de niveles de soporte y resistencia, promoviendo puntos de salida sólidos. Adaptando técnicas innovadoras, los desarrolladores logran potenciar herramientas de trading efectivo y eficiente, convirtiendo procesos manuales en sistemas automatizados con altos estándares de personalización.

Leer más...
6🏆3👍21👌1
La gestión de riesgo en el trading es esencial para optimizar operaciones y proteger el capital. Establece límites de pérdida diaria, semanal y total, controlando el tamaño adecuado del lote según las reglas del trader. En el trading automatizado, es vital para impedir errores como la sobreexposición. Antes de programar, es necesario comprender conceptos clave como pérdidas y ganancias máximas en distintos períodos.

Crear funciones en MQL5 es crucial. Primero, calcula el lote ideal considerando el margen libre. Luego, determina el profit desde una fecha dada hasta el presente, evaluando pérdidas máximas. Cada función debe garantizar precisión y eficiencia. Implementar una gestión de riesgo completa proporciona un marco disciplinado para el éxito en los mercados financieros.

Leer más...
👌8👍5
El artículo se centra en el análisis de diferentes formatos de tasas de aprendizaje en el rendimiento de un Asesor Experto, poniendo especial atención en las tasas de aprendizaje adaptativo. Se discuten aspectos cruciales como la normalización por lotes y los algoritmos de activación, resaltando la importancia de la elección de estas configuraciones sobre el rendimiento del modelo.

El texto detalla la implementación del algoritmo de aprendizaje de gradiente adaptativo, destacando su simplicidad y eficiencia. Se introducen cambios en la estructura de clases, incluyendo matrices vectoriales para manejar gradientes y deltas adaptativos. Además, se explican formatos de tasa de aprendizaje adaptativo como el RMS-prov adaptativo, destacando su capacidad para gestionar gradientes no estacionarios y datos ruidosos.

Se proporcionan ejemplos de prueba para ilustrar la aplicación práctica de...

Leer más...
👍8👌4👨‍💻3
Un robot comercial innovador aprovecha el análisis de sentimientos en tiempo real de redes sociales para sus decisiones de trading. Con MetaTrader 5 y un motor de análisis de Python, combina finanzas cuantitativas y procesamiento del lenguaje natural. La arquitectura utiliza un modelo cliente-servidor para analizar el sentimiento en Twitter sobre instrumentos financieros y generar señales de trading. Se destacan la importancia de fuentes de datos alternativas y potenciales mejoras, como técnicas avanzadas de PNL y aprendizaje automático, para enriquecer las estrategias de trading. Un análisis detallado del bot y su código ofrecerá ideas para comerciantes e investigadores en comercio algorítmico.

Leer más...
👍93🏆3👌2👏1