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
En la quinta parte del libro “Programación en MQL5 para tráders”, se profundiza en la creación de programas de aplicación en MQL5. Se estudian las API para el trading algorítmico, análisis de datos financieros, visualización en gráficos y automatización de acciones. Se comienzan con los principios generales de creación de programas MQL, tipos de eventos en el terminal, acceso a series temporales, tablas y objetos gráficos. Se analizan y practican los cinco tipos de programas disponibles en MetaTrader 5: indicadores técnicos, asesores expertos (EA), scripts, servicios y bibliotecas. Esta sección también incluye el trabajo con indicadores y gráficos, técnicas aplicables a los asesores expertos, y pospone el desarrollo de estos últimos para la siguiente parte del libro. Se abordará la automatización de órdenes, estrategias comerciales, su comprobación y optimización con datos históricos....

Leer más...
👍4
Mejorando Clases de Biblioteca

En el artículo previo se explicó cómo crear una barra de desplazamiento horizontal en un objeto cuando este excede los límites de su formulario padre. Basándonos en esto, se creará una barra de desplazamiento vertical. Esta aparecerá si el objeto sobrepasa los límites superior, inferior o ambos del formulario padre.

Aunque ya se había desarrollado esta barra, la publicación del artículo se retrasó debido a un error que causaba un parpadeo constante en los gráficos. Se solucionó eliminando la actualización prematura del objeto.

Añadir funciones y métodos útiles permitirá mejoras futuras. A veces es necesario calcular la hora de apertura de una vela cuando ocurre un evento entre la hora de apertura y cierre. Estos cálculos optimizan el tiempo de CPU.

Se modificarán los colores de los gráficos en base a situaciones específicas. Por ejemplo, un objeto gr...

Leer más...
👍2👏1
La Parte 4 del estudio sobre programación en MQL5 aborda las API comunes utilizadas en este lenguaje. En secciones anteriores, se han cubierto conceptos básicos, sintaxis y reglas. Ahora es momento de utilizar funciones integradas para realizar tareas prácticas como procesamiento de datos y comercio automatizado mediante MetaTrader 5.

Esta sección se centra en las funciones API MQL5 básicas, útiles en la mayoría de programas. Temas principales incluyen manipulación de arrays, procesamiento de cadenas, operación con archivos, conversión de datos e interacción con el usuario. Además, se abordan funciones matemáticas y gestión del entorno.

A diferencia de otros lenguajes, en MQL5 no se necesitan directivas de preprocesador adicionales para usar las funciones API. Todas están disponibles en el contexto global. También se discuten las similitudes de nombres en varios contextos y el uso d...

Leer más...
👍41👏1🎉1
¿Le apasiona el aprendizaje automático? Discuta las últimas tendencias en redes neuronales con otros entusiastas de la IA en nuestro foro multilingüe:

✓ Cómo utilizar el aprendizaje automático en el trading
✓ Estrategias comerciales con ayuda de IA
✓ Los mejores modelos y su entrenamiento
✓ Libros y páginas web sobre redes neuronales
✓ Resultados comerciales reales obtenidos con robots de IA

Encuentre nuevas ideas y comparta sus experiencias en nuestro hilo especial:

Aprendizaje automático en el trading: teoría, modelos, práctica y trading algorítmico
👍18🔥129👏2🎉2👌2😁1
En lugar de predecir el futuro movimiento de precios, que requiere altos recursos computacionales y no siempre es preciso, este artículo propone un enfoque innovador para el trading algorítmico mediante el uso de transformadores sin decodificadores (DFFT). Inspirado en técnicas de visión artificial, DFFT elimina el paso de predicción intermedia, reduciendo errores y permitiendo que un Actor tome decisiones óptimas basadas en datos históricos. Este método se implementa en MQL5, con bloques DOT especializados para gestionar la atención a nivel local y global, mejorando la eficiencia y precisión en la detección de patrones de mercado. Ideal para traders algorítmicos buscando eficiencia sin sacrificar rendimiento.

