MT4 iMAOnArray y iBandsOnArray efecto del número de elementos en los cálculos - página 5

 
Dmitry Fedoseev:
Aunque MODE_SMA es el mismo, no es buena idea utilizarlo.

Lo entiendo muy bien, e incluso he escrito más arriba por qué no. Llevo programando desde el 96, empecé a probar MQL en algún momento de 2009-10 cuando descubrí MT tras otros terminales :).
Así que conozco las reglas del "código bueno y correcto" :)

 
Dmitry Fedoseev:
Aunque MODE_SMA coincida, no deberías usarlo.

¿Se te ocurre alguna razón por la que no debas usarla?

¿O sólo hay una razón, como siempre, los dedos extendidos en el camino?

No sólo MODE_SMA coincide, sino también todos los demás métodos de deslizamiento. Y aunque el periodo de iMAOnArray() no coincida con el periodo de iBandsOnArray() no hay necesidad de copiar dos veces una parte del array del buffer al array del usuario, sólo hay que entender lo que ocurre cuando se llaman estas funciones.

 
Alexey Viktorov:

¿Se te ocurre alguna razón por la que no debas usarla?

¿O sólo hay una razón, como siempre, los dedos extendidos en el camino?

No sólo coincide MODE_SMA, sino también todos los demás métodos de deslizamiento. E incluso si el periodo de iMAOnArray() no coincide con el periodo de iBandsOnArray() no hay necesidad de copiar una parte de la matriz del buffer a la matriz del usuario dos veces, sólo debes entender lo que sucede cuando estas funciones son llamadas.

En mi mensaje de la página 4 señalé las razones de la discrepancia. Si no te fías, pon el original en el gráfico M1 y tu versión debajo, introduce el suavizado LWMA para la MA y un periodo de 100, dejando un periodo de 12 para las Bandas.
 
Alexey Viktorov:

¿Se te ocurre alguna razón por la que no debas usarla?

...

Sí puedo. Pero no quiero hacerlo.
 
Dmitry Fedoseev:
Sí puedo. Pero no quiero hacerlo.
¿Tampoco ves mi respuesta? He señalado por qué no deberías usarlo.
 
Sergey Efimenko:
He descrito las razones de la incoherencia en mi post de la página 4. Si no te fías de tu palabra, pon la original en el gráfico M1 y tu versión de abajo, introduce el suavizado LWMA para la MA y el periodo 100.

Sergey, no entendí de inmediato la razón de todas tus manipulaciones, en la forma normal no hay necesidad de hacer tales trucos. Si quieres limitar el historial para el recálculo, hay otras formas de hacerlo, y utilizar estas funciones para todo el array, es decir, donde quieras poner 300 puedes poner tranquilamente 0 y no habrá ningún freno.

Y una vez más intentaré explicar que referirse a "usted" con todo el respeto y amabilidad es mucho mejor que "usted" con minúscula y la dirección a la que se envía "usted".

 
Sergey Efimenko:
¿Tampoco ves mi respuesta? He señalado por qué no deberías usarlo.
Sí. Pero esa pregunta era para mí personalmente.
 
Dmitry Fedoseev:
Sí puedo. Pero no quiero hacerlo.

Estás haciendo lo correcto o te romperás los dedos. Tómatelo con calma.


ps; espera una respuesta, voy a descansar...

 
Alexey Viktorov:
Estás haciendo lo correcto o te romperás los dedos. Tómatelo con calma.
Eres muy terco, pero sigue así, puede que algún día te rompas los cuernos.
 
Alexey Viktorov:

Sergey, no entendí de inmediato la razón de todas tus manipulaciones, en la forma normal no hay necesidad de hacer tales trucos. Si quieres limitar el historial para el recálculo, hay otras formas de hacerlo, y utilizar estas funciones para todo el array, es decir, donde quieras poner 300 puedes poner tranquilamente 0 y no habrá ningún freno.

Y de nuevo te equivocas, el tema fue causado por la lentitud al calcular la matriz completa. Al arrancar el terminal o cambiar entre los TFs con un indicador un poco más complejo instalado, pero basado en las funciones mencionadas aquí, en realidad provoca un frenado inaceptable. En general, la respuesta es clara: las funciones sólo funcionan cuando se calcula la matriz completa, pero de esta forma se ralentiza inaceptablemente el terminal. El cálculo se basó en el hecho de que alguien logró obtener el valor requerido de estas funciones con una matriz "incompleta" sin perder el rendimiento general.
Razón de la queja: