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
Algunos números sólo pueden representarse como una fracción infinita, como 1/3 en el sistema decimal. Pero 1/3 no es una fracción infinita en el sistema terciario, allí es == 0,1. Es decir, los diferentes sistemas numéricos tienen sus propias fracciones infinitas. Por lo tanto, una fracción no infinita en decimal puede ser uno en binario. Por ejemplo: 0,1, 0,2, 0,3, 0,4, ... no tienen una representación binaria exacta. Si llamas a NormalizeDouble diez veces, será o bien 0,199999999...1 o bien 0,200000...1. No sé, quizás esto sea una novedad.
¡Dices la verdad! Para que quede claro, el ND es necesario SÓLO para comparar, no para representar. Y hace tiempo que está obsoleto.
Algunos números sólo pueden representarse como fracciones infinitas, por ejemplo, 1/3 en el sistema decimal. Pero 1/3 no es una fracción infinita en el sistema terciario, allí es == 0,1. Es decir, los diferentes sistemas numéricos tienen sus propias fracciones infinitas. Por lo tanto, una fracción no infinita en decimal puede ser uno en binario. Por ejemplo: 0,1, 0,2, 0,3, 0,4, ... no tienen una representación binaria exacta. Si llamas a NormalizeDouble diez veces, será o bien 0,199999999...1 o bien 0,200000...1. No sé, quizás esto sea una novedad.
Lo recuerdo, pero en este caso es 0+0 y no es 0.
Lo recuerdo, pero en este caso es 0+0 y no es 0.
¡Dices la verdad! Para que quede claro, el ND es necesario SÓLO para comparar, no para representar. Y hace tiempo que está obsoleta.
NormalizeDouble sólo es necesario para normalizar el precio cuando se colocan órdenes pendientes y stops. No lo necesita para nada más.
Esto se indica claramente en la documentación
Los valores calculados de StopLoss y TakeProfit, así como los precios abiertos de las órdenes pendientes, deben normalizarse con la precisión, cuyo valor puede obtenerse mediante Digits().
¿En qué caso concreto? Dame un ejemplo de cuándo te ocurre esto.
esto sucede cuando había un 0 en la variable y se le añade un 0
(Sospecho que en realidad no es 0)
NormalizeDouble sólo es necesario para normalizar el precio cuando se colocan órdenes pendientes y stops. No lo necesita para nada más.
Esto se indica claramente en la documentación
esto sucede cuando había un 0 en la variable y se le añade un 0
(Sospecho que en realidad no es 0)
Exactamente. Los ceros "reales" en la suma y la resta siguen siendo ceros. Por eso te ofrecí un ejemplo.
¿Y si comparamos números reales...
Un efecto secundario relacionado.
Resultó ser conveniente. Pero originalmente no estaba destinado a ser utilizado de esta manera.
Existen funciones especiales para imprimir el número real con la precisión adecuada.
Dime, ¿por qué es necesario redondear los números reales en los cálculos? Porque en este caso, ¡se pierde la precisión de los cálculos!
Exactamente. Los ceros "reales" en la suma y la resta siguen siendo ceros. Por eso te ofrecí un ejemplo.
NormalizeDouble sólo es necesario para normalizar el precio cuando se colocan órdenes pendientes y stops. No lo necesita para nada más.
Esto se indica claramente en la documentación
Foro sobre comercio, sistemas de comercio automatizados y pruebas de estrategias
Implementaciones alternativas de funciones/enfoques estándar
Renat Fatkhullin, 2016.09.02 00:55
Esta no es la forma de sobrecargar. Las mismas firmas de funciones.
Pero la idea es clara: la función de normalización teniendo en cuenta la granulación de las garrapatas.