Comprobación automática de los productos en el mercado (preguntas y sugerencias) - página 5

 
Rashid Umarov:

Esto ya se ha corregido.

Gracias.

 
Una vez más me gustaría señalar a los representantes de MetaQuotes que sería deseable que la validación automática fuera más inteligente y flexible. No tiene sentido ni justificación meter todos los productos en el mismo saco. En particular, esto se aplica al error "el probador tarda demasiado". Al no disponer de criterios claros, ni de la descripción del proceso y la infraestructura de las pruebas (lo que se hizo al menos en el marco de los anteriores campeonatos de comercio algorítmico), ni de información de diagnóstico más o menos completa, los desarrolladores de aplicaciones tienen que averiguar por vía telepática o a tientas cómo embutir el producto en el lecho de Procusto del autovalidador.

Por ejemplo, está claro que en el caso de los indicadores el número de búferes calculados y su finalidad directa influyen objetivamente en el límite de velocidad de ejecución. Si el indicador está destinado al cálculo de estadísticas sobre ticks en décimas de nivel (todos los ticks sin huecos, es decir, todo lo que se ha recibido desde el evento anterior OnCalculate se lee a través de CopyTicksRange), no puede tener los mismos requisitos, como el precio de cierre MAC.

Por supuesto, el perfilador y los métodos de cálculo económico ya existen, la refactorización tarda días, pero el "probador tarda demasiado" sigue vigente. Utilizando la mínima información disponible sobre los pares y los plazos probados (EURUSD H1, XAUUSD D1, GBPUSD M30, EURUSD M1), ejecuto 4 pruebas específicas en un ordenador de tamaño medio y obtengo tiempos de ejecución en el rango de 1,5-2 minutos por par. Por qué le falta una hora al autovalidador, no lo sé y no tengo forma de saberlo. La falta de retroalimentación (moderadores humanos previamente presentes) no permite resolver el problema. Antes de la introducción del autovalidador, el producto se moderaba con éxito.

Para que el mercado se actualice convenientemente (incluso para el desarrollador) y ofrezca a los usuarios productos de calidad con diferentes funcionalidades, el soporte debe estar presente, imho. Ahora la situación es tal que los productos están siendo empujados a la zona gris - fuera del Mercado. Si la autovalidación no puede hacerse sin cortar el producto, la única salida es ofrecer una nueva versión del producto directamente a los clientes.

PS. Y una pequeña adición. Según el perfilador, todo el procesamiento de OnCalculate tarda 11 segundos de un minuto y medio de la prueba anual. Así pues, el factor de paso de velocidad de un indicador concreto depende sólo en un 12% del propio indicador y, en mucha mayor medida, del probador. Es decir, la frase " el probador tarda demasiado" debe entenderse literalmente: "el probador se retrasa". ¿Y de quién es el problema? ¿Cómo puede un desarrollador de MQL ser responsable de acelerar el probador de MQ?
 
Stanislav Korotky:
PS. Y una pequeña adición. Según el perfilador, todo el procesamiento de OnCalculate tarda 11 segundos de un minuto y medio de la prueba anual. Así pues, el factor de paso de velocidad de un indicador concreto depende sólo en un 12% del propio indicador y, en mucha mayor medida, del probador. Es decir, la frase " el probador tarda demasiado" debe entenderse literalmente: "el probador se retrasa". ¿Y de quién es el problema? ¿Cómo puede el desarrollador de MQL ser responsable de la aceleración del probador de MQ?

Algo no está claro. Incluso las garrapatas reales se preparan más rápido. No hay nada que hacer allí en un minuto y medio.

¿No se crean objetos en el nivel principal?

 
Stanislav Korotky:
PS. Y una pequeña adición. Según el perfilador, de un minuto y medio de la prueba anual todo el procesamiento de OnCalculate tarda 11 segundos. Así pues, el factor de superación de la prueba de velocidad por parte de un indicador específico depende sólo en un 12% del propio indicador y mucho más del probador. Es decir, la frase " el probador tarda demasiado" debe entenderse literalmente: "el probador se retrasa". ¿Y de quién es el problema? ¿Cómo puede el desarrollador de MQL ser responsable de acelerar el probador de MQ?

