Indicadores: ChannelZZ

 

ChannelZZ:

El canal ZigZag

Fig.1 Indicador ChannelZZ

Autor: Nikolay Kositsin

 

El indicador no está montado, error:

'iBarShift' - ambiguous call to overloaded function     channelzz.mq5   300     43
 
ilvic:

El indicador no está montado, error:

Cambie el nombre de todas las apariciones de iBarShift() a, por ejemplo, BarShift(), o comente la función iBarShift() en el código. Ya existe una incorporada.

En el primer caso, el indicador utilizará su propia función - la que usted renombra a, en el segundo caso - el estándar.

 
Artyom Trishkin:

Cambie el nombre de todas las apariciones de iBarShift() a, por ejemplo, BarShift(), o comente la función iBarShift() en el código. Ya existe una incorporada.

En el primer caso, el indicador utilizará su propia función - la que va a cambiar el nombre, en el segundo caso - el estándar.

La primera opción funcionó. Gracias.

 

He arreglado el código.

 

Aquí había 15 errores

int end=iBarShift(symbol,PERIOD_CURRENT,EndDraw);

double preValue=(EndDrawValue-StartDrawValue)/(end-start);

 

... al compilar el error : expresión no booleana ZZ.mq5 217 17 expresión no booleana ZZ.mq5 217 30 expresión no booleana ZZ.mq5 217 43


 

Vitaliy Kostrubko #:

... al compilar, tengo un error: expression not boolean ZZ.mq5 217 17 expression not boolean ZZ.mq5 217 30 expression not boolean ZZ.mq5 217 43

No se trata de un error, sino de tres advertencias. Si el indicador funciona, olvídese de ellos. El significado de la advertencia es sencillo: la expresión NO es booleana. ¿Por qué? Porque la expresión encerrada entre paréntesis no es lógica (es decir, se convierte implícitamente enfalso o verdadero), que es lo que ha advertido el compilador. Si algo no está claro, mira la línea 216 anterior en el código y entonces, espero, todo se aclarará.

Saludos, Vladimir.