Optimización basada en biogeografía — Biogeography-Based Optimization (BBO)
La optimización basada en biogeografía (BBO) supone un elegante método de optimización global inspirado en los procesos naturales de migración de especies entre islas de archipiélagos. El algoritmo se basa en una idea simple pero poderosa: las soluciones de alta calidad comparten activamente sus características, mientras que las soluciones de baja calidad adoptan activamente nuevas características, creando un flujo natural de información desde las mejores soluciones hacia las peores. El BBO, un operador de mutación adaptativa único que ofrece un excelente equilibrio entre exploración y explotación, demuestra una alta eficiencia en una variedad de tareas.
Características del Wizard MQL5 que debe conocer (Parte 62): Uso de patrones del ADX y el CCI con aprendizaje por refuerzo TRPO
El oscilador ADX y el oscilador CCI son indicadores de seguimiento de tendencias y de impulso que pueden combinarse al desarrollar un asesor experto. Retomamos donde lo dejamos en el artículo anterior y analizamos cómo es posible llevar a cabo el entrenamiento en condiciones reales y la actualización del modelo que hemos desarrollado gracias al aprendizaje por refuerzo. Estamos utilizando un algoritmo que aún no hemos tratado en esta serie, conocido como «optimización de políticas de región de confianza» (Trusted Region Policy Optimization, TRPO). Y, como siempre, la creación de asesores expertos mediante el Asistente de MQL5 (Wizard MQL5) nos permite configurar nuestros modelos para su prueba de forma mucho más rápida y, además, de manera que puedan distribuirse y probarse con diferentes tipos de señales.
Descarga de datos del Fondo Monetario Internacional en Python
Descarga de datos del Fondo Monetario Internacional en Python: extraemos datos del FMI para su uso en estrategias monetarias macroeconómicas. ¿Cómo puede la macroeconomía ayudar a los tráders y tráders algorítmicos?
Simulación de mercado (Parte 24): Iniciando SQL (VII)
En el artículo anterior terminamos de hacer las debidas presentaciones sobre SQL. Así, lo que me había propuesto mostrar y explicar sobre SQL, a mi juicio, quedó debidamente explicado. Esto, para que todos los que vengan a ver el sistema de repetición/simulador en construcción consigan, como mínimo, tener alguna noción de lo que puede estar ocurriendo allí. Esto se debe a que no tiene sentido programar diversas cosas que SQL puede cubrir perfectamente.
Simulación de mercado: Iniciando SQL en MQL5 (I)
En este artículo, comenzaremos a explorar el uso de SQL dentro de un código MQL5. Veremos cómo podemos crear una base de datos. O, mejor dicho, cómo podemos crear un archivo de base de datos en SQLite, utilizando, para ello, recursos o procedimientos incluidos en el lenguaje MQL5. Veremos también cómo crear una tabla y, después, cómo crear una relación entre tablas mediante una clave primaria y una clave foránea. Todo esto usando, nuevamente, MQL5. Veremos lo sencillo que es crear un código que, en el futuro, podrá portarse a otras implementaciones de SQL, usando una clase que nos ayude a ocultar la implementación creada. Y, lo más importante de todo, veremos que, en diversos momentos, podemos correr el riesgo de que algo no salga bien al usar SQL. Esto se debe a que, dentro del código MQL5, un código SQL siempre se colocará dentro de una STRING.
Herramientas de trading de MQL5 (Parte 1): Creación de una herramienta interactiva de asistencia para operaciones con órdenes pendientes
En este artículo, presentamos el desarrollo de una herramienta interactiva de asistencia para el trading en MQL5, diseñada para simplificar la colocación de órdenes pendientes en el mercado de divisas. Describimos el diseño conceptual, centrándonos en una interfaz gráfica de usuario (GUI) intuitiva que permite establecer visualmente en el gráfico los niveles de entrada, stop-loss y take-profit. Además, detallamos la implementación en MQL5 y el proceso de backtesting para garantizar la fiabilidad de la herramienta, sentando así las bases para las funciones avanzadas que se describen en las siguientes partes.
Simulación de mercado: iniciando SQL en MQL5 (II)
Aunque muchos creen que podemos incluir sin problemas código SQL dentro de otro código, por lo general esto no es así. El motivo es que el código SQL siempre se incorpora al ejecutable como un string. Y este hecho de colocar el código SQL como string, si bien no genera inconvenientes en fragmentos pequeños, puede terminar provocándonos bastantes dolores de cabeza.
Del básico al intermedio: Eventos de mouse
Este artículo es uno de esos en los que, definitivamente, no basta con ver el código y estudiarlo para entender qué ocurre. De hecho, es necesario crear una aplicación ejecutable y usarla en cualquier gráfico. Esto, para poder entender pequeños detalles que, de otro modo, son muy complicados de comprender. Como, por ejemplo, la combinación del teclado con el mouse para construir ciertos tipos de cosas.