Planes de desarrollo para el comprobador de estrategias de MetaTrader 5

 

No te dejes intimidar por el estado medio de los probadores en las betas. Hemos lanzado a propósito todas las versiones intermedias en betas para obtener los resultados más rápidamente.


Cómo estamos reformando el probador de estrategias:

  1. Para facilitar la comprensión de los novatos, estamos introduciendo un nuevo aspecto de la página de inicio del probador, donde se pueden ver las opciones de investigación:




  2. Se hace gran hincapié en el almacenamiento de todos los resultados de las pruebas anteriores, donde una búsqueda fácil le permitirá volver a ver las pruebas anteriores

    Un cuadro de búsqueda facilita la búsqueda de resultados anteriores, además de la descarga directa de un archivo.

  3. Entre las pruebas anteriores haremos que se puedan hacer comparaciones






  4. Es probable que añadamos nuevas opciones de optimización

  5. Ampliaremos drásticamente los ajustes detallados de las pruebas con las comisiones, las condiciones de activación de las órdenes, el deslizamiento, etc.

    Por ahora, en las versiones beta hemos habilitado el modo de pruebas en pips que reduce considerablemente la cantidad de modelado y acelera las pruebas.

    Más adelante presentaremos el conjunto completo de ajustes.

  6. Reescribiremos los mecanismos de preparación de los datos de origen para reducir los costes de sincronización de los agentes

    La aceleración se notará especialmente en los agentes locales, donde no tendremos que bombear grandes cantidades de datos y no tendremos múltiples copias de datos históricos.

  7. Nuevo motor de visualización en 3D y visualización de los resultados de las pruebas en ventanas completas

  8. Reforma de la red de clusters, con un control más detallado de las condiciones de cada experto, para poder seleccionar individualmente un grupo de agentes

    El objetivo es agilizar al máximo las tareas, para que no haya retrasos por culpa de agentes inadecuados o lentos.


Además, el propio lenguaje MQL5 se está desarrollando activamente, se han incluido ámbitos, se ha ampliado el soporte de plantillas, se trabaja con clases creadas implícitamente, etc.

Lo más probable es que pronto se incluyan nuevas funciones:

  • Bases de datos SQLite
  • Ampliación de la biblioteca de gráficos, incluido el 3D


Más adelante pasaremos a la revolucionaria tarea de incluir módulos en el lenguaje.

Son bibliotecas C++ recompiladas en formato EX5 y disponibles para su uso directo desde el código MQL5. Es decir, empezaremos a trabajar en la re-compilación de las bibliotecas opsorced, cuando sus llamadas de bajo nivel/peligrosas estén completamente mapeadas a nuestro runtime seguro y se hagan wrappers seguros para el código MQL5.

De este modo, se pretende aumentar la funcionalidad del lenguaje sin comprometer la seguridad. Los conjuntos de módulos sólo están disponibles para nosotros, lo que proporciona un cierto nivel de seguridad a las soluciones resultantes.

Este mecanismo ya funciona.

Por ejemplo, parte de la funcionalidad del entorno MQL5 se ha incorporado de forma nativa al código EX5 durante la compilación, lo que proporciona una muy buena optimización a nivel de compilación.

 

Renat Fatkhullin:

Ampliaremos drásticamente la configuración de pruebas detalladas con comisiones, condiciones de activación de órdenes, deslizamientos, etc.

Esta adición sería una de las primeras que se verían.

 

Comparar las carreras es algo estupendo.

También existe esta necesidad de los días de barba que se han popularizado las soluciones de terceros: combinar varias carreras en una sola.

Es decir, se ejecutan varias CTs "simultáneamente", pero se construye su historia global y su patrimonio.

 

Foro sobre comercio, sistemas de comercio automatizados y pruebas de estrategias

Bibliotecas: MultiTester

fxsaber, 2019.07.22 01:54

Un probador se convierte en un trillador muy fuerte cuando está dotado de la capacidad de automatización.

Si los desarrolladores incluyen en MQL las funciones de gestión de los probadores internos(establecer la fecha/símbolo/modo, ejecutar la mejor tirada individual, guardar el informe, etc. ), será cien veces más fuerte que todos los competidores potenciales. Y pasará de ser un juguete serio a una herramienta de investigación sin precedentes, ya que se convertirá en un auténtico trillador informático.

Pero dudo que lo haga. Si alguien puede ayudar a automatizar el resaltado, sería genial.


TesterSetInfo, TesterGetInfo.

 
fxsaber:

