Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Sí, así es, sólo en forma de funciones estándar para optimizar la velocidad de acceso.
No creo que podamos hablar todavía de velocidad, sobre todo porque MQL5 procesa rápidamente el conjunto de datos de noticias existentes. Y eso con la esperanza de que el MQL sea aún más rápido.
Pero me gustaría profundizar en este tema. Me pregunto qué piensan hacer después con estos datos.
No creo que podamos hablar todavía de velocidad, sobre todo porque MQL5 procesa rápidamente el conjunto de datos de noticias existentes. Y aquí está la esperanza de que MQL sea aún más rápido.
Pero me gustaría profundizar en esto. Me pregunto qué piensan hacer con estos datos: ¿ejemplos concretos de uso?
Y lo que sigue es un campo caliente, las noticias no estaban disponibles normalmente antes, y entonces la codificación de las estrategias de las noticias estará en auge.
Tengo previsto utilizarlo en todas las comisiones de NS, pero me gustaría desarrollar más el tema.
ZZZY Pero mientras que las noticias en el probador no aparecerá (es decir, las historias de noticias), que tendrá que hacer a través de archivos, y el parser de noticias en los recursos de terceros.
El comprobador se ralentiza a medida que aumenta el número de operaciones.
Al abrir operaciones con una intensidad de aproximadamente 1 operación cada 2 minutos se puede ver (pestaña Log) que 1 segundo de tiempo de prueba al final de un período bastante largo tiene varias veces menos operaciones que al principio de la prueba. Una imagen similar cuando se imprimen los resultados de las pruebas en formato Open XML.
En realidad, el tiempo de prueba no depende directamente de la cantidad de operaciones. Para ser exactos, una sola ejecución con 10 operaciones tardará, por supuesto, menos que una ejecución con 100 000 operaciones, porque cada operación en el probador necesita tiempo para su procesamiento.
Pero lo que más afecta al tiempo de prueba es el número de ticks que se procesan en una pasada. He ejecutado la media móvil estándar en el modo de todos los ticks empezando por un mes (intervalo 2009.01.01-2009.02.01) y he aumentado el tiempo de prueba en un mes cada vez hasta 22 meses.
Como se puede ver en el diagrama, la dependencia del tiempo de prueba del número de ticks es estrictamente lineal.
Hola, refleja la adición de la construcción
#property tester_indicator "indicator.ex5"
en la documentación, en la descripción de la función iCustom. He pasado unas cuantas horas tratando de entender la razón por la que iCustom funciona en el gráfico, pero no funciona en el probador.
Esto se describe en la sección de propiedades del programa.
indicador_de_prueba
cadena
Nombre del indicador personalizado en el formato "nombre_del_indicador.ex5" .Los indicadores necesarios para las pruebas se determinan automáticamente a partir de la llamada a la función iCustom(), si el parámetro correspondiente se especifica como una cadena constante. Para otros casos (uso de la función IndicatorCreate() o uso de una cadena no constante en el parámetro que define el nombre del indicador) necesitamos esta propiedad
archivo_de_prueba
cadena
Nombre del archivo para el probador, especificando su extensión, encerrado entre comillas dobles (como una cadena constante). El archivo especificado se pasará al probador para su funcionamiento. Los archivos de entrada para las pruebas, si son necesarios, deben especificarse siempre
biblioteca_de_prueba
cadena
Nombre de la biblioteca con extensión, entre comillas. Una biblioteca puede tener tanto una extensión dll como una extensión ex5. Las bibliotecas necesarias para las pruebas se detectan automáticamente. Sin embargo, si una biblioteca es utilizada por un indicador personalizado, se debe utilizar esta propiedad
Pero tienes razón, tienes que volver a añadir explícitamente información sobre ello en los lugares pertinentes.
En realidad, el tiempo de prueba no depende directamente del número de operaciones. Para ser exactos, una sola ejecución con 10 operaciones tardará, por supuesto, menos que una ejecución con 100 000 operaciones, porque cada operación en el probador necesita tiempo para ser procesada.
Pero lo que más afecta al tiempo de prueba es el número de ticks que se procesan en una pasada. He ejecutado la media móvil estándar en el modo de todos los ticks empezando por un mes (intervalo 2009.01.01-2009.02.01) y he aumentado el tiempo de prueba en un mes cada vez hasta 22 meses.
Como se ve en el diagrama, la dependencia del tiempo de prueba del número de ticks es estrictamente lineal.
Probablemente, debería decir "una sola ejecución con 10 operaciones tardará, por supuesto, MENOS tiempo que una ejecución con 100 000 operaciones porque cada operación en el probador necesita tiempo para ser procesada".
Estoy de acuerdo con lo de las garrapatas. Pero preste atención exactamente al número de operaciones: el crecimiento del tiempo allí no es obviamente lineal, y formar un informe de pruebas está completamente fuera de lugar.
¿Cuál es el tiempo máximo que se puede establecer en EventSetTimer( )?
¿INT_MAX? No lo creo. No quiero investigar por mi cuenta, y no hay ninguna en la ayuda.
Probablemente debería decir "una sola ejecución con 10 operaciones tardará, por supuesto, MENOS tiempo que una ejecución con 100.000 operaciones, ya que cada operación en el probador tarda en procesarse".
Estoy de acuerdo con lo de las garrapatas. ¡Pero una vez más, por favor, preste atención al número de operaciones - el aumento de tiempo allí no es claramente lineal, y la formación del informe de prueba está completamente fuera de la cuestión!
En el proceso de pruebas, surgieron algunas preguntas, muestro fotos tomadas al mismo tiempo:
Como se puede ver en la figura, sólo tres núcleos están trabajando, se enfrentó más de una vez una situación en la que en el curso de las pruebas, el número de núcleos que participan en el trabajo se redujo gradualmente a cero, a continuación, entró en funcionamiento todos a la vez, es decir, hay un tiempo de inactividad, ¿por qué los núcleos liberados no comienzan a trabajar inmediatamente?
El número de ejecuciones se define como 287, los resultados de la optimización lo muestran así, sin embargo:
¿qué significan entonces estas cifras? El número de puntos del gráfico de optimización es también de unos 381...