Los registros del autovalidador mostraron que la prueba en M1 no puede pasar el intervalo mensual en una hora .

test on EURUSD:M1, from 01.5.2018 to 01.6.2018, deposit 1, model 1, execution delay 1 ms 

Mientras que en H1 el mismo indicador pasa la prueba en un par de minutos.

test on EURUSD:H1, from 01.5.2017 to 01.6.2017, deposit 10000, model 1, execution delay 1 ms 

Busque la razón en su código.

 
MetaQuotes Software Corp.:

Los registros del autovalidador mostraron que la prueba en M1 no puede pasar el intervalo mensual en una hora .

Mientras que en H1 el mismo indicador pasa la prueba en un par de minutos.

Busque la causa en su código.

Desgraciadamente, no veo un retraso de horas en los fragmentos de registro anteriores, pero probablemente sólo sean necesarios para resaltar el mes... Lo he comprobado yo mismo, no veo ningún atasco, puedo enviarte el registro en mi mensaje personal.

¿Hay errores en los registros (que no se muestran en el informe en el sitio)?

 
Andrey Khatimlianskii:

Aquí hay algo sospechoso. Incluso las tics reales se preparan más rápido. No hay nada que hacer durante un minuto y medio.

¿No se crean objetos en el nivel principal?

Por supuesto que hay objetos, pero el perfilador debería haberlos destacado también, ¿no es así? Todos los constructores/destructores están ahí. Al ordenar por tiempo de ejecución, OnCalculate está en la parte superior, como se esperaba. Los indicadores se comprueban en modo visual: hay una visualización.

Esto es de la prueba M1 del EURUSD para 2018:

2019.10.10 18:43:30.736 EURUSD,M1: 26463085 ticks, 371934 bars generated. Environment synchronized in 0:00:00.331. Test passed in 0:04:36.710 (including ticks preprocessing 0:00:03.479).

Y esto es lo que hay en el perfilador (54 segundos):


OnCalculate 449 26463086 54 302 661 99.99%
 
Hola me ha desaparecido el Market en mi terminal no puedo instalar asesores e indicadores desde el Market la reinstalación del terminal no ha servido así como los productos comprados anteriormente no se actualizan en el market quien sabe como solucionar el problema
Archivos adjuntos:
 
Prostocar:
Hola me ha desaparecido el Market en el terminal no puedo instalar asesores e indicadores desde el Market la reinstalación del terminal no ha servido así como los productos comprados anteriormente no se actualizan en el market quien sabe como solucionar el problema

Comprueba la versión de internet explorer. Existe la sospecha de que está volando.
 
Stanislav Korotky:

Los objetos están ahí, por supuesto, pero el perfilador debería haberlos resaltado también, ¿no es así? Todos los constructores/destructores están ahí. Al ordenar por tiempo de ejecución, OnCalculate está en la parte superior, como se esperaba. Los indicadores se prueban en el modo visual - hay una representación allí.

Sí, efectivamente, me olvidé de "@global_initializations".

Resulta que el dibujo de las barras y los búferes de los indicadores en sí mismo lleva mucho tiempo...

Y si compilas para liberar y ejecutas el visualizador en el mismo intervalo, desplazándote directamente hasta el final ("saltar a..."), ¿cuánto tiempo tarda?

 
Andrey Khatimlianskii:

Resulta que dibujar las barras y los búferes de los indicadores por sí mismo lleva tanto tiempo?

Y si compilas para liberar y ejecutas el visualizador en el mismo intervalo, desplazándote directamente hasta el final ("saltar a..."), ¿cuánto tiempo tarda?

Acelerado. 2018 de 4 minutos a 1,5 minutos, 2019 de 1,5 minutos a 35 segundos. Y el falso indicador de un búfer, que no cuenta nada, hace la prueba con el visualizador en 53 segundos, y con el desplazamiento en 12 segundos.

Pero como dicen que se cuelga (el tiempo de espera es de una hora), lo más probable es que no sea la velocidad de procesamiento, sino algunas circunstancias del entorno que desconocemos (al fin y al cabo, autovalidator no es un probador de terminales). Por eso, al menos, los registros son útiles.