Errores, fallos, preguntas - página 2823
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
decidió comprobar la versión de la velocidad de ramificación.
Y el resultado fue sorprendente.
La comparación incluso de doble prenormalizado es incluso más lenta en promedio que si se compara el doble a través de épsilon o a través de la conversión a int
El resultado:
No descarto que muchas cosas dependan de la novedad y la arquitectura del procesador y algunos programadores puedan obtener un resultado diferente.
¿Depende el rendimiento de la operación de comparación de dos dobles de los valores de las propias variables? Lo dudo.
Parece que es así. Es bastante extraño.
Si sustituye la línea del ejemplo anterior
a
la simple comparación de dos dobles empieza a funcionar más rápido que otras opciones. Aunque puede ser doble o doble. ¿Qué diferencia parece? Pero el rendimiento resultante es dos veces más rápido. Es como un milagro.
La prueba es incorrecta. ¿Por qué se divide por 100000,0 sólo una vez al final? Debería realizarse en cada iteración y luego sumarse. Es una comparación justa. Pero esto no es una normalización en absoluto, sólo ha optimizado su algoritmo de prueba. Por supuesto, será más rápido y más preciso (ya que se reduce el error acumulado).
Sí, tienes razón. La precisión será la misma que con NormalizeDouble si se divide en cada iteración. Pero la velocidad seguirá siendo mayor que con NormalizeDouble.
Gracias.
En general, después de redondear a un número entero, devolver un número no entero no es bueno. Anteriormente en las impresoras he visto números casi enteros con ceros después del punto decimal y uno al final, o con nueves después del punto decimal. Pensé que era un error. Resulta ser una posición poco clara de los desarrolladores. Bueno, redondeando a enteros, deberías eliminar el resto después del punto decimal en forma binaria pero aparentemente es difícil/imposible poner a cero la mantisa. Acerca de la normalización es aún más complicado, incluso si nos movemos una coma a 5 dígitos y entero en binario, el redondeo inverso a doble dará una diferencia con el tipo entero.
Lamentablemente, hay que recurrir a operaciones de comparación aparentemente sencillas.
No python.))))
En general, después de redondear a un número entero, devolver un número no entero no es bueno. Anteriormente en las impresoras he visto números casi enteros con ceros después del punto decimal y uno al final, o con nueves después del punto decimal. Pensé que era un error. Resulta ser una posición poco clara de los desarrolladores. Bueno, redondeando a enteros, deberías eliminar el resto después del punto decimal en forma binaria pero aparentemente es difícil/imposible poner a cero la mantisa. Acerca de la normalización es aún más complicado, incluso si nos movemos una coma a 5 dígitos y entero en binario, el redondeo inverso a doble dará una diferencia con el tipo entero.
Lamentablemente, tenemos que crujir en operaciones de comparación aparentemente sencillas.
Las expresiones después del redondeo pueden contener algunas otras operaciones con los datos resultantes, y no necesariamente enteros. Entonces tendremos que volver a convertirlo a double desde int, creando una sobrecarga en el momento.
Nadie le impide crear sus propias funciones RoundInt o RoundLong, que devolverán el tipo requerido.
Hay un problema con el probador en el mercado.
Si pruebo un EA multidivisa, el probador se cuelga.
La razón: Durante el análisis del instrumento financiero, el Asesor Experto tropieza con los instrumentos sin historia o el instrumento no está diseñado correctamente.
En el terminal estándar se cuelga durante 29 segundos, eso es seguro y está comprobado.
El probador del Mercado informa de que las pruebas son demasiado largas.
Supongo que el Asesor Experto se encuentra con varios de estos instrumentos financieros rotos.
Este problema se ha escrito varias veces y hace un año, pero sigue ahí....
Este problema se ha escrito varias veces y hace un año, pero sigue ahí....
No me funciona. Por favor, adjunte su código fuente.
¿Puede comentar por qué la función no funciona? No pasa a 0 gráfico.
La segunda y posterior aplicación del patrón duplica las ventanas
Estas funciones funcionaban antes de la actualización.
A mí no me toca. Adjunte su código fuente.
Prueba en los servidores de Demo Metakvotes
2020.08.11 20:20:55.657 test (EURUSD,M15) MXNJPY 1998
2020.08.11 20:20:55.659 test (EURUSD,M15) NZDMXN 1979
2020.08.11 20:20:55.661 test (EURUSD,M15) USDCOP 1973
2020.08.11 20:20:55.663 test (EURUSD,M15) USDARS 2093
2020.08.11 20:20:55.665 test (EURUSD,M15) USDCLP 1929
2020.08.11 20:21:25.259 test (EURUSD,M15) Error AUS200 29593673
2020.08.11 20:21:54.837 test (EURUSD,M15) Error FCHI40 29578404
2020.08.11 20:22:24.336 test (EURUSD,M15) Error GDAXIm 29498485
2020.08.11 20:22:53.949 test (EURUSD,M15) Error HSI50 29612968
2020.08.11 20:23:23.458 test (EURUSD,M15) Error Jap225 29509059
2020.08.11 20:23:52.919 test (EURUSD,M15) Error ND100m 29461316
2020.08.11 20:24:22.425 test (EURUSD,M15) Error SP500m 29505571
2020.08.11 20:24:51.860 test (EURUSD,M15) Error SPN35 29435460
2020.08.11 20:25:21.273 test (EURUSD,M15) Error STOX50 29412578
2020.08.11 20:25:50.663 test (EURUSD,M15) Error UK100 29389644
2020.08.11 20:26:20.205 test (EURUSD,M15) Error Brent 29542597
2020.08.11 20:26:49.667 test (EURUSD,M15) Error Crudo 29462066
2020.08.11 20:27:19.194 test (EURUSD,M15) Error NatGas 29526780
Pruebas en servidores de demostración de Metacvots
Perdón, ahora está colgado....
Este script no hizo que el Terminal se colgara en mi máquina.