Redes neuronales: así de sencillo (Parte 37): Atención dispersa (Sparse Attention)
En el artículo anterior, analizamos los modelos relacionales que utilizan mecanismos de atención en su arquitectura. Una de las características de dichos modelos es su mayor uso de recursos informáticos. Este artículo propondrá uno de los posibles mecanismos para reducir el número de operaciones computacionales dentro del bloque Self-Attention o de auto-atención, lo cual aumentará el rendimiento del modelo en su conjunto.
Teoría de Categorías en MQL5 (Parte 5): Ecualizadores
La teoría de categorías es un apartado diverso y en expansión de las matemáticas, que solo recientemente ha comenzado a ser trabajado por la comunidad MQL5. Esta serie de artículos tiene por objetivo repasar algunos de sus conceptos para crear una biblioteca abierta y seguir usando este maravilloso apartado en la creación de estrategias comerciales.
Algoritmos de optimización de la población: Algoritmo del mono (Monkey algorithm, MA)
En este artículo analizaremos el algoritmo de optimización "Algoritmo del Mono" (MA). La capacidad de estos ágiles animales para superar obstáculos complicados y alcanzar las copas de los árboles más inaccesibles fue la base de la idea del algoritmo MA.
Teoría de categorías en MQL5 (Parte 3)
La teoría de categorías es una rama diversa y en expansión de las matemáticas, relativamente inexplorada aún en la comunidad MQL5. Esta serie de artículos tiene como objetivo destacar algunos de sus conceptos para crear una biblioteca abierta y seguir utilizando esta maravillosa sección para crear estrategias comerciales.
Algoritmos de optimización de la población: Búsqueda armónica (HS)
Hoy estudiaremos y pondremos a prueba un algoritmo de optimización muy potente, la búsqueda armónica (HS), que se inspira en el proceso de búsqueda de la armonía sonora perfecta. ¿Qué algoritmo lidera ahora mismo nuestra clasificación?
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 02): Primeros experimentos (II)
Intentemos esta vez un enfoque diferente para lograr el objetivo de 1 minuto. Sin embargo, esta tarea no es tan sencilla como muchos piensan.
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 01): Primeros experimentos (I)
¿Qué te parece crear un sistema para estudiar el mercado cuando está cerrado o simular situaciones de mercado? Aquí iniciaremos una nueva secuencia de artículos para tratar este tema.
Algoritmos de optimización de la población: Algoritmo de búsqueda gravitacional (GSA)
El GSA es un algoritmo de optimización basado en la población e inspirado en la naturaleza no viviente. La simulación de alta fidelidad de la interacción entre los cuerpos físicos, gracias a la ley de la gravedad de Newton presente en el algoritmo, permite observar la mágica danza de los sistemas planetarios y los cúmulos galácticos, capaz de hipnotizar en la animación. Hoy vamos a analizar uno de los algoritmos de optimización más interesantes y originales. Adjuntamos un simulador de movimiento de objetos espaciales.
Perceptrón multicapa y algoritmo de retropropagación (Parte 3): Integración con el simulador de estrategias - Visión general (I)
El perceptrón multicapa es una evolución del perceptrón simple, capaz de resolver problemas separables no linealmente. Junto con el algoritmo de retropropagación, es posible entrenar eficientemente esta red neuronal. En la tercera parte de la serie sobre el perceptrón multicapa y la retropropagación, mostraremos cómo integrar esta técnica con el simulador de estrategias. Esta integración permitirá utilizar análisis de datos complejos y tomar mejores decisiones para optimizar las estrategias de negociación. En este resumen, analizaremos las ventajas y los retos de la aplicación de esta técnica.
Teoría de categorías en MQL5 (Parte 2)
La teoría de categorías es una rama diversa y en expansión de las matemáticas, relativamente inexplorada aún en la comunidad MQL5. Esta serie de artículos tiene como objetivo destacar algunos de sus conceptos para crear una biblioteca abierta y seguir utilizando esta maravillosa sección para crear estrategias comerciales.
Recetas MQL5 - Base de datos de eventos macroeconómicos
El presente artículo analiza las posibilidades de trabajar con bases de datos que utilizan el motor SQLite como base. Hemos creado una clase CDatabase para usar de forma cómoda y eficaz los principios de la programación orientada a objetos. Posteriormente se utilizará para crear y gestionar una base de datos de eventos macroeconómicos. Asimismo, ofreceremos ejemplos de muchos métodos de la clase CDatabase.
Algoritmos de optimización de la población: Algoritmo de forrajeo bacteriano (Bacterial Foraging Optimisation — BFO)
La estrategia de búsqueda de alimento de la bacteria E.coli inspiró a los científicos para crear el algoritmo de optimización BFO. El algoritmo contiene ideas originales y enfoques prometedores para la optimización y merece ser investigado en profundidad.
Algoritmos de optimización de la población: Optimización de malas hierbas invasoras (IWO)
La asombrosa capacidad de las malas hierbas para sobrevivir en una gran variedad de condiciones inspiró la idea de un potente algoritmo de optimización. El IWO es uno de los mejores entre los analizados anteriormente.