Leer más...
3👍3👌1
¿Interesado en cómo integrar el intercambio de datos en tiempo real en tus operaciones de MetaTrader 5? Esta guía te enseña a usar MQTT, un protocolo maduro y ligero que facilita la distribución de datos entre sistemas desacoplados. Desde la creación de símbolos personalizados hasta la implementación de servicios MQTT PUBLISH y SUBSCRIBE, aprende a automatizar tus operaciones con ejemplos prácticos. Ideal para traders que necesitan datos de múltiples fuentes y programadores que buscan nuevas soluciones para algoritmos de trading. Conecta tus cuentas de trading y mejora su eficiencia sin complicaciones. Descubre más sobre esta poderosa herramienta y su potencial en el trading automatizado.

Leer más...
👀4👍1👏1
Descubre la implementación práctica del algoritmo SVM en el entorno MetaTrader 5. Este artículo destaca cómo los SVMs clasifican datos mediante hiperplanos, y profundiza en la construcción y uso de un kernel polinómico. Exploramos tres escenarios aplicados, incluyendo interpolación de puntos medios y una función de regresión, todo sin recurrir a bibliotecas externas. Esta metodología es esencial para aquellos que buscan robustez en modelos con datos pequeños o sesgados, brindando una visión detallada y técnica que facilita la comprensión y aplicación práctica para traders y desarrolladores. Una lectura obligada para mejorar tu estrategia de trading algorítmico.

Leer más...
👏411👍1
Parte 3. Programación Orientada a Objetos en MQL5" ofrece una inmersión en la programación orientada a objetos (POO) en el lenguaje MQL5. El desarrollo de software a menudo implica cierta complejidad al administrar múltiples entidades, lo que requiere tecnología avanzada para mejorar la calidad y la productividad del trabajo del programador. La POO se basa en el concepto de objetos, variables de un tipo personalizado definido por el programador usando herramientas MQL5.

La creación de tipos personalizados permite modelar objetos y facilita la escritura y el mantenimiento de los programas. Esta sección analiza varias formas de definir nuevos tipos, incluidas las clases, estructuras y uniones. Estos tipos personalizados pueden combinar datos y algoritmos para describir el estado y el comportamiento de los objetos aplicados.

El autor del libro describe el principio "divide y vencerás",...

Leer más...
👍4👏1
El concepto de volatilidad en el mercado financiero es esencial para entender el trading. Exploraremos cómo el canal de Keltner puede funcionar como parte de un sistema de medición de la volatilidad y cómo optimizarlo según las preferencias comerciales.

La volatilidad mide la dispersión de los rendimientos de activos financieros. Factores que provocan volatilidad incluyen el sentimiento del mercado, informes de ingresos, eventos económicos y liquidez.

El canal de Keltner es un indicador de volatilidad que utiliza una media móvil exponencial y un rango medio verdadero. Aprender a configurarlo y aplicarlo es fundamental para evaluar tendencias y desempeñarse en el trading.

Existen estrategias comerciales como el "rebote de bandas" y la "ruptura de bandas". Crear un sistema automatizado basado en estas estrategias puede mejorar el rendimiento comercial.

Las pruebas y comparaciones en...

Leer más...
👏3👍1
Parte 2. Conceptos básicos de programación en MQL5" ofrece una visión general de los fundamentos esenciales de este lenguaje. Los lectores se familiarizarán con elementos clave como los tipos de datos, identificadores, variables, expresiones y operadores. Es una sección necesaria para desarrollar una comprensión sólida antes de avanzar a conceptos más complejos.

Esta parte del libro destaca la importancia de los identificadores, esenciales para el acceso a diferentes elementos del programa mediante nombres únicos. Los identificadores deben seguir reglas específicas: solo pueden incluir caracteres latinos, números y guiones bajos, no pueden comenzar con un número y deben evitar coincidir con palabras reservadas de MQL5.