También hay una necesidad de la época de las barbas que se ha popularizado en las soluciones de terceros: combinar varios pases en uno.

Es decir, se ejecutan varias CTs "simultáneamente", pero se construye su historia global y su patrimonio.

Apoyar a un colega. Tengo que implementarlo en el lado, pero por otro lado, ¿cómo organizarlo en el probador? Hm, añadir algún atributo a dicho pase como "Portfolio #". - ¿tal vez así?

 
Aleksey Vyazmikin:

Apoyar a un colega. Tengo que implementar esto en el lado, pero por otro lado, ¿cómo organizar esto en el probador? Um, añadir algún tipo de atributo a tal pase como "Cartera #" - ¿tal vez así?

Asigne manualmente los agentes a cada programa que se esté probando al mismo tiempo.
Por ejemplo, tenemos 8 agentes, y 4 de ellos están asignados a un experto y 4 a otro. En consecuencia, sólo se pueden probar dos programas mql simultáneamente.
O bien, a cada experto se le asignarán 2 agentes, y entonces los mismos 8 agentes ya estarán probando 4 programas, etc.

O bien, asignar automáticamente a los agentes, como en una carrera, el primero que se lleve al agente, el primero que se lleve al agente.
Un agente ha completado una tarea, vuelve a esperar hasta que la recoja de la cola de tareas, etc.
Así, el número de programas probados simultáneamente aumenta.

Cada programa que se prueba al mismo tiempo, asigna automáticamente su propio entorno virtual de pruebas.
Y cada prueba se ejecuta por sí misma al mismo tiempo, después de completar todas las pasadas, los resultados de cada programa se resumen y se calculan los valores medios.
Se muestran las estadísticas globales.

 
Roman:

Asignamos manualmente los agentes a cada programa que se prueba al mismo tiempo.
Por ejemplo, tenemos 8 agentes y 4 están asignados a un Asesor Experto, y 4 a otro. Como resultado, sólo se pueden probar dos programas mql simultáneamente.
O bien, asignar automáticamente a los agentes, como una carrera, de modo que quien consiga el agente primero, consiga lo mismo.
El agente ha completado una tarea y está esperando a ser recogido de nuevo de la cola de tareas, etc.
Así, el número de programas probados simultáneamente aumenta.

A cada programa que se va a probar al mismo tiempo, se le asigna automáticamente su propio entorno virtual de pruebas.
Y cada prueba se ejecuta por sí misma al mismo tiempo, después de la finalización de todos los pases, el resultado de cada programa se resume, y se muestran las estadísticas generales.

Mi variante es más simple y funcional, le permite probar tantos EAs y sus configuraciones como necesite, sin ninguna molestia innecesaria. Su variante requiere un gestor para distribuir las tareas... Es necesario añadir un gestor de pruebas de carteras que está formado por un usuario y donde se especifica el Asesor Experto y el conjunto / configuración, así como el ID de la cartera - para poder comparar diferentes carteras, en este caso, será universal y funcional.

 
Aleksey Vyazmikin:

Mi variante es más sencilla y funcional, le permite probar tantos EAs y sus configuraciones como quiera sin ninguna molestia innecesaria. Su variante requiere un gestor para distribuir las tareas... Necesitamos añadir un gestor para la comprobación de carteras, que esté formado por un usuario y donde se indique el Asesor Experto y el conjunto/configuración del mismo, así como el ID de la cartera - para poder comparar diferentes carteras, entonces será universal y funcional.

Por lo tanto, tenemos dos enfoques.
O pruebe cada programa secuencialmente, y luego genere los resultados por el número de cartera, para las estadísticas generales.
O probar cada programa simultáneamente en modo multihilo, y mostrar inmediatamente las estadísticas generales de estos conjuntos.
La única diferencia está en la acción de configuración inicial, o en la generación manual de estadísticas globales después de la prueba.
Y posiblemente en la velocidad general de ejecución de las pruebas.

p.d. MetaQuotes: a veces los sueños se hacen realidad.

 

Renat, por favor, añade otra opción, MQ Old, a la elección del estilo ME. La que había antes. Es algo pequeño para ti, pero para muchos usuarios les ahorrará muchos nervios.

No quiero acostumbrarme a un nuevo estilo... Estoy bastante contento con el anterior.

Gracias.

 

¿Qué es una prueba de esfuerzo?

(es decir, de qué funcionalidad se trata)

 

¡Grandes noticias!

Esto fomentará el paso a MT5.

Después de todo, todo el mundo va a reescribir los programas para mt5 con el fin de probarlos allí...