Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 474
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
Eso no es todo... https://www.mql5.com/ru/forum/66827
¿Cómo puedo saber el valor real de una variable de tipo double? La cosa es que a veces se tiran miles de dígitos a través de la impresión - la propia variable se forma a partir de una cadena de texto, pero pasa por un procedimiento de redondeo.
Ejem. ¿Para qué lo necesitas?
Para detectar un error de cálculo :)
¿Quiere comparar varios valores de tipo double?
Por favor, pueden enviar mensajes de correo electrónico desde el terminal Metatrader 4 de tal manera que se tome una captura de pantalla del gráfico actual y se ponga en el centro del mensaje. Ejemplo:
Hubo una señal de compra en el EurUsd
<скриншот09122015_eurusd.png>
Información adicional sobre la apertura.
¿Dime cómo ponerlo en práctica? Tal vez haya un ejemplo o algo similar que se pueda rehacer. Gracias.No del todo... hay una suposición de que los números no siempre tienen un valor entero de 4=3,999999999999999 y después de hacer las cuentas, se obtiene una inexactitud después de redondear.
Aunque aparezcan imprecisiones, utilice NormalizeDouble(). Establezca la precisión que desea para sus cálculos. Para eso sirve esta función.
El ejemplo parece describir su caso:
Debe tener en cuenta que el número normalizado cuando se imprime en el Diario utilizando Print() puede contener más decimales de los que espera. Por ejemplo,
DoubleToString(a,8)=76.67100000
Print(76.671)=76.67100000000001
Aunque aparezcan imprecisiones, utilice NormalizeDouble(). Establezca la precisión que desea para sus cálculos. Para eso sirve esta función.
El ejemplo parece describir su caso:
Sí - se describe, sí - lo uso - la pregunta es cómo no a través de la impresión y la cadena en general para obtener datos para el análisis :)
Utilizando el mismo NormalizeDouble(). Se obtiene un número de tipo doble. Normalizado. Simplemente, Print() lo muestra así.
Aquí está escrito cómo hacer la comparación correctamente: https://www.mql5.com/ru/docs/basis/types/double