Además, se introduce la programación de procedimientos, permitiendo a los lectores aprender cómo crear programas que procesen datos en una secuencia lógica. Esta base...

Leer más...
😁32👍1👏1
Descubre un enfoque avanzado para el análisis fractal en mercados financieros a través del coeficiente generalizado de Hurst (GHE)! Aprende cómo aplicar GHE en MQL5 para identificar símbolos de divisas que tienden a regresar a su valor promedio, y cómo generar señales de trading con mayor precisión. Profundiza en la implementación del archivo GHE.mqh, explora la prueba del coeficiente de varianza (VRT) para validar resultados, y optimiza estrategias de reversión a la media usando la puntuación Z. Mejora tus estrategias de trading aprovechando estos conceptos y herramientas matemáticas.

Leer más...
21👍1👏1
El primer capítulo del libro “Introducción a MQL5 y el entorno de desarrollo” presenta el lenguaje MQL5 y su entorno. Una diferencia clave entre MQL5 y MQL4 es la compatibilidad con la programación orientada a objetos (POO), similar a C++. Aunque algunas funciones de POO ya se han transferido de MQL5 a MQL4, aquellos sin experiencia en programación pueden encontrarla complicada. El objetivo del libro es hacer la POO comprensible y accesible.

Este libro complementa el manual de referencia de MQL5 y cubre todos los aspectos de la programación en este lenguaje. Los desarrolladores pueden optar por estilos de programación orientada a objetos, procedimental, o combinar ambos. Los expertos en C++ encontrarán MQL5 más fácil de dominar, pero deben tener en cuenta las diferencias para evitar errores.

MQL5 ofrece diferentes tipos de programas: indicadores para visualizar datos, expertos para ...

Leer más...
2👏1
Escriba artículos para la comunidad de tráders algorítmicos y reciba 200 USD por cada publicación

¿Quiere compartir conocimientos valiosos o debatir una idea interesante? Únase a nuestros autores, comparta su experiencia de negociación y programación y, lo que es más importante, obtenga una remuneración por los artículos publicados.

En julio, los tráders algorítmicos experimentados abarcaron una amplia gama de temas: desde las características universales de MQL5 y las estrategias multidivisa básicas hasta las tecnologías avanzadas de inteligencia artificial y las redes neuronales en el trading.

El mes pasado se publicaron 61 nuevos artículos en la sección «Artículos», un récord histórico. Estos son algunos de los mejores:

▪️Redes neuronales: AutoBots para predecir la evolución de los precios
▪️Introducción a MQL5: Estructuras, clases y funciones de tiempo
▪️Trailing stop en el trading

MetaQuotes apoya plenamente el intercambio de conocimientos entre participantes. Creemos que el desarrollo constante de nuevas ideas eleva el nivel profesional de cada uno de los participantes y contribuye al progreso de la esfera del trading algorítmico en su conjunto.

Conviértase en uno de nuestros autores: contribuya a la mayor comunidad de tráders algorítmicos y monetice sus propios conocimientos.

Escribir un artículo
👍74🏆1
Descubre cómo la herencia de una clase básica para algoritmos de optimización basada en poblaciones puede revolucionar el desarrollo de nuevos métodos híbridos de trading y análisis financiero. Este enfoque permite combinar la robustez de algoritmos como genéticos, enjambre de partículas y hormigas, potenciando sus capacidades mientras se minimizan sus limitaciones. La creación de soluciones personalizadas se simplifica mediante una clase unificada que facilita la integración y evaluación en bancos de pruebas estándar. Ideal tanto para desarrolladores expertos como para aquellos que buscan explorar las posibilidades de la optimización en MetaTrader 5.

Leer más...
👍2👌1
Fundamentos de la optimización

Los problemas de optimización tienen dos fases: formulación y solución del problema. En la formulación, se consideran tres componentes principales: variables de entrada, funciones objetivo y funciones de restricción. En la solución, se usa un algoritmo de optimización para resolver numéricamente el problema.

