![Cómo visualizar la historia del comercio multidivisa en informes con formato HTML y CSV](https://c.mql5.com/2/35/mql5-article-html-csv.png)
![Cómo visualizar la historia del comercio multidivisa en informes con formato HTML y CSV](https://c.mql5.com/i/articles/overlay.png)
Cómo visualizar la historia del comercio multidivisa en informes con formato HTML y CSV
Como sabemos, MetaTrader 5 ofrece la posibilidad de realizar simulaciones multidivisa desde su aparición. Esta función tiene mucha demanda entre la mayoría de los tráders, pero, por desgracia, no es tan universal como querríamos. En el presente artículo, ofrecemos varios programas para trazar gráficos con la ayuda de objetos gráficos usando como base la historia comercial de informes en los formatos HTML y CSV. El comercio con varios instrumentos puede analizarse paralelamente en varias subventanas, o en una sola ventana con la ayuda de la alternancia dinámica a una orden del usuario.
![Optimización paralela con el método de enjambre de partículas (Particle Swarm Optimization)](https://c.mql5.com/2/49/Parallel-Particle-Swarm-Optimization_600x314.jpg)
Optimización paralela con el método de enjambre de partículas (Particle Swarm Optimization)
El presente artículo describimos un modo de optimización rápida usando el método de enjambre de partículas, y presentamos una implementación en MQL lista para utilizar tanto en el modo de flujo único dentro de un EA, como en el modo paralelo de flujo múltiples como un complemento ejecutado en los agentes locales del simulador.
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IX): Compatibilidad con MQL4 - Preparando los datos](https://c.mql5.com/2/36/MQL5-avatar-doeasy__4.png)
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IX): Compatibilidad con MQL4 - Preparando los datos](https://c.mql5.com/i/articles/overlay.png)
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IX): Compatibilidad con MQL4 - Preparando los datos
En artículos anteriores, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la novena parte, hemos creado una clase que monitoreará los eventos de modificación de las órdenes y posiciones de mercado. En el presente artículo, comenzaremos a desarrollar la biblioteca para hacerla totalmente compatible con MQL4.
![Desarrollando un EA de trading desde cero (Parte 16): Acceso a los datos en la Web (II)](https://c.mql5.com/2/49/Developing_a_trading_Expert_Advisor_from_scratch_007_600x314.jpg)
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.
![Previsión usando modelos ARIMA en MQL5](https://c.mql5.com/2/55/Forecasting_with_ARIMA_models_in_MQL5_600x314.jpg)
Previsión usando modelos ARIMA en MQL5
En este artículo, continuaremos el desarrollo de la clase CArima para construir modelos ARIMA añadiendo métodos de predicción intuitivos.
![Aprendizaje automático y Data Science (Parte 07): Regresión polinomial](https://c.mql5.com/2/49/Data_Science_and_Machine_Learning_Part_07_Polynomial_Regression_600x314.jpg)
Aprendizaje automático y Data Science (Parte 07): Regresión polinomial
La regresión polinomial es un modelo flexible diseñado para resolver de forma eficiente problemas que un modelo de regresión lineal no puede gestionar. En este artículo, aprenderemos a crear modelos polinómicos en MQL5 y a sacar provecho de ellos.
![Comprensión y uso eficaz del simulador de estrategias MQL5](https://c.mql5.com/2/54/use_mql5_strategy_tester_effectively_600x314.jpg)
Comprensión y uso eficaz del simulador de estrategias MQL5
Para los desarrolladores de MQL5 resulta imperativo dominar herramientas importantes y valiosas. Una de esas herramientas es el simulador de estrategias. El presente artículo es una guía práctica para utilizar el simulador de estrategias MQL5.
![Redes neuronales: así de sencillo (Parte 14): Clusterización de datos](https://c.mql5.com/2/49/Neural_networks_made_easy_004_600x314.jpg)
Redes neuronales: así de sencillo (Parte 14): Clusterización de datos
Lo confieso: ha pasado más de un año desde que publiqué el último artículo. En tanto tiempo, me ha sido posible repensar mucho, desarrollar nuevos enfoques. Y en este nuevo artículo, me gustaría alejarme un poco del método anteriormente usado de aprendizaje supervisado, y sugerir una pequeña inmersión en los algoritmos de aprendizaje no supervisado. En particular, vamos a analizar uno de los algoritmos de clusterización, las k-medias.
![Stop Loss y Take Profit amigables para el tráder](https://c.mql5.com/2/60/Trader_friendly_stop_loss_and_take_profit_600x314.jpg)
Stop Loss y Take Profit amigables para el tráder
El stop loss y el take profit pueden tener una influencia significativa en los resultados de las transacciones. En este artículo, veremos varias formas de buscar órdenes stop óptimas.
![Enfoque ideal sobre el desarrollo y el análisis de sistemas comerciales](https://c.mql5.com/2/40/optimal-approach.png)
![Enfoque ideal sobre el desarrollo y el análisis de sistemas comerciales](https://c.mql5.com/i/articles/overlay.png)
Enfoque ideal sobre el desarrollo y el análisis de sistemas comerciales
En el presente artículo, trataremos de mostrar con qué criterio elegir un sistema o señal para invertir nuestro dinero, además de cuál es el mejor enfoque para desarrollar sistemas comerciales y por qué este tema es tan importante en el comercio en fórex.
![Otras clases en la biblioteca DoEasy (Parte 66): Clases de Colección de Señales MQL5.com](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__4.png)
![Otras clases en la biblioteca DoEasy (Parte 66): Clases de Colección de Señales MQL5.com](https://c.mql5.com/i/articles/overlay.png)
Otras clases en la biblioteca DoEasy (Parte 66): Clases de Colección de Señales MQL5.com
En este artículo, crearemos una clase de colección de señales del Servicio de señales de MQL5.com con funciones para gestionar las señales suscritas, y también modificaremos la clase del objeto de instantánea de la profundidad de mercado para mostrar el volumen total de la profundidad de mercado de compra y venta.
![Redes neuronales: así de sencillo (Parte 27): Aprendizaje Q profundo (DQN)](https://c.mql5.com/2/49/Neural_Networks_Easy_019_600x314.jpg)
Redes neuronales: así de sencillo (Parte 27): Aprendizaje Q profundo (DQN)
Seguimos explorando el aprendizaje por refuerzo. En este artículo, hablaremos del método de aprendizaje Q profundo o deep Q-learning. El uso de este método permitió al equipo de DeepMind crear un modelo capaz de superar a los humanos jugando a los videojuegos de ordenador de Atari. Nos parece útil evaluar el potencial de esta tecnología para las tareas comerciales.
![Aprendizaje automático y Data Science (Parte 16): Una nueva mirada a los árboles de decisión](https://c.mql5.com/2/62/midjourney_image_13862_46_406_3_600x314.jpg)
Aprendizaje automático y Data Science (Parte 16): Una nueva mirada a los árboles de decisión
En la última parte de nuestra serie sobre aprendizaje automático y trabajo con big data, vamos a volver a los árboles de decisión. Este artículo va dirigido a los tráders que desean comprender el papel de los árboles de decisión en el análisis de las tendencias del mercado. Asimismo, contiene toda la información básica sobre la estructura, la finalidad y el uso de estos árboles. Hoy analizaremos las raíces y ramas de los árboles algorítmicos y veremos cuál es su potencial en relación con las decisiones comerciales. También echaremos juntos un nuevo vistazo a los árboles de decisión y veremos cómo pueden ayudarnos a superar los retos de los mercados financieros.
![Algoritmos de optimización de la población: Algoritmo de luciérnagas (Firefly Algorithm - FA)](https://c.mql5.com/2/51/firefly_algorithm_600x314.jpg)
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.
![Otras clases en la biblioteca DoEasy (Parte 72): Seguimiento y registro de parámetros de los objetos de gráfico en la colección](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__10.png)
![Otras clases en la biblioteca DoEasy (Parte 72): Seguimiento y registro de parámetros de los objetos de gráfico en la colección](https://c.mql5.com/i/articles/overlay.png)
Otras clases en la biblioteca DoEasy (Parte 72): Seguimiento y registro de parámetros de los objetos de gráfico en la colección
En el presente artículo, finalizaremos el trabajo con las clases de los objetos de gráfico y sus colecciones. Implementaremos el seguimiento automático del cambio de las propiedades de los gráficos y sus ventanas, y también el almacenamiento de los parámetros en las propiedades del objeto. Estas mejoras nos permitirán en el futuro crear una funcionalidad de eventos para la colección de gráficos al completo.
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VIII): Eventos de modificación de órdenes y posiciones](https://c.mql5.com/2/36/MQL5-avatar-doeasy__3.png)
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VIII): Eventos de modificación de órdenes y posiciones](https://c.mql5.com/i/articles/overlay.png)
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VIII): Eventos de modificación de órdenes y posiciones
En artículos anteriores, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En el séptimo artículo, añadimos el seguimiento de los eventos de activación de órdenes StopLimit y preparamos la funcionalidad para monitorear el resto de eventos que tienen lugar con las órdenes y posiciones. En el presente artículo, vamos a crear una clase que monitoreará los eventos de modificación de las órdenes y posiciones de mercado.
![Aprendizaje automático y data science (Parte 04): Predicción de una caída bursátil](https://c.mql5.com/2/49/stock_market_crash_600x314.jpg)
Aprendizaje automático y data science (Parte 04): Predicción de una caída bursátil
En este artículo, intentaremos usar nuestro modelo logístico para predecir una caída del mercado de valores según las principales acciones de la economía estadounidense: NETFLIX y APPLE. Analizaremos estas acciones, y también usaremos la información sobre las anteriores caídas del mercado en 2019 y 2020. Veamos cómo funcionará nuestro modelo en las poco favorables condiciones actuales.
![Teoría de categorías en MQL5 (Parte 8): Monoides](https://c.mql5.com/2/54/Category-Theory-p8_600x314.jpg)
Teoría de categorías en MQL5 (Parte 8): Monoides
El presente artículo continúa la serie sobre la implementación de la teoría de categorías en MQL5. Aquí presentamos los monoides como un dominio (conjunto) que distingue la teoría de categorías de otros métodos de clasificación de datos al incluir reglas y un elemento de identidad.
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 45): Búferes de indicador de periodo múltiple](https://c.mql5.com/2/39/MQL5-avatar-doeasy-library__1.png)
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 45): Búferes de indicador de periodo múltiple](https://c.mql5.com/i/articles/overlay.png)
Trabajando con las series temporales en la biblioteca DoEasy (Parte 45): Búferes de indicador de periodo múltiple
En el artículo, comenzaremos a mejorar los objetos de búfer de indicador y la clase de colección de búferes para trabajar en los modos de periodo y símbolo múltiples. Asimismo, analizaremos el funcionamiento de los objetos de búfer para obtener y mostrar los datos desde cualquier marco temporal en el gráfico actual del símbolo actual.
![Algoritmos de optimización de la población: Búsqueda armónica (HS)](https://c.mql5.com/2/51/Harmony_Search_600x314.jpg)
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?
![Redes neuronales: así de sencillo (Parte 16): Uso práctico de la clusterización](https://c.mql5.com/2/49/Neural_networks_made_easy_006_600x314.jpg)
Redes neuronales: así de sencillo (Parte 16): Uso práctico de la clusterización
En el artículo anterior, creamos una clase para la clusterización de datos. En este artículo, queremos compartir con el lector diferentes opciones de uso de los resultados obtenidos para resolver problemas prácticos en el trading.
![Redes neuronales: así de sencillo (Parte 19): Reglas asociativas usando MQL5](https://c.mql5.com/2/49/Neural_Networks_Easy_011_600x314.jpg)
Redes neuronales: así de sencillo (Parte 19): Reglas asociativas usando MQL5
Continuamos con el tema de la búsqueda de reglas asociativas. En el artículo anterior, vimos los aspectos teóricos de este tipo de problemas. En el presente artículo, mostraremos la implementación del método FP-Growth usando MQL5. Y también pondremos a prueba nuestra aplicación con datos reales.
![Metamodelos en el aprendizaje automático y el trading: Timing original de las órdenes comerciales](https://c.mql5.com/2/49/metamodels_ml_trading_original_timing_orders_600x314.jpg)
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.
![Redes neuronales: así de sencillo (Parte 20): Autocodificadores](https://c.mql5.com/2/49/Neural_Networks_Easy_012_600x314.jpg)
Redes neuronales: así de sencillo (Parte 20): Autocodificadores
Continuamos analizando los algoritmos de aprendizaje no supervisado. El lector podría preguntarse sobre la relevancia de las publicaciones recientes en el tema de las redes neuronales. En este nuevo artículo, retomaremos el uso de las redes neuronales.
![Gradient boosting en el aprendizaje de máquinas transductivo y activo](https://c.mql5.com/2/49/gradient_boosting_catboost_ml_600x314.jpg)
Gradient boosting en el aprendizaje de máquinas transductivo y activo
En este artículo, el lector podrá familiarizarse con los métodos de aprendizaje automático activo basados en datos reales, descubriendo además cuáles son sus ventajas y desventajas. Puede que estos métodos terminen por ocupar un lugar en su arsenal de modelos de aprendizaje automático. El término transducción fue introducido por Vladímir Naúmovich Vápnik, el inventor de la máquina de vectores de soporte (SVM).
![Redes neuronales: así de sencillo (Parte 21): Autocodificadores variacionales (VAE)](https://c.mql5.com/2/49/Neural_Networks_Easy_013_600x314.jpg)
Redes neuronales: así de sencillo (Parte 21): Autocodificadores variacionales (VAE)
En el anterior artículo, vimos el algoritmo del autocodificador. Como cualquier otro algoritmo, tiene ventajas y desventajas. En la implementación original, el autocodificador se encarga de dividir los objetos de la muestra de entrenamiento tanto como sea posible. Y en este artículo, en cambio, hablaremos de cómo solucionar algunas de sus deficiencias.
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 44): Las clases de colección de los objetos de búferes de indicador](https://c.mql5.com/2/39/MQL5-avatar-doeasy-library.png)
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 44): Las clases de colección de los objetos de búferes de indicador](https://c.mql5.com/i/articles/overlay.png)
Trabajando con las series temporales en la biblioteca DoEasy (Parte 44): Las clases de colección de los objetos de búferes de indicador
En el artículo, analizaremos la creación de la clase de colección de los objetos de búferes de indicador y pondremos a prueba la posibilidad de crear cualquier número de búferes para los programas-indicadores, así como la posibilidad de trabajar con estos (el número máximo de búferes que se pueden crear en los indicadores MQL es de 512).
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VI): Eventos en la cuenta con compensación](https://c.mql5.com/2/36/MQL5-avatar-doeasy__1.png)
![Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VI): Eventos en la cuenta con compensación](https://c.mql5.com/i/articles/overlay.png)
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VI): Eventos en la cuenta con compensación
En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la quinta parte, hemos creado las clases de los eventos comerciales y la colección de eventos desde donde se envían los eventos a la objeto de la biblioteca Engine y al gráfico del programa de control. En esta parte de la descripción, vamos a añadir la posibilidad de trabajar con la biblioteca en las cuentas de tipo compensación.
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 48): Indicadores de periodo y símbolo múltiples en un búfer en una subventana](https://c.mql5.com/2/40/MQL5-avatar-doeasy-library.png)
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 48): Indicadores de periodo y símbolo múltiples en un búfer en una subventana](https://c.mql5.com/i/articles/overlay.png)
Trabajando con las series temporales en la biblioteca DoEasy (Parte 48): Indicadores de periodo y símbolo múltiples en un búfer en una subventana
En el presente artículo, analizaremos la creación de indicadores estándar de periodo y símbolo múltiples que utilizan un búfer de indicador para sus construcciones, y que funcionan en una subventana del gráfico. Asimismo, prepararemos las clases de la biblioteca para trabajar con los indicadores estándar que funcionan en la ventana principal del programa, o que tienen más de un búfer para mostrar sus datos.
![Aprendizaje automático y Data Science (Parte 9): Algoritmo de k vecinos más próximos (KNN)](https://c.mql5.com/2/50/k_nearest_neighbors_algorithm_knn_600x314.jpg)
Aprendizaje automático y Data Science (Parte 9): Algoritmo de k vecinos más próximos (KNN)
Se trata de un algoritmo perezoso que no aprende a partir de una muestra de entrenamiento, sino que almacena todas las observaciones disponibles y clasifica los datos en cuanto recibe una nueva muestra. A pesar de su sencillez, este método se usa en muchas aplicaciones del mundo real.
![Redes neuronales: así de sencillo (Parte 34): Función cuantílica totalmente parametrizada](https://c.mql5.com/2/50/Neural_Networks_Made_Easy_quantile-parameterized_600x314.jpg)
Redes neuronales: así de sencillo (Parte 34): Función cuantílica totalmente parametrizada
Seguimos analizando algoritmos de aprendizaje Q distribuidos. En artículos anteriores hemos analizado los algoritmos de aprendizaje Q distribuido y cuantílico. En el primero, enseñamos las probabilidades de los rangos de valores dados. En el segundo, enseñamos los rangos con una probabilidad determinada. Tanto en el primer algoritmo como en el segundo, usamos el conocimiento a priori de una distribución y enseñamos la otra. En el presente artículo, veremos un algoritmo que permite al modelo aprender ambas distribuciones.
![Trabajando con las series temporales en la biblioteca DoEasy (Parte 49): Indicadores estándar de período, símbolo y búfer múltiples](https://c.mql5.com/2/49/doeasy_049_600x314.jpg)
Trabajando con las series temporales en la biblioteca DoEasy (Parte 49): Indicadores estándar de período, símbolo y búfer múltiples
En el presente artículo, vamos a mejorar las clases de la biblioteca para tener la posibilidad de crear los indicadores estándar de período y símbolo múltiples que requieren varios búferes de indicador para visualizar sus datos.
![Redes neuronales: así de sencillo (Parte 18): Reglas asociativas](https://c.mql5.com/2/49/Neural_Networks_Easy_010_600x314.jpg)
Redes neuronales: así de sencillo (Parte 18): Reglas asociativas
Como continuación de esta serie, hoy presentamos otro tipo de tarea relacionada con los métodos de aprendizaje no supervisado: la búsqueda de reglas asociativas. Este tipo de tarea se usó por primera vez en el comercio minorista para analizar las cestas de la compra. En este artículo, hablaremos de las posibilidades que ofrece el uso de dichos algoritmos en el trading.
![Desarrollo de un sistema de repetición (Parte 32): Sistema de órdenes (I)](https://c.mql5.com/2/59/sistema_de_Replay_32__600x314.jpg)
Desarrollo de un sistema de repetición (Parte 32): Sistema de órdenes (I)
De todas las cosas desarrolladas hasta ahora, esta, como seguramente también notarás y con el tiempo estarás de acuerdo, es la más desafiante de todas. Lo que tenemos que hacer es algo simple: hacer que nuestro sistema simule lo que hace un servidor comercial en la práctica. Esto de tener que implementar una forma de simular exactamente lo que haría el servidor comercial parece simple. Al menos en palabras. Pero necesitamos hacer esto de manera que, para el usuario del sistema de repetición/simulación, todo suceda de la manera más invisible o transparente posible.
![Aprendizaje automático y Data Science (Parte 13): Analizamos el mercado financiero usando el análisis de componentes principales (ACP)](https://c.mql5.com/2/52/pca_600x314.jpg)
Aprendizaje automático y Data Science (Parte 13): Analizamos el mercado financiero usando el análisis de componentes principales (ACP)
Hoy intentaremos mejorar cualitativamente el análisis de los mercados financieros utilizando el Análisis de Componentes Principales (ACP). Asimismo, aprenderemos cómo este método puede ayudarnos a identificar patrones ocultos en los datos, detectar tendencias ocultas del mercado y optimizar las estrategias de inversión. En este artículo veremos cómo el método de ACP aporta una nueva perspectiva al análisis de datos financieros complejos, ayudándonos a ver ideas que hemos pasado por alto con los enfoques tradicionales. ¿La aplicación del método ACP en estos mercados financieros ofrece una ventaja competitiva y ayuda a ir un paso por delante?
![Implementando OLAP en la negociación (Parte 2): Visualización de los resultados del análisis interactivo de los datos multidimensionales](https://c.mql5.com/2/36/OLAP_02__1.png)
![Implementando OLAP en la negociación (Parte 2): Visualización de los resultados del análisis interactivo de los datos multidimensionales](https://c.mql5.com/i/articles/overlay.png)
Implementando OLAP en la negociación (Parte 2): Visualización de los resultados del análisis interactivo de los datos multidimensionales
En este artículo, se consideran diversos aspectos del desarrollo de la interfaz gráfica interactiva de un programa MQL diseñado para el procesamiento analítico en línea (OLAP) del historial de la cuenta y de los informes comerciales. Para obtener un resultado visual, se usan las ventanas maximizadas y de escala, una disposición adaptable de los controles «de goma» y un nuevo control para mostrar diagramas. A base de eso, fue implementado GUI con una selección de indicadores a lo largo de los ejes de coordenadas, funciones agregadas, tipos de los gráficos y ordenaciones.
![Otras clases en la biblioteca DoEasy (Parte 69): Clases de colección de objetos de gráfico](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__7.png)
![Otras clases en la biblioteca DoEasy (Parte 69): Clases de colección de objetos de gráfico](https://c.mql5.com/i/articles/overlay.png)
Otras clases en la biblioteca DoEasy (Parte 69): Clases de colección de objetos de gráfico
A partir de este artículo, comenzaremos el desarrollo de una colección de clases de objetos de gráfico que almacenará una colección de lista de objetos de gráfico con sus subventanas y los indicadores en ellas, y nos permitirá trabajar con cualquier gráfico seleccionado y sus subventanas, o bien directamente con una lista de varios gráficos al mismo tiempo.
![Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico](https://c.mql5.com/2/42/MQL5-avatar-doeasy-library__9.png)
![Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico](https://c.mql5.com/i/articles/overlay.png)
Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico
En el presente artículo, crearemos la funcionalidad necesaria para monitorear algunos eventos de los objetos del gráfico: añadir y eliminar gráficos de símbolos, añadir y eliminar subventanas en el gráfico, y también añadir/eliminar/cambiar indicadores en las ventanas del gráfico.
![Algoritmos de optimización de la población: Búsqueda de bancos de peces (Fish School Search — FSS)](https://c.mql5.com/2/50/Fish_School_cover_600x314.jpg)
Algoritmos de optimización de la población: Búsqueda de bancos de peces (Fish School Search — FSS)
La búsqueda de bancos de peces (FSS) es un nuevo algoritmo de optimización moderno inspirado en el comportamiento de los peces en un banco, la mayoría de los cuales, hasta el 80%, nadan en una comunidad organizada de parientes. Se ha demostrado que las asociaciones de peces juegan un papel importante a la hora de buscar alimento y protegerse contra los depredadores de forma eficiente.
![Desarrollo de un sistema de repetición — Simulación de mercado (Parte 20): FOREX (I)](https://c.mql5.com/2/56/replay_p20_600x314.jpg)
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 20): FOREX (I)
La intención inicial de este artículo no será cubrir todas las características de FOREX, sino más bien adaptar el sistema de manera que puedas realizar al menos una repetición del mercado. La simulación quedará para otro momento. Sin embargo, en caso de que no tengas los ticks y solo tengas las barras, con un poco de trabajo, puedes simular posibles transacciones que podrían haber ocurrido en FOREX. Esto será hasta que te muestre cómo adaptar el simulador. El hecho de intentar trabajar con datos provenientes de FOREX dentro del sistema sin modificarlo conlleva errores de rango.