Algoritmos de optimización de la población: Algoritmo de murciélago (Bat algorithm - BA)
Hoy analizaremos el algoritmo de murciélago (Bat algorithm - BA), que posee una sorprendente convergencia en funciones suaves.

Algoritmos de optimización de la población: Algoritmo de luciérnagas (Firefly Algorithm - FA)
Hoy analizaremos el método de optimización «Búsqueda con ayuda del algoritmo de luciérnagas» 'Firefly Algorithm Search' (FA). Tras modificar el algoritmo, este ha pasado de ocupar un lugar marginal a convertirse en un verdadero líder en la tabla de calificación.

Teoría de categorías en MQL5 (Parte 1)
La teoría de categorías es un área diversa y en expansión de las matemáticas, relativamente inexplorada aún en la comunidad MQL. Esta serie de artículos tiene como objetivo destacar algunos de sus conceptos para crear una biblioteca abierta y seguir utilizando esta maravillosa sección para crear estrategias comerciales.

Características del Wizard MQL5 que debe conocer (Parte 04): Análisis Discriminante Lineal
El tráder moderno está casi siempre a la búsqueda de nuevas ideas, probando constantemente nuevas estrategias, modificándolas y descartando las que han fracasado. En esta serie de artículos, trataremos de demostrar que el Wizard MQL5 es la verdadera columna vertebral para un tráder en su búsqueda.

Tablero de cotizaciones: Versión básica
Aquí te mostraré cómo crear esas pantallas en forma de banda, normalmente usadas para mostrar cotizaciones como en la bolsa, pero pura y simplemente usando MQL5, sin recurrir a programación externa complicada e innecesariamente sofisticada.

Redes neuronales: así de sencillo (Parte 26): Aprendizaje por refuerzo
Continuamos estudiando los métodos de aprendizaje automático. En este artículo, iniciaremos otro gran tema llamado «Aprendizaje por refuerzo». Este enfoque permite a los modelos establecer ciertas estrategias para resolver las tareas. Esperamos que esta propiedad del aprendizaje por refuerzo abra nuevos horizontes para la construcción de estrategias comerciales.

Redes neuronales: así de sencillo (Parte 25): Practicando el Transfer Learning
En los últimos dos artículos, hemos creado una herramienta que nos permite crear y editar modelos de redes neuronales. Ahora es el momento de evaluar el uso potencial de la tecnología de Transfer Learning en ejemplos prácticos.


Algoritmos de optimización de la población
Artículo de introducción a los algoritmos de optimización (AO). Clasificación. En el artículo, intentaremos crear un banco de pruebas (un conjunto de funciones) que servirá en el futuro para comparar los AO entre sí, e incluso, quizás, para identificar el algoritmo más universal de todos los ampliamente conocidos.

Redes neuronales: así de sencillo (Parte 24): Mejorando la herramienta para el Transfer Learning
En el último artículo, creamos una herramienta capaz de crear y editar arquitecturas de redes neuronales. Hoy querríamos proponerles continuar con el desarrollo de esta herramienta, para lograr que resulte más fácil de usar. En cierto modo, esto se aleja un poco de nuestro tema, pero estará de acuerdo con que la organización del espacio de trabajo desempeña un papel importante en el resultado final.

Redes neuronales: así de sencillo (Parte 23): Creamos una herramienta para el Transfer Learning
En esta serie de artículos, hemos mencionado el Aprendizaje por Transferencia más de una vez, pero hasta ahora no había sido más que una mención. Le propongo rellenar este vacío y analizar más de cerca el Aprendizaje por Transferencia.

Redes neuronales: así de sencillo (Parte 22): Aprendizaje no supervisado de modelos recurrentes
Continuamos analizando los algoritmos de aprendizaje no supervisado. Hoy hablaremos sobre el uso de autocodificadores en el entrenamiento de modelos recurrentes.

Trabajamos con matrices y vectores en MQL5
Para resolver problemas matemáticos, se han añadido a MQL5 matrices y vectores. Los nuevos tipos tienen métodos incorporados para escribir un código conciso y fácilmente comprensible que se acerque a una notación matemática. Los arrays son algo bueno, pero las matrices, en muchos casos, resultan mejores.

Metamodelos en el aprendizaje automático y el trading: Timing original de las órdenes comerciales
Metamodelos en el aprendizaje automático: Creación automática de sistemas comerciales sin apenas intervención humana: el Modelo decide por sí mismo cómo y cuándo comerciar.

Desarrollando un EA comercial desde cero (Parte 17): Acceso a los datos en la web (III)
En este artículo continuaremos a aprender cómo obtener datos de la web para utilizarlos en un EA. Así que pongamos manos a la obra, o más bien a empezar a codificar un sistema alternativo.