Las variables de entrada (x_1, x_2, ..., x_n) son los parámetros que se pueden ajustar para maximizar la función objetivo. Existen variables enteras, reales y booleanas. En asesores expertos, se utilizan variables como el periodo de la media móvil o el ratio TP/SL.

Funciones objetivo (f_i(x)): si existen varias, se denomina problema de optimización multiobjetivo. MetaTrader 5 espera una sola función objetivo, combinando varios objetivos en una suma ponderada.

Funciones de restricción (g_i(x)): limitan el valor de las variables. MetaTrader 5 consi...

Leer más...
👍1
El sistema de reconocimiento de números manuscritos utiliza la base de datos MNIST, que contiene 60,000 imágenes para entrenamiento y 10,000 para pruebas. Estas imágenes se derivan de muestras originales en blanco y negro de 20x20 píxeles del NIST, proporcionadas por la Oficina del Censo de Estados Unidos y estudiantes universitarios. Posteriormente, fueron normalizadas y ajustadas a 28x28 píxeles en tonos grises.

El modelo mnist.onnx descargado del zoo park of models (opset 8) permite el reconocimiento de números manuscritos. Es necesario mencionar que el modelo con opset 1 ya no es compatible con el onnx runtime actual. Sorprendentemente, la salida del vector no utiliza la función de activación Softmax, como es habitual. Esta se debe aplicar de manera manual.

Para reconocer un número, se debe dibujar en una cuadrícula especial y pulsar CLASSIFY. Si la probabilidad del número resul...

Leer más...
👍42
Descubra en este análisis único cómo los algoritmos de optimización enfrentan desafíos extremos. Evaluamos la estabilidad de diferentes algoritmos al ubicarlos inicialmente en un punto mínimo global, un escenario que genera poblaciones degeneradas. Esta prueba revela cómo estos algoritmos, desde SDSm hasta BGA, se comportan ante la falta de diversidad y la necesidad de encontrar máximos globales.

Los resultados preliminares demuestran que incluso los algoritmos con altas clasificaciones pueden fallar en estas condiciones específicas. Este estudio ofrece valiosas ideas sobre la importancia de la diversidad y la adaptación en el rendimiento de los algoritmos, aportando estrategias para mantener dicha diversidad y mejorar la eficiencia en contextos complejos.

Leer más...
🔥2👍1👏1
ONNX, o Open Neural Network Exchange, ha transformado la creación de programas MQL5 basados en IA. Ideal para MetaTrader 5, ONNX facilita el aprendizaje automático pero presenta desafíos en despliegues complejos.

Al trabajar con redes neuronales avanzadas y procesamiento de datos, el escalado y la normalización se vuelven cruciales para mejorar rendimiento y estabilidad. Scikit-learn.preprocessing en Python puede ayudar, pero trasladar modelos a MQL5 no es sencillo.

Para predicciones de series temporales, es necesario preparar datos en secuencias. Los modelos LSTM requieren estructuración adecuada para optimizar rendimiento. Probar modelos en ambas plataformas asegura consistencia en resultados.

Leer más...
6👍1👏1👌1
La función de ejecución del modelo ONNX requiere la definición precisa de los tamaños de entrada y salida. Las funciones OnnxSetInputShape y OnnxSetOutputShape se emplean para especificar estos tamaños de manera adecuada. No todos los modelos presentan entradas y salidas de tamaño fijo; en tales casos, el script mostrará un valor de -1 para indicar esta condición.

La selección del modelo se realiza en la carpeta MQL5\Files mediante la función FileSelectDialog. Esto permite una selección eficiente del modelo deseado. A continuación, un ejemplo demuestra el funcionamiento del script y cómo se definen los tamaños de entrada y salida para modelos que no poseen dimensiones fijas.

Leer más...
👍136👏3👀1