Indicator is not assembled, error:
'iBarShift' - ambiguous call to overloaded function channelzz.mq5 300 43
Indicator is not assembled, error:
Either rename all occurrences of iBarShift() to, for example, BarShift(), or comment out the iBarShift() function in the code. There is such a built-in one now.
In the first case, the indicator will use its own function - the one you rename to, in the second case - the standard one.
Either rename all occurrences of iBarShift() to, for example, BarShift(), or comment out the iBarShift() function in the code. There is such a built-in one now.
In the first case, the indicator will use its own function - the one you will rename to, in the second case - the standard one.
The first option worked. Thank you.
I fixed the code!
Here there were 15 errors
int end=iBarShift(symbol,PERIOD_CURRENT,EndDraw);
double preValue=(EndDrawValue-StartDrawValue)/(end-start);
Vitaliy Kostrubko #:
... when compiling, I got an error: expression not boolean ZZ.mq5 217 17 expression not boolean ZZ.mq5 217 30 expression not boolean ZZ.mq5 217 43
Good morning! This is not an error, but three warnings. If the indicator works, forget about them. The meaning of the warning is simple - the expression is NOT boolean. Why? Because the expression enclosed in brackets is not logical (i.e. it is implicitly converted tofalse or true), which is what the compiler has warned about. If something is not clear, look at the previous line 216 in the code and then, I hope, everything will become clear.
Regards, Vladimir.
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use

ChannelZZ:
The channel ZigZag
Fig.1 The ChannelZZ indicator
Author: Nikolay Kositsin