Desarrollando un EA de trading desde cero (Parte 16): Acceso a los datos en la Web (II)
Saber cómo introducir los datos de la Web en un EA no es tan obvio, o mejor dicho, no es tan simple que puede hacerse sin conocer y entender realmente todas las características que están presentes en MetaTrader 5.

Desarrollando un EA comercial desde cero (Parte 15): Acceso a los datos en la web (I)
Cómo acceder a los datos en la web dentro de MetaTrader 5. En la web tenemos varios sitios y lugares en los que una gran y vasta cantidad de información está disponible y accesible para aquellos que saben dónde buscar y cómo utilizar mejor esta información.

Tutorial de DirectX (Parte I): Dibujamos el primer triángulo
Este es un artículo introductorio sobre DirectX; en él describiremos las peculiaridades del trabajo con la API, ayudando al lector a comprender el orden de inicialización de sus componentes. Asimismo, ofreceremos un ejemplo sobre cómo escribir un script MQL que muestre un triángulo usando DirectX.

Websockets para MetaTrader 5 — Usando la API de Windows
En este artículo, usaremos WinHttp.dll para crear un cliente de websocket para los programas de MetaTrader 5. El cliente se implementará finalmente como una clase, y también se probará contra la API de websocket de Binary.com.

Usando AutoIt con MQL5
Descripción breve. En este artículo, exploraremos la creación de scripts del terminal MetraTrader 5 integrando MQL5 con AutoIt. En el presente material, abarcaremos cómo automatizar varias tareas manipulando la interfaz de usuario de los terminales, y también presentaremos una clase que utiliza la biblioteca AutoItX.

Perceptrón Multicapa y Algoritmo de Retropropagación (Parte II): Implementación en Python e integración en MQL5
Se ha puesto a disposición un paquete de Python con el propósito de desarrollar la integración en MQL, lo que abre las puertas a numerosas posibilidades como la exploración de datos, la creación y el uso de modelos de aprendizaje automático. Esta integración nativa de MQL5 en Python abre las puertas a muchas posibilidades de uso que nos permiten construir desde una simple regresión lineal a un modelo de aprendizaje profundo. Entendamos cómo instalar y preparar el entorno de desarrollo y usar algunas de las bibliotecas de aprendizaje automático.

Consejos de un programador profesional (parte I): guardado, depuración y compilación de códigos. Trabajando con proyectos y logs
Consejos de un programador profesional sobre métodos, técnicas y herramientas auxiliares para facilitar la programación.

Aproximación por fuerza bruta a la búsqueda de patrones (Parte IV): Funcionalidad mínima
En este artículo, mostraremos una versión mejorada de la fuerza bruta, basada en los objetivos establecidos en el artículo anterior, y trataremos de abarcar este tema de la forma más amplia posible usando los asesores y la configuración obtenidos con este método. También ofreceremos a la comunidad la posibilidad de probar la nueva versión del programa.

Aprendizaje de máquinas en sistemas comerciales con cuadrícula y martingale. ¿Apostaría por ello?
En este artículo, presentaremos al lector la técnica del aprendizaje automático para el comercio con martingale y cuadrícula. Para nuestra sorpresa, este enfoque, por algún motivo, no se ha tratado en absoluto en la red global. Después de leer el artículo, podremos crear nuestros propios bots.

Aplicación práctica de las redes neuronales en el trading (Parte 2). Visión por computadora
El uso de la visión por computadora permite entrenar redes neuronales con la representación visual de la tabla de precios y los indicadores. Este método nos permitirá utilizar con mayor libertad todo el complejo de indicadores técnicos, pues no requiere su suministro digital a la red neuronal.

Aproximación por fuerza bruta a la búsqueda de patrones (Parte II): Nuevos horizontes
Este artículo prosigue con el tema de la fuerza bruta, ofreciendo al algoritmo de nuestro programa nuevas posibilidades para el análisis de mercado, y acelerando la velocidad de análisis y la calidad de los resultados finales, lo cual brinda un punto de vista de máxima calidad sobre los patrones globales en el marco de este enfoque.

Buscando patrones estacionales en el mercado de divisas con la ayuda del algoritmo CatBoost
En el presente artículo, mostramos la posibilidad de crear modelos de aprendizaje automático con filtros temporales y también descubrimos la efectividad de este enfoque. Ahora, podremos descartar el factor humano, diciéndole simplemente al modelo: "Quiero que comercies a una hora determinada de un día concreto de la semana". Así, podremos delegar en el algoritmo la búsqueda de patrones.

Redes neuronales: así de sencillo (Parte 9): Documentamos el trabajo realizado
Ya hemos recorrido un largo camino y el código de nuestra biblioteca ha crecido de manera considerable. Resulta difícil monitorear todas las conexiones y dependencias. Y, obviamente, antes de proseguir con el desarrollo del proyecto, necesitaremos documentar el trabajo ya realizado y actualizar la documentación en cada paso posterior. Una documentación debidamente redactada nos ayudará a ver la integridad de nuestro trabajo.