Errores, fallos, preguntas - página 586

 

Así es como lo he investigado... 3 parámetros a través de ChartIndicatorAdd. 2 parámetros a través de la librería. El tercero se añade dentro. Se utiliza la misma función ChartIndicatorAdd. Así que tengo todo escrito correctamente, pero no coloca el indicador.

ChartIndicatorAdd(0,0,f_h);

cc.IndicatorAdd(0,f_h);
 
Karlson:

Así es como lo he investigado... 3 parámetros a través de ChartIndicatorAdd. 2 parámetros a través de la librería. El tercero se añade dentro. Se utiliza la misma función ChartIndicatorAdd. Así que tengo todo escrito correctamente, pero no coloca el indicador.

Observe qué tipo de indicador y qué sucede directamente en el momento de la ejecución. ¿Lo has pasado por el depurador?

Si no hay ningún error en la llamada, quiero sugerir que la comprobación no funciona.

//checking (проверка корректности идентификатора графика)
   if(m_chart_id<=0) return(false);

La suposición es porque en el momento de la inicialización de la clase el ID se establece en -1 (si no se anula habrá problemas)

CChart::CChart()
  {
//--- initialize protected data
   m_chart_id=-1;
  }
 
uncleVic:
El uso de la biblioteca requiere 2 parámetros. Gráfico y subventana.
Pido disculpas por la inexactitud. Aquí me refiero a la clase CIndicator.
 
Interesting:
Hay que ver qué tipo de inductor y qué ocurre en el momento de la ejecución. ¿Lo has pasado por el depurador?

Puede que lo haya olvidado:

cc.Attach();
 
uncleVic:

Podría haberlo olvidado:

Sí, aparentemente ID = -1 y Attach no se ha completado.
 
TheXpert:

El siguiente código:

Llama al constructor de la etiqueta cada vez que se llama a la función.


Gracias por el mensaje, se publicará una solución en una próxima versión.
 
Interesting:
Sí, parece que ID = -1 y Attach no se ejecutó.

Gracias.

Realmente falta Attach(), al igual que Refresh en el caso de Bid() .No lo encontré en la documentación, quizás lo encuentre en los ejemplos.

int f_h=iFractals(_Symbol,_Period);
   
    cc.Attach(ChartID());
    cc.IndicatorAdd(0,f_h); 

Funciona.

 
Karlson:

Gracias. Lo comprobaré esta noche.

Gráfico ID 0.Current.

Realmente falta Attach(), al igual que Refresh en el caso de Bid() .No lo encontré en la documentación, tal vez pueda encontrarlo en los ejemplos.

1. No hay ninguna diferencia, la persecución no funcionará de todos modos (si yo fuera el desarrollador, comprobaría si se supera el límite máximo).

2. Lista de métodos y eventos de la clase

Propiedades

Adjuntar

Vincula el gráfico a una instancia de la clase.


Si no es una referencia directa, es al menos una pista obvia.

PS

Recomiendo adjuntar el indicador y atacar el gráfico en el bloque de inicialización (con una comprobación explícita de la incapacidad del manejador y el éxito del ataque).

Dibuja un indicador en el bloque de trabajo, con la comprobación de la desventaja de la manilla y el valor de la subventana que excede el límite permitido.

 
Interesting:

Si esto no es una indicación directa, es al menos una pista evidente.

Me limité a leer directamente los métodos necesarios, porque suele decir lo que hay que hacer de antemano...

En general, estoy investigando qué es, para qué sirve y dónde coserlo.

 

Buenas tardes.

He perdido la capacidad de parar en un punto de ruptura.
Tras pulsar el botón de depuración, el proceso se inicia y se detiene inmediatamente.
No se puede parar ni siquiera en la función init.
Tampoco funciona con los Asesores Expertos y los induladores, incluso los del paquete estándar.

Y curiosamente, la depuración funcionaba bien justo después de instalarla.
Tengo la última versión de mt5 y windows 7.

¿Quién puede ayudar?

Razón de la queja: