Simulación de mercado: Position View (III)
En estos últimos artículos, he mencionado que, en algunos momentos, necesitamos definir un valor para la propiedad ZOrder. ¿Pero por qué?!?! El motivo es que muchos de los códigos que agregan objetos al gráfico simplemente no usan, o mejor dicho, no definen un valor para esa propiedad. Bien, no estoy aquí para decir qué debe o no debe hacer cada programador, ni cómo debe o no debe escribir su código. Estoy aquí para mostrarte, estimado lector e interesado en comprender realmente cómo funcionan las cosas, lo que ocurre entre bastidores.
Búsqueda oscilatoria determinista (DOS) — Deterministic Oscillatory Search (DOS)
El algoritmo de búsqueda oscilatoria determinista (DOS) es un método de optimización global innovador que combina las ventajas de los algoritmos de gradiente y enjambre sin usar números aleatorios. El mecanismo de oscilaciones e inclinaciones de aptitud permite a DOS explorar espacios de búsqueda complejos de manera determinista.
Características del Wizard MQL5 que debe conocer (Parte 20): Regresión simbólica
La regresión simbólica es una forma de regresión que parte de supuestos mínimos o nulos sobre cómo sería el modelo subyacente que traza los conjuntos de datos objeto de estudio. Aunque puede implementarse mediante Métodos Bayesianos o Redes Neuronales, veremos cómo una implementación con Algoritmos Genéticos puede ayudar a personalizar una clase de señal experta utilizable en el asistente MQL5.
Algoritmo de optimización caótica — Chaos optimization algorithm (COA): Continuación
Continuamos el estudio del algoritmo de optimización caótica. La segunda parte del artículo está dedicada a los aspectos prácticos de la implementación del algoritmo, sus pruebas y conclusiones.
Aprendizaje automático y Data Science (Parte 43): Detección de patrones ocultos en datos de indicadores con modelos de mezcla gaussiana latente (LGMM)
¿Alguna vez has mirado un gráfico y has tenido esa extraña sensación... de que hay un patrón oculto justo debajo de la superficie? ¿Un código secreto que podría revelar hacia dónde se dirigen los precios si tan solo pudieras descifrarlo? Les presentamos LGMM, el detector de patrones ocultos del mercado. Un modelo de aprendizaje automático que ayuda a identificar esos patrones ocultos en el mercado.
Optimización por herencia sanguínea — Blood inheritance optimization (BIO)
Les presento mi nuevo algoritmo basado en la población, el BIO (Blood Inheritance Optimization), inspirado en el sistema de herencia del grupo sanguíneo humano. En este algoritmo, cada solución tiene un "grupo sanguíneo" distinto que determina su forma de evolucionar. Al igual que en la naturaleza, el grupo sanguíneo de un niño se hereda según reglas específicas, en el BIO las nuevas soluciones obtienen sus características mediante un sistema de herencia y mutaciones.
Gestor de riesgos profesional remoto para Forex en Python
Hoy crearemos un gestor de riesgos profesional remoto para Forex en Python, y los desplegaremos en un servidor paso a paso. En el transcurso del artículo entenderemos cómo gestionar programáticamente los riesgos en Forex, y cómo no agotar más nuestro depósito en el mundo de las divisas.
Características del Wizard MQL5 que debe conocer (Parte 43): Aprendizaje por refuerzo con SARSA
SARSA, que es la abreviatura de State-Action-Reward-State-Action (Estado-Acción-Recompensa-Estado-Acción), es otro algoritmo que se puede utilizar al implementar el aprendizaje por refuerzo. Por lo tanto, tal y como vimos con Q-Learning y DQN, analizamos cómo se podría explorar e implementar esto como un modelo independiente, en lugar de solo como un mecanismo de entrenamiento, en los asesores expertos ensamblados por el asistente.
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 16): Introducción a la teoría de los cuartos (II) - Intrusion Detector EA
En nuestro artículo anterior presentamos un script sencillo llamado «The Quarters Drawer». Partiendo de esa base, ahora damos el siguiente paso creando un Asesor Experto (Expert Advisor, EA) de monitoreo, destinado a seguir estos cuartos y a proporcionar supervisión sobre posibles reacciones del mercado en dichos niveles. Acompáñenos mientras exploramos el proceso de desarrollo de una herramienta de detección de zonas en este artículo.
Características del Wizard MQL5 que debe conocer (Parte 56): Fractales de Bill Williams
Los fractales de Bill Williams son un indicador potente que es fácil pasar por alto cuando se ve por primera vez en un gráfico de precios. Parece demasiado recargado y probablemente no lo suficientemente incisivo. Nuestro objetivo es desvelar este indicador examinando lo que sus diversos patrones podrían lograr cuando se analizan con pruebas de avance en todos los casos, con un asesor experto creado por un asistente.
Creación de clases de negociación similares a MQL5 en Python para MetaTrader 5
El paquete Python de MetaTrader 5 ofrece una forma sencilla de crear aplicaciones de trading para la plataforma MetaTrader 5 en lenguaje Python. Aunque se trata de una herramienta potente y útil, este módulo no es tan fácil de usar como el lenguaje de programación MQL5 a la hora de crear una solución de trading algorítmico. En este artículo, vamos a crear clases de trading similares a las que se ofrecen en MQL5 para crear una sintaxis similar y facilitar la creación de robots de trading en Python como en MQL5.
Desarrollo de un sistema de repetición (Parte 76): Un nuevo Chart Trade (III)
En este artículo, veremos cómo funciona el código faltante del artículo anterior, DispatchMessage. Aquí se introducirá el tema del próximo artículo. Por esta razón, es importante entender el funcionamiento de este procedimiento antes de pasar al siguiente tema. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe considerarse una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos presentados.
Red neuronal cuántica en MQL5 (Parte I): Creamos un archivo de inclusión
El artículo presenta un nuevo enfoque para la creación de sistemas de negociación basados en principios cuánticos e inteligencia artificial. El autor describe el desarrollo de una red neuronal única que va más allá del aprendizaje automático clásico al integrar la mecánica cuántica con las arquitecturas de inteligencia artificial modernas.
Simulación de mercado (Parte 05): Creación de la clase C_Orders (II)
En este artículo, explicaré cómo Chart Trade, junto con el asesor experto, gestionará la solicitud de cierre de todas las posiciones abiertas del usuario. Parece sencillo, pero hay algunos factores que complican la situación y que es necesario saber gestionar.
Simulación de mercado (Parte 09): Sockets (III)
Este artículo es la continuación del anterior. En él veremos cómo se implementará el Asesor Experto, centrándonos principalmente en cómo debe hacerse el código del servidor. El código del artículo anterior no es suficiente para que las cosas funcionen como deberían, por lo que es necesario profundizar en él. Por esta razón, es necesario que leas ambos artículos para comprender mejor lo que ocurrirá.
Características del Wizard MQL5 que debe conocer (Parte 33): Núcleos de procesos gaussianos
Los núcleos del proceso gaussiano son la función de covarianza de la distribución normal que podría desempeñar un papel en el pronóstico. Exploramos este algoritmo único en una clase de señal personalizada de MQL5 para ver si podría usarse como una señal de entrada y salida principal.
Métodos de discretización de los movimientos de precios en Python
Hoy analizaremos varios métodos de discretización de precios en Python + MQL5. En este artículo compartiré mi experiencia práctica en el desarrollo de una biblioteca Python que implementa toda una gama de enfoques para la formación de barras: desde las clásicas Volume y Range bars hasta métodos más exóticos como Renko y Kagi, velas de ruptura de tres líneas, barras de Rango; ¿cuáles son sus estadísticas, de qué otra forma se pueden representar los precios de forma discreta?
Desarrollo de un sistema de repetición (Parte 69): Ajuste del tiempo (II)
Aquí entenderemos por qué necesitamos utilizar la función iSpread. Al mismo tiempo, comprenderemos cómo el sistema nos informa del tiempo restante de la barra cuando no hay ticks disponibles para hacerlo. El contenido presentado aquí tiene como único propósito la enseñanza y la didáctica. En ningún caso debe considerarse una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
Mecanismos de compuertas en el aprendizaje en conjuntos
En este artículo, continuamos nuestra exploración de los modelos ensamblados analizando el concepto de compuertas, concretamente cómo pueden ser útiles para combinar los resultados de los modelos con el fin de mejorar la precisión de las predicciones o la generalización de los modelos.
Análisis espectral singular unidimensional
El artículo aborda aspectos teóricos y prácticos del método de análisis espectral singular (ARS), un método eficaz de análisis de series temporales que permite representar la compleja estructura de una serie como una descomposición en componentes simples, como la tendencia, las fluctuaciones estacionales (periódicas) y el ruido.
Simulación de mercado (Parte 17): Sockets (XI)
Implementar la parte que se ejecutará aquí en MetaTrader 5 no es complicado. Pero hay diversos aspectos a los que hay que prestar atención. Esto es para que tú, querido lector, consigas hacer que el sistema funcione de verdad. Recuerda una cosa: no se ejecutará un único programa. En realidad, estarás ejecutando tres programas a la vez. Es importante que cada uno se implemente y se construya de forma que trabajen y se comuniquen entre sí. Es crucial que cada uno sepa qué está intentando o deseando hacer el otro.
Análisis de múltiples símbolos con Python y MQL5 (Parte II): Análisis de componentes principales para la optimización de carteras
La gestión del riesgo de las cuentas de trading es un reto para todos los operadores. ¿Cómo podemos desarrollar aplicaciones de trading que aprendan dinámicamente los modos de riesgo alto, medio y bajo para diversos símbolos en MetaTrader 5? Al utilizar el Análisis de Componentes Principales (Principal Components Analysis, PCA), obtenemos un mejor control sobre la variación de la cartera. Demostraré cómo crear aplicaciones que aprendan estos tres modos de riesgo a partir de datos de mercado obtenidos de MetaTrader 5.
Aprendizaje automático y Data Science (Parte 42): Pronóstico de series temporales de Forex con ARIMA en Python, todo lo que necesitas saber
ARIMA, siglas de AutoRegressive Integrated Moving Average —en español, “modelo autorregresivo integrado de media móvil”—, es un potente modelo tradicional de pronóstico de series temporales. Gracias a su capacidad para detectar picos y fluctuaciones en los datos de una serie temporal, este modelo puede realizar predicciones precisas sobre los valores siguientes. En este artículo, vamos a entender qué es, cómo funciona, qué se puede hacer con él para predecir los próximos precios del mercado con gran precisión y mucho más.
Desarrollo de un sistema de repetición (Parte 72): Una comunicación inesperada (I)
Lo que construiremos será complejo de entender. Por esta razón, en este artículo solo presentaré el inicio de la construcción. Léelo con calma, ya que es esencial comprender su contenido para pasar al siguiente paso. El objetivo de este contenido es meramente didáctico, sin aplicación práctica más allá del aprendizaje y estudio de los conceptos presentados.
Simulación de mercado (Parte 15): Sockets (IX)
En este artículo, explicaré una de las posibles soluciones a lo que he estado intentando mostrar. Es decir, cómo permitir que un usuario de Excel realice una acción en MetaTrader 5 sin enviar órdenes ni abrir o cerrar una posición. La idea es que el usuario utilice Excel para realizar un análisis fundamental de algún símbolo. Y que, usando únicamente Excel, pueda indicar a un Asesor Experto que se esté ejecutando en MetaTrader 5 que debe abrir o cerrar una posición determinada.
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 20): Flujo externo (IV) — Correlation Pathfinder
Correlation Pathfinder ofrece un nuevo enfoque para comprender la dinámica de los pares de divisas, como parte de la serie de desarrollo de herramientas de análisis de la acción del precio. Esta herramienta automatiza la recopilación y el análisis de datos, lo que permite comprender cómo interactúan pares como el EUR/USD y el GBP/USD. Mejora tu estrategia de trading con información práctica y en tiempo real que te ayudará a gestionar el riesgo y a detectar oportunidades de forma más eficaz.
Procesos gaussianos en el aprendizaje automático (Parte 1): Modelo de clasificación en MQL5
En este artículo, analizaremos el modelo de clasificación de procesos gaussianos. Comenzaremos estudiando sus principios teóricos y luego pasaremos al desarrollo práctico de la biblioteca GP en MQL5.
Algoritmo de ecolocalización de delfines — Dolphin Echolocation Algorithm (DEA)
En este artículo, analizaremos más de cerca el algoritmo DEA, un método de optimización metaheurística inspirado en la capacidad única de los delfines para encontrar presas mediante la ecolocalización. Desde los fundamentos matemáticos hasta la implementación práctica en MQL5, desde el análisis hasta la comparación con algunos algoritmos clásicos, examinaremos con detalle por qué este método relativamente nuevo merece un lugar en el arsenal de quienes se enfrentan a problemas de optimización.
De novato a experto: Noticias animadas utilizando MQL5 (IV) Análisis de mercado sobre modelos de IA alojados localmente
En esta discusión, analizaremos cómo autoalojar modelos de IA de código abierto y utilizarlos para obtener información sobre el mercado. Esto forma parte de nuestro esfuerzo continuo por ampliar el News Headline EA, con la introducción de una franja «AI Insights» que lo convierte en una herramienta de asistencia con múltiples integraciones. La versión mejorada del Asesor Experto (EA) tiene como objetivo mantener informados a los operadores a través de eventos del calendario, noticias financieras de última hora, indicadores técnicos y, ahora, perspectivas de mercado generadas por IA, ofreciendo así un apoyo oportuno, variado e inteligente para la toma de decisiones de trading. Únete a la conversación mientras exploramos estrategias prácticas de integración y cómo MQL5 puede colaborar con recursos externos para crear un terminal de trabajo para trading potente e inteligente.
Aprendizaje automático y Data Science (Parte 41): Detección de patrones en los mercados de divisas y de valores mediante YOLOv8
Detectar patrones en los mercados financieros es un reto porque implica ver lo que aparece en el gráfico, algo difícil de realizar en MQL5 debido a las limitaciones de las imágenes. En este artículo, vamos a analizar un modelo eficaz creado en Python que nos ayuda a detectar patrones presentes en el gráfico con un mínimo esfuerzo.
Trading por pares: negociación algorítmica con optimización automática en la diferencia de puntuación Z
En este artículo, veremos qué es el trading por pares y cómo se realiza el comercio de correlaciones. También crearemos un asesor experto para automatizar el trading por pares y añadiremos la capacidad de optimizar automáticamente dicho algoritmo comercial a partir de los datos históricos. Además, como parte del proyecto, aprenderemos a calcular la divergencia de dos pares utilizando la puntuación z.
Desarrollo de un sistema de repetición (Parte 67): Refinando el indicador de control
En este artículo, mostraré lo que un poco de refinamiento en el código es capaz de lograr. Dicho refinamiento tiene como objetivo simplificar nuestro código, hacer un mayor uso de las llamadas a la biblioteca de MQL5 y, sobre todo, conseguir que sea mucho más estable, seguro y fácil de usar en otros códigos que desarrollemos en el futuro. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe considerarse como una aplicación cuya finalidad no sea el aprendizaje y estudio de los conceptos mostrados.
Simulación de mercado (Parte 13): Sockets (VII)
Cuando tú desarrollas algo, ya sea en xlwings o en cualquier otro paquete que nos permita leer y escribir directamente en Excel, en realidad deberías notar que todos los programas, funciones o procedimientos se ejecutan y luego finalizan su tarea. No permanecen allí dentro de un bucle, y, por más que intentes hacer las cosas de otra forma.
Algoritmo de mercado bursátil — Exchange Market Algorithm (EMA)
Este artículo ofrece un análisis detallado del algoritmo de mercado bursátil (EMA), inspirado en el comportamiento de los tráders en el mercado de valores. El algoritmo simula el proceso de negociación de acciones, donde los participantes del mercado con distintos niveles de éxito emplean distintas estrategias para maximizar sus beneficios.
Simulación de mercado (Parte 08): Sockets (II)
¿Qué te parece si creamos algo práctico con sockets? Bien, en este artículo empezaremos a crear un minichat. Acompáñanos y descubre cómo se hace, porque será algo bastante interesante. Recuerda que el código que se mostrará aquí tiene un objetivo puramente didáctico. En realidad, no deberías utilizar este código con fines comerciales ni en una aplicación finalizada, ya que no cuenta con ningún tipo de seguridad en la transmisión de datos y es posible ver el contenido que se está transportando a través del socket.
Simulación de mercado (Parte 23): Iniciando SQL (VI)
En este artículo, exploraremos cómo realizar la visualización y, en consecuencia, entender cómo está estructurada una base de datos. Esto se hizo al observar el diagrama interno de la base de datos. Aunque este tipo de cosa parezca algo innecesario, puede ser bastante válido si tú pretendes, de hecho, convertirte en un administrador de bases de datos. Y sí, hay personas que viven de hacer mantenimiento y creación de bases de datos.
Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (III): Módulo de comunicación
Únase a nosotros para profundizar en los últimos avances en el diseño de la interfaz MQL5, mientras presentamos el panel de comunicaciones rediseñado y continuamos nuestra serie sobre la creación del nuevo Panel de administración utilizando los principios de la modularización. Desarrollaremos la clase CommunicationsDialog paso a paso, explicando detalladamente cómo heredarla de la clase Dialog. Además, aprovecharemos las matrices y la clase ListView en nuestro desarrollo. Obtenga información útil para mejorar sus habilidades de desarrollo en MQL5: ¡lea el artículo y participe en el debate en la sección de comentarios!
Desarrollamos un asesor experto multidivisas (Parte 28): Añadimos un gestor de cierre de posiciones
Cuando se ejecutan varias estrategias en paralelo, resulta recomendable cerrar periódicamente todas las posiciones abiertas y volver a empezar las estrategias. El código existente solo permite implementar este comportamiento con manipulaciones manuales. Vamos a intentar automatizar esta parte.
Análisis de las brechas temporales de precios en MQL5 (Parte I): Creando un indicador básico
El análisis de brechas temporales ayuda a los tráders a identificar posibles puntos de reversión del mercado. El artículo analiza qué es un desfase temporal, cómo interpretarlo y de qué manera se puede utilizar para detectar la inyección de un gran volumen en el mercado.
Exploramos modelos de regresión para inferencia causal y operaciones bursátiles
Este artículo explora la posibilidad de usar modelos de regresión en el trading algorítmico. Los modelos de regresión, a diferencia de la clasificación binaria, permiten crear estrategias de trading más flexibles mediante la evaluación cuantitativa de los cambios de precio previstos.