OnDeinit en los indicadores

 

¿Por qué, después de abrir un gráfico, los indicadores adjuntos al gráfico no activan la desinstalación?

¡Esto es lógico!

 

más detalles, pero sólo una conjetura en cuanto a lo que quieres decir (acerca de arrastrar y soltar desde la visión general del mercado a un gráfico con un indikator???)

 

Por ejemplo, el indicador dibuja las zonas de soporte y resistencia de los últimos 3 días. Deinit, respectivamente, elimina las zonas. Por la noche apago el PC, por la mañana lo enciendo y voilá, aparecen 4 zonas (3 anteriores y una nueva).

Pido que el deinit se dispare antes del init, y después de liberar el indicador.

 
Me pregunto cómo detectará el indicador lo que hay que borrar si lo que hay que borrar no está definido en el deinit ?
 
eevviill:


Por favor, asegúrese de que el deinit se activa antes del init, y después de que el indicador se desprenda.

Así que llámalo tú mismo: ¿cuál es el problema?

void OnDeinit(const  int reazon)
{
// .........................
}
int OnInit(void)
  {
   string short_name;
// -------
    OnDeinit(0);
// -------
// .............................
//--- initialization done
   return(INIT_SUCCEEDED);
  }
 
eevviill:

Por ejemplo, el indicador dibuja las zonas de soporte y resistencia de los últimos 3 días. Deinit, respectivamente, elimina las zonas. Por la noche apago el PC, por la mañana lo enciendo y voilá, aparecen 4 zonas (3 anteriores y una nueva).

Solicito que el deinit se dispare antes del init, bueno, y después de separar el indicador.

En la compilación 670 - error con la razón de desinicialización al cerrar el terminal (devuelve 4 - gráfico cerrado y requiere 9 - el terminal está cerrado)

Escrito - arreglado, la compilación 711 funciona bien.

 
Es otro error que lleva años, de compilación en compilación. Me he acostumbrado a él, desinicializo durante la inicialización como se describe arriba.
 
eevviill:

Por ejemplo, el indicador dibuja las zonas de soporte y resistencia de los últimos 3 días. Deinit, respectivamente, elimina las zonas. Por la noche apago el PC, por la mañana lo enciendo y voilá, aparecen 4 zonas (3 anteriores y una nueva).

Yo le pediría a deinit que se disparara antes del init, y después de separar el indicador.

Si apagomi PC por la noche, es de suponer que se iniciará algún apagado y el terminal se matará como proceso al apagar el PC...

Si el terminal está cerrado entonces OnDeinit funciona bien y borra los objetos ( 711 build)...

 

No, no es así. Apago el terminal normalmente.

Si se pone Deinit en Init, tampoco funciona.

Sólo ayudó la función de eliminación de objetos personalizada.

 
Cuente el número total de objetos en el gráfico, ¿quizás otros horarios estén atascados? Hay una cantidad limitada de tiempo para realizar la desinicialización y puede que no haya tiempo para recorrer todos los objetos.
 
Chicos, si queréis una pantalla en blanco antes de mostrar un indicador/asesor/script, tendréis que borrarla.