Características del Wizard MQL5 que debe conocer (Parte 53): Market Facilitation Index (MFI)
El Market Facilitation Index (MFI) es otro indicador de Bill Williams que tiene como objetivo medir la eficiencia del movimiento de los precios en relación con el volumen. Como siempre, analizamos los distintos patrones de este indicador dentro de los límites de una clase de señales de ensamblaje del asistente y presentamos una variedad de informes de pruebas y análisis para los distintos patrones.
Teoría de Categorías en MQL5 (Parte 17): Funtores y monoides
Este es el último artículo de la serie sobre funtores. En él, revisaremos los monoides como categoría. Los monoides, que ya hemos introducido en esta serie, se utilizan aquí para ayudar a dimensionar la posición junto con los perceptrones multicapa.
Kit de herramientas de negociación MQL5 (Parte 3): Desarrollo de una biblioteca EX5 para la gestión de órdenes pendientes
Aprenda a desarrollar e implementar una biblioteca EX5 integral de órdenes pendientes en su código o proyectos MQL5. Este artículo le mostrará cómo crear una extensa biblioteca EX5 de gestión de órdenes pendientes y lo guiará en el proceso de importarla e implementarla mediante la creación de un panel de negociación o una interfaz gráfica de usuario (GUI). El panel de órdenes del asesor experto permitirá a los usuarios abrir, monitorear y eliminar órdenes pendientes asociadas con un número mágico específico directamente desde la interfaz gráfica en la ventana del gráfico.
Desarrollamos un asesor experto multidivisa (Parte 10): Creación de objetos a partir de una cadena
El plan de desarrollo del EA comprende varias etapas con resultados intermedios almacenados en una base de datos. Solo se pueden recuperar desde allí como cadenas o números, no como objetos. Así que necesitaremos una forma de recrear en el EA los objetos deseados a partir de las cadenas leídas de la base de datos.
Desarrollo de un sistema de repetición (Parte 29): Proyecto Expert Advisor — Clase C_Mouse (III)
Ahora que hemos mejorado la clase C_Mouse, podemos concentrarnos en crear una clase destinada a establecer una base totalmente nueva de estudios. Como mencioné al inicio del artículo, no utilizaremos herencia o polimorfismo para crear esta nueva clase. En cambio, vamos a modificar, o mejor, agregar nuevos objetos a la línea de precio. Esto es lo que haremos en este primer momento, y en el próximo artículo, mostraré cómo cambiar los estudios. Pero, realizaremos esto sin cambiar el código de la clase C_Mouse. Reconozco que, en la práctica, esto sería más fácilmente logrado mediante herencia o polimorfismo. No obstante, existen otras técnicas para alcanzar el mismo resultado.
Redes neuronales en el trading: Uso de modelos de lenguaje para la predicción de series temporales
Continuamos nuestro análisis de los modelos de pronóstico de series temporales. En este artículo le propongo familiarizarnos con un algoritmo complejo construido sobre el uso de un modelo de lenguaje previamente entrenado.
HTTP y Connexus (Parte 2): Comprensión de la arquitectura HTTP y el diseño de bibliotecas
Este artículo explora los fundamentos del protocolo HTTP, cubriendo los métodos principales (GET, POST, PUT, DELETE), los códigos de estado y la estructura de las URL. Además, presenta el inicio de la construcción de la librería Conexus con las clases CQueryParam y CURL, que facilitan la manipulación de URLs y parámetros de consulta en peticiones HTTP.
Desarrollamos un asesor experto multidivisas (Parte 27): Componente para mostrar textos de varias líneas
Si es necesario mostrar información textual en un gráfico, podemos utilizar la función Comment(), pero sus capacidades son bastante limitadas. Por ello, en este artículo, crearemos nuestro propio componente: un cuadro de diálogo de pantalla completa capaz de mostrar texto de varias líneas con configuraciones de fuente flexibles y soporte de desplazamiento.
Redes neuronales en el trading: Framework comercial híbrido con codificación predictiva (StockFormer)
Hoy le presentamos el StockFormer, un sistema comercial híbrido que combina algoritmos de codificación predictiva y de aprendizaje por refuerzo (RL). El framework utiliza 3 ramas del Transformer con un mecanismo Diversified Multi-Head Attention (DMH-Attn) integrado que mejora el módulo de atención vainilla gracias a un bloque Feed-Forward multicabeza que permite captar diversos patrones de series temporales en diferentes subespacios.
Características del Wizard MQL5 que debe conocer (Parte 02): Mapas de Kohonen
Gracias al Wizard, el tráder podrá ahorrar tiempo a la hora de poner en práctica sus ideas. Asimismo, podrá reducir la probabilidad de que surjan errores por duplicación de código. En lugar de perder el tiempo con el código, los tráders tendrán la posibilidad de poner en práctica su filosofía comercial.
Teoría de categorías en MQL5 (Parte 20): Autoatención y transformador
Hoy nos apartaremos un poco de nuestros temas habituales y veremos parte del algoritmo de ChatGPT. ¿Tiene alguna similitud o concepto tomado de las transformaciones naturales? Intentaremos responder estas y otras preguntas usando nuestro código en formato de clase de señal.
Automatización de estrategias de trading en MQL5 (Parte 2): El sistema Kumo Breakout con Ichimoku y Awesome Oscillator
En este artículo, creamos un Asesor Experto (EA) que automatiza la estrategia Kumo Breakout utilizando el indicador Ichimoku Kinko Hyo y el Awesome Oscillator. Recorremos el proceso de inicialización de los indicadores, detección de condiciones de ruptura y codificación de entradas y salidas automáticas en las operaciones. Además, implementamos trailing stops y lógica de gestión de posiciones para mejorar el rendimiento del EA y su adaptabilidad a las condiciones del mercado.
Redes neuronales en el trading: Agente multimodal con herramientas complementarias (Final)
Seguimos trabajando en la implementación de los algoritmos para el agente multimodal de comercio financiero (FinAgent), diseñado para analizar los datos multimodales de la dinámica de mercado y los patrones comerciales históricos.
Redes neuronales: así de sencillo (Parte 78): Detector de objetos basado en el Transformer (DFFT)
En este artículo, le propongo abordar la creación de una estrategia comercial desde una perspectiva diferente. Hoy no pronosticaremos los movimientos futuros de los precios, sino que trataremos de construir un sistema comercial basado en el análisis de datos históricos.
Redes neuronales en el trading: Detección adaptativa de anomalías del mercado (DADA)
Hoy vamos a familiarizarnos con el framework DADA, un método innovador para detectar anomalías en las series temporales. Este ayuda a distinguir las fluctuaciones aleatorias de las presuntas anomalías. A diferencia de los métodos tradicionales, el DADA puede adaptarse de forma flexible a distintos datos. En lugar de un nivel de compresión fijo, usa múltiples opciones y elige la más adecuada para cada caso.
Aprendizaje automático y Data Science (Parte 25): Predicción de series temporales de divisas mediante una red neuronal recurrente (RNN)
Las redes neuronales recurrentes (RNNs, Recurrent Neural Networks) destacan por aprovechar la información del pasado para predecir acontecimientos futuros. Sus notables capacidades predictivas se han aplicado en diversos ámbitos con gran éxito. En este artículo, utilizaremos modelos RNN para predecir tendencias en el mercado de divisas, demostrando su potencial para mejorar la precisión de las predicciones en el comercio de divisas.
Redes neuronales: así de sencillo (Parte 70): Mejoramos las políticas usando operadores de forma cerrada (CFPI)
En este trabajo, proponemos introducir un algoritmo que use operadores de mejora de políticas de forma cerrada para optimizar las acciones offline del Agente.
Redes neuronales en el trading: Modelos bidimensionales del espacio de enlaces (Quimera)
Descubra el innovador framework Chimera, un modelo bidimensional de espacio de estados que utiliza redes neuronales para analizar series temporales multivariantes. Este método ofrece una gran precisión con un bajo coste computacional, superando a los enfoques tradicionales y a las arquitecturas de Transformer.
Puntuación de propensión (Propensity score) en la inferencia causal
Este artículo trata el tema del emparejamiento en la inferencia causal. El emparejamiento se usa para emparejar observaciones similares en un conjunto de datos. Esto es necesario para identificar correctamente los efectos causales, eliminando el sesgo. Hoy explicaremos cómo esto ayuda a crear sistemas comerciales basados en el aprendizaje automático que se vuelven más robustos con nuevos datos en los que no se ha entrenado. El papel principal lo asignaremos a la puntuación de propensión, ampliamente utilizada en la inferencia causal.
Automatización de estrategias de trading en MQL5 (Parte 13): Algoritmo de trading para patrón Hombro-Cabeza-Hombro
En este artículo automatizamos el patrón Hombro-Cabeza-Hombro en MQL5. Analizamos su arquitectura, implementamos un EA para detectarlo y operar, y realizamos una prueba retrospectiva de los resultados. El proceso revela un algoritmo de negociación práctico con margen para mejoras.
Creación de un Panel de administración de operaciones en MQL5 (Parte II): Mejorar la capacidad de respuesta y la rapidez de los mensajes
En este artículo, vamos a mejorar la capacidad de respuesta del Panel de administración que hemos creado anteriormente. Además, exploraremos la importancia de los mensajes rápidos en el contexto de las señales de negociación.
Reimaginando las estrategias clásicas (Parte II): Ruptura de las Bandas de Bollinger
Este artículo explora una estrategia comercial que integra el análisis discriminante lineal (Linear Discriminant Analysis, LDA) con las Bandas de Bollinger, aprovechando las predicciones de zonas categóricas para obtener señales estratégicas de entrada al mercado.
Desarrollamos un asesor experto multidivisa (Parte 17): preparación adicional para el trading real
Ahora nuestro EA utiliza una base de datos para recuperar las cadenas de inicialización de instancias individuales de estrategias comerciales. Sin embargo, la base de datos es bastante voluminosa y contiene mucha información innecesaria para el funcionamiento real del asesor experto. Vamos a intentar que el EA funcione sin conexión obligatoria a la base de datos.
Características del Wizard MQL5 que debe conocer (Parte 30): Normalización por lotes en el aprendizaje automático
La normalización por lotes es el preprocesamiento de datos antes de introducirlos en un algoritmo de aprendizaje automático, como una red neuronal. Esto siempre se hace teniendo en cuenta el tipo de activación que utilizará el algoritmo. Por lo tanto, exploramos los diferentes enfoques que se pueden adoptar para aprovechar los beneficios de esto, con la ayuda de un Asesor Experto ensamblado por un asistente.
Redes neuronales: así de sencillo (Parte 63): Entrenamiento previo del Transformador de decisiones no supervisado (PDT)
Continuamos nuestra análisis de la familia de métodos del Transformador de decisiones. En artículos anteriores ya hemos observado que entrenar el transformador subyacente en la arquitectura de estos métodos supone todo un reto y requiere una gran cantidad de datos de entrenamiento marcados. En este artículo, analizaremos un algoritmo para utilizar trayectorias no marcadas para el entrenamiento previo de modelos.
Redes neuronales en el trading: Agente con memoria multinivel (Final)
Continuamos el trabajo iniciado de creación del framework FinMem, que utiliza enfoques de memoria multinivel que imitan los procesos cognitivos humanos. Esto permite al modelo no solo procesar eficazmente datos financieros complejos, sino también adaptarse a nuevas señales, mejorando sustancialmente la precisión y eficacia de las decisiones de inversión en mercados que cambian dinámicamente.
Automatización de estrategias de trading en MQL5 (Parte 4): Creación de un sistema de recuperación de zonas multinivel
En este artículo, desarrollamos un sistema de recuperación de zonas multinivel en MQL5 que utiliza el RSI para generar señales de trading. Cada instancia de señal se añade dinámicamente a una estructura de matriz, lo que permite al sistema gestionar múltiples señales simultáneamente dentro de la lógica de recuperación de zona. Mediante este enfoque, demostramos cómo manejar de manera efectiva escenarios complejos de gestión comercial, manteniendo al mismo tiempo un diseño de código escalable y robusto.
Redes neuronales en el trading: Modelo hiperbólico de difusión latente (Final)
El uso de procesos de difusión anisotrópica para codificar los datos de origen en un espacio latente hiperbólico, como se propone en el framework HypDIff, ayuda a preservar las características topológicas de la situación actual del mercado y mejora la calidad de su análisis. En el artículo anterior, empezamos a aplicar los enfoques propuestos usando herramientas MQL5. Hoy continuaremos el trabajo iniciado, llevándolo a su conclusión lógica.
Automatización de estrategias de trading en MQL5 (Parte 6): Dominar la detección de bloques de órdenes para el comercio inteligente con dinero
En este artículo, automatizamos la detección de bloques de órdenes en MQL5 utilizando análisis de acción de precios puro. Definimos bloques de órdenes, implementamos su detección e integramos la ejecución automatizada de operaciones. Por último, realizamos una prueba retrospectiva de la estrategia para evaluar su rendimiento.
Añadimos un LLM personalizado a un robot comercial (Parte 5): Desarrolla y prueba una estrategia de trading con LLMs (II), LoRA-Tuning
Con el rápido desarrollo de la inteligencia artificial en la actualidad, los modelos lingüísticos (LLM) son una parte importante de la inteligencia artificial, por lo que deberíamos pensar en cómo integrar potentes LLM en nuestras operaciones algorítmicas. Para la mayoría de la gente, es difícil ajustar estos potentes modelos a sus necesidades, desplegarlos localmente y luego aplicarlos a la negociación algorítmica. Esta serie de artículos adoptará un enfoque paso a paso para lograr este objetivo.
Características del Wizard MQL5 que debe conocer (Parte 13): DBSCAN para la clase experta de señales
El agrupamiento basado en densidad para aplicaciones con ruido (DBSCAN) es una forma no supervisada de agrupar datos que apenas requiere parámetros de entrada, salvo solo 2, lo cual, en comparación con otros enfoques como k-means, es una ventaja. Profundizamos en cómo esto podría ser constructivo para probar y eventualmente operar con Asesores Expertos montados por Wizard MQL5.
Redes neuronales: así de sencillo (Parte 95): Reducción del consumo de memoria en los modelos de transformadores
Los modelos basados en la arquitectura de transformadores demuestran una gran eficacia, pero su uso se complica por el elevado coste de los recursos tanto en la fase de formación como durante el funcionamiento. En este artículo, propongo familiarizarse con los algoritmos que permiten reducir el uso de memoria de tales modelos.
Creación de un modelo de restricción de tendencia de velas (Parte 8): Desarrollo de un asesor experto (I)
En esta discusión, crearemos nuestro primer Asesor Experto en MQL5 basado en el indicador que creamos en el artículo anterior. Cubriremos todas las características necesarias para automatizar el proceso, incluida la gestión de riesgos. Esto beneficiará ampliamente a los usuarios para pasar de la ejecución manual de operaciones a sistemas automatizados.
Arbitraje estadístico mediante reversión a la media en el trading de pares: Cómo superar al mercado con matemáticas
Este artículo describe los fundamentos del arbitraje estadístico a nivel de cartera. Su objetivo es facilitar la comprensión de los principios del arbitraje estadístico a lectores sin conocimientos matemáticos profundos y proponer un marco conceptual de partida. El artículo incluye un Asesor Experto en funcionamiento, algunas notas sobre su prueba retrospectiva de un año y las respectivas configuraciones de prueba retrospectiva (archivo .ini) para la reproducción del experimento.
Añadimos un LLM personalizado a un robot comercial (Parte 4): Entrena tu propio LLM con GPU
Con el rápido desarrollo de la inteligencia artificial en la actualidad, los modelos lingüísticos (LLM) son una parte importante de la inteligencia artificial, por lo que deberíamos pensar en cómo integrar potentes LLM en nuestras operaciones algorítmicas. Para la mayoría de la gente, es difícil ajustar estos potentes modelos a sus necesidades, desplegarlos localmente y luego aplicarlos a la negociación algorítmica. Esta serie de artículos abordará paso a paso la consecución de este objetivo.
Operando con el Calendario Económico MQL5 (Parte 10): Panel arrastrable y efectos al pasar el cursor para una navegación fluida por las noticias
En este artículo, mejoramos el Calendario Económico de MQL5 mediante la incorporación de un panel de control arrastrable que nos permite reubicar la interfaz para mejorar la visibilidad del gráfico. Implementamos efectos al pasar el cursor por los botones para mejorar la interactividad y garantizar una navegación fluida con una barra de desplazamiento posicionada dinámicamente.
Cierres parciales condicionales (Parte 1): Creación de la clase base
En este artículo implementaremos un nuevo método para la gestión de posiciones, parecido a los cierres parciales "simples" que implementamos anteriormente, pero con una diferencia importante. En lugar de basarse en niveles de takeprofit fijos, este enfoque aplica los cierres parciales al momento de cumplirse cierta condición específica. De ahí su nombre: "Cierres parciales condicionales". En esta primera parte de la implementación en MQL5 veremos cómo funciona esta técnica de gestión de posiciones.
Redes neuronales en el trading: Red neuronal espacio-temporal (STNN)
En este artículo, hablaremos sobre el uso de transformaciones espacio-temporales para predecir el próximo movimiento de los precios de manera eficaz. Para mejorar la precisión de la predicción numérica en el STNN, hemos propuesto un mecanismo de atención continua que permite al modelo considerar en mayor medida aspectos importantes de los datos.
Reimaginando las estrategias clásicas (Parte VI): Análisis de múltiples marcos temporales
En esta serie de artículos, revisamos las estrategias clásicas para ver si podemos mejorarlas utilizando IA. En el artículo de hoy, examinaremos la popular estrategia de análisis de múltiples marcos temporales para juzgar si la estrategia se podría mejorar con IA.
Creación de un modelo de restricción de tendencia de velas (Parte 9): Asesor Experto de múltiples estrategias (II)
El número de estrategias que se pueden integrar en un Asesor Experto es prácticamente ilimitado. Sin embargo, cada estrategia adicional aumenta la complejidad del algoritmo. Al incorporar múltiples estrategias, un Asesor Experto puede adaptarse mejor a las condiciones cambiantes del mercado, lo que puede mejorar su rentabilidad. Hoy exploraremos cómo implementar MQL5 para una de las estrategias más destacadas desarrolladas por Richard Donchian, mientras continuamos mejorando la funcionalidad de nuestro Asesor Experto Trend Constraint.