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
Quiero poder controlar los datos del historial que utilizo para poder repetir las pruebas (Strategy Tester) en condiciones controladas.
¿Qué condiciones controladas?
Gracias
¿Qué condiciones controladas?
Gracias
Las condiciones que yo elijo, no las que elige mi Broker. ¿De qué otra forma propones hacer la prueba? ¿conjunto de condiciones al azar para cada prueba? pero no nos salgamos del tema.
Entendido.
Gracias
No. Si leyeras mi enlace y/o el de RaptorUK, te quedaría más claro. Si no, vuelve a leer :-D
1,000000000006551e-005 es simplemente otra notación para 0,00001000000000006551.
Hola angevoyageur,
1.000000000006551e-005
0.00001000000000006551
El decimal del segundo doble se desplaza a la izquierda cinco veces PERO ;) no puede ser devuelto en el probador en este formato porque los dobles devuelven un valor máximo de dieciséis dígitos (cifras significativas) a la derecha de un decimal.
Moderador
1651
Hola comunidad MQL5,
https://www.mql5.com/en/docs/common/comment
"Los datosde tipo double se emiten con la precisión de hasta 16 dígitos después de un punto decimal, y se pueden emitir en formato tradicional o en formato científico, dependiendo de qué notación será más compacta. Los datos de tipo float se emiten con 5 dígitos después del punto decimal. Para dar salida a números reales con otra precisión o en un formato predefinido, utilice la función DoubleToString()".
La representación del precio de USDJPY en 98.370 es un dato de tipo float (salida a 5 dígitos después del decimal).
La representación del precio del USDJPY en -0.0019999999995339 es un dato de tipo double, formato tradicional (salida con hasta 16 dígitos después del decimal).
¿Por qué el doble -0,001999999999533[9 ] devuelve un 18º dígito después del decimal si la salida de un doble es sólo hasta 16 dígitos después del decimal?
Gracias
Los precios son siempre dobles, 98,370 es un doble. Hay 16 dígitos significativos. Los ceros no son significativos.
Si los ceros no son significativos, ¿por qué no se podría devolverel valor 0,00001000000000006551 en el probador en lugar de 1,000000000006551e-005? Preferiría hacer los cálculos en formato 0. 00001000000000006551 .
Gracias
Si los ceros no son significativos, ¿por qué no se podría devolverel valor 0,00001000000000006551 en el probador en lugar de 1,000000000006551e-005? ¡Preferiría hacer los cálculos en formato 0. 00001000000000006551 !
Un número de punto flotante ( doble ) siempre se mantiene internamente en este formato . . . 1.000000000006551e-005, ¿has leído y entendido la información en los enlaces dados?
De aquí:números de punto flotante
"Un flotador IEEE-754 (4 bytes) o doble (8 bytes) tiene tres componentes (también hay un formato análogo de 96 bits de precisión extendida bajo IEEE-854): un bit de signo que indica si el número es positivo o negativo, un exponente que da su orden de magnitud, y una mantisa que especifica los dígitos reales del número. Utilizando los flotadores de precisión simple como ejemplo, esta es la disposición de los bits:"
3 partes
Si quieres ver 0.00001000000000xyz entonces usa DoubleToStr() para formatear la salida a tu gusto.
Un número de punto flotante ( doble ) siempre se mantiene internamente en este formato . . . 1.000000000006551e-005, ¿has leído y entendido la información en los enlaces dados?
De aquí:números de punto flotante
"Un flotador IEEE-754 (4 bytes) o doble (8 bytes) tiene tres componentes (también hay un formato análogo de 96 bits de precisión extendida bajo IEEE-854): un bit de signo que indica si el número es positivo o negativo, un exponente que da su orden de magnitud, y una mantisa que especifica los dígitos reales del número. Utilizando los flotadores de precisión simple como ejemplo, esta es la disposición de los bits:"
3 partes
Si quieres ver 0.00001000000000xyz entonces usa DoubleToStr() para formatear la salida a tu gusto.
Sí, he leído todos los enlaces que has proporcionado y me han parecido útiles, gracias de nuevo por proporcionarlos. Mi gusto sería incorporar DoubleToString y elegir el valor del penúltimo lugar del doble (ejemplo:CADJPY 95.9[5]9) como segundo parámetro de DoubleToString. ¡No creo que este problema de "¡puede precio!=precio" sea demasiado difícil de resolver! ¿Qué opinas de esto?
Gracias
Sí, he leído todos los enlaces que has proporcionado y me han resultado útiles, gracias de nuevo por proporcionarlos. Mi gusto sería incorporar DoubleToString y elegir el valor del penúltimo lugar del doble (ejemplo:CADJPY 95.9[5]9) como segundo parámetro de DoubleToString. ¡No creo que este problema de "¡puede precio!=precio" sea demasiado difícil de resolver! ¿Qué dices a esto?
¿Te refieres a algo como esto?
El problema de "¿puede el precio?" es un problema diferente, pero ligeramente relacionado, que no puede ser resuelto, primero hay que entender cuál es el problema... y luego se trabaja alrededor de él.
¿Se refiere a algo así?
No se puede resolver realmente, primero hay que entender cuál es el problema... y luego se trabaja en torno a él.
¿Qué opinas de este problema de "precio de la lata"?
Gracias.
WhooDoo22:
...
Los precios son siempre dobles, 98,370 es un doble. Hay 16 dígitos significativos. Los ceros no son significa tivos.
Si los ceros no son significativos, ¿por qué no se podría devolver el valor 0,00001000000000006551 en el probador en lugar de 1,000000000006551e-005? Preferiría hacer los cálculos en el formato 0. 00001000000000006551 .
Gracias
Eso podría ser, es sólo una opción de formato de valor de salida.
Precisamente porque los ceros no son significativos
Sí, he leído todos los enlaces que has proporcionado y me han parecido útiles, gracias de nuevo por proporcionarlos. Mi gusto sería incorporar DoubleToString y elegir el valor del penúltimo lugar del doble (ejemplo:CADJPY 95.9[5]9) como segundo parámetro de DoubleToString. ¡No creo que este problema de "¡puede precio!=precio" sea demasiado difícil de resolver! ¿Qué opinas de esto?
Gracias
Podría ser, es sólo una opción de formato de valor de salida.
Precisamente porque los ceros no son significativos
Lo siento pero no entiendo esta frase."Lo siento pero no entiendo esta frase".
Gracias