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
Mi más sincero pésame a los desarrolladores, tener queexplicar lo mismo 1000 veces a cada nuevo usuario...
Esto ya es un ataque descarado...
Está escrito en los libros de texto sobre el almacenamiento de números reales en la memoria y no dice nada sobre las variables que cambian por sí mismas. Aunque lo he escuchado no sólo de SK en este foro.
Así que si has engañado a todos los nuevos usuarios 1000 veces, ahora deberías encontrarlos y disculparte por tus palabras.
Estoy de acuerdo con Simca. Al realizar operaciones aritméticas es posible que se produzcan errores, pero al almacenar, escribir o leer quedan excluidos.
Por eso pregunté por el algoritmo de la función NormalizeDouble(), ¿quizás también tiene operaciones aritméticas que provocan un error?
¿Qué te parece Simca?
DE ACUERDO. Lo dices con tanta seguridad que empiezo a dudar de lo que dices.
Hasta hace un tiempo trabajaba en un viejo PC con 256MB de RAM. Cuando se buscaban algunos programas, el sistema operativo descargaba parte de los datos en el disco y luego los cargaba de nuevo. Desde que modifiqué el código (especificando la normalización en el operador de comparación) el error dejó de aparecer. Pero empecé a dudar después de escuchar sus palabras: ¿y si realmente no me había dado cuenta del error?
Ahora no sé si disculparme o no. Si me equivoco, que me perdonen los 1000 usuarios.
(pero aun así es mejor realizar la normalización directamente al calcular la operación de comparación:)
En los libros de texto se habla de almacenar números reales en la memoria y no se dice nada de que las variables cambien por sí mismas. Sin embargo, no es sóloSK quien ha escuchado esto en este foro.
Pero, todo esto se refiere a los cálculos mientras que los valores almacenados en la memoria no cambiarán independientemente de si están normalizados o no.
Por eso preguntaba el algoritmo de la función NormalizeDouble(), ¿quizás también tiene operaciones aritméticas que provocan un error?
¿Qué te parece Simca?
(pero aun así es mejor realizar la normalización directamente al calcular la operación de comparación:)
Y por mi parte (para los que no entienden bien la esencia de la cuestión) también puedo recomendar:
(pero aun así, es mejor realizar la normalización directamente al calcular la operación de comparación (c) SK.
(pero sigue siendo mejor hacer la normalización directamente al calcular el
se calcula la operación de comparación:)
Lo siento, pero en términos de eficiencia hay implementaciones mucho mejores para comparar datos que requieren normalización. Básicamente, este es el estándar (algoritmo de comparación). Hay que comparar la diferencia con la mitad de la dimensión de la escala. Lo que quiero decir: para comparar los precios (sean diferentes o no) hay que tomar la diferencia y compararla con 0,5*Roynt (se puede calcular sólo una vez durante la inicialización del EA/script/indicador. Esto es mucho más eficiente que llamar a una función, y más aún si también está en un bucle) .... Y no importará cómo se almacenen estos datos ni a qué signo insignificante se redondeen.
Buena suerte.
En primer lugar, trabajar con dubles es algo puramente de compilador, por lo que exigir comodidad a mql4, que es esencialmente un compilador intrínseco oculto, no es razonable. Lo principal, los desarrolladores han dado una forma de GARANTIZAR el resultado correcto de la comparación, lo hemos comprobado con nuestras manos, es, por supuesto, gráfico, pero ¡¡¡FUNCIONA!!! Aunque la documentación dice que normaliza sólo en caso de "!=" o "==", nuestras pruebas independientes y expertas han demostrado que (a>b) ¡NO GARANTIZA (!) un resultado correcto si a resulta ser igual a b! Incluso si se normaliza PREDVORABLEMENTE tanto a como b, el resultado es imprevisible. Y aquí hay una construcción de los desarrolladores:: NormalizarDoble(a-b, Dígitos)>0 ¡funciona con fiabilidad! No sé por qué a la gente de aquí no le gusta la función normalizar... Quizás (internamente) es bastante sempótica hecha así: dos dables se dividen por doble precisión, y se redondea hacia abajo (o hacia arriba). Y después los enteros se comparan sin problemas.
Por favor, escriba en ruso correcto.
Dame un enlace a tu sitio y te prometo que sólo utilizaré las DEFINICIONES DEL AUTOR. :) Tu idea, creo, no es más correcta que la mía, pero si TU PERSONALMENTE quieres entenderlo, haré de "portavoz de Rosh", si no puedes distinguir entre el bla-bla y la valoración de los expertos. Porque no te estaba escribiendo a ti, sino al 1001º recién llegado. :)
Por ejemplo, www.gramota.ru
No tenemos una sección albanesa en el foro. Sin embargo, después del próximo puesto no ruso se le enviará allí. Por favor, no hagas que parezca que estás usando el lenguaje.