If you looked at the Documentation you would see it is a Function . . . https://docs.mql4.com/series/iHigh have you defined M5 or did you mean PERIOD_M5 ?
You do realise that the High and Low value of the 0 bar is likely to change ?
Yeah, sorry..I meant for [i].
Sorry, for some reason I have been trying to search for this on the mql4 website and in the forums and the search keeps timing out.
So thus,
ExtMapBuffer[i]=(iHigh(EUR_USD,PERIOD_M5,i) )-(iLow(USD_JPY,PERIOD_M5,i));
Yep, although check that you have the correct symbol names, these don't look right . . but they may be, depends on your broker . . EUR_USD, USD_JPY.
One minor thing, you don't need the outer sets of braces () . . . they won't hurt though.
ExtMapBuffer[i]=iHigh(EUR_USD,PERIOD_M5,i)-iLow(USD_JPY,PERIOD_M5,i); // will be fine, assuming the symbols are correct
Yep, although check that you have the correct symbol names, these don't look right . . but they may be, depends on your broker . . EUR_USD, USD_JPY.
One minor thing, you don't need the outer sets of braces () . . . they won't hurt though.
Thanks Raptor,
So, I guess to answer my original questions these are custom functions and not variables.
Thanks Raptor,
So, I guess to answer my original questions these are custom functions and not variables.
Yep, although check that you have the correct symbol names, these don't look right . . but they may be, depends on your broker . . EUR_USD, USD_JPY.
- The form of a symbol is broker dependent, EURUSD, EUR_USD, EUR/USD, EURUSDfxf, EURUSDm are all possible.
- The first argument to iHigh/iLow is a string
ExtMapBuffer[i] = iHigh("EUR_USD", PERIOD_M5, i) - iLow("USD_JPY", PERIOD_M5, i);
Hello Boost,
for me, its not clear what your problem is.
your code-line is absolutely ok in the syntax, if your EUR_USD and USD_YPY are string constants defined as real Symbols such as "EURUSD", as mentioned by RaptorUK
But what do you mean with "Obviously this is not right" ? If you test the value of the single terms, they must have real quotes as content. So you can quickly find out, whether the term iHigh() is ok or not.
if the content is not a real value, or even 0, than you have no access th the history of your Symbol,whatever the reason is.

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Are the iHigh or iLow functions or variables?
I have charted the high minus the low for a currency using an array.
ExtMapBuffer1[i]=High[i]-Low[i];
What I am attempting to do is take the 5 minute high for the EUR_USD and subtract the 5 minute low for the JPY_usd.
With this in mind I have made the following:
ExtMapBuffer[i]=(iHigh(EUR_USD,M5,0) )-(iLow(USD_JPY,M5,0));
Obviously this is not right. Can someone tell me whether iHigh is a function or variable?
Do I have to create multiple buffers for each currency to compute this? Any help in a quick explanation to fix this would be much appreciated.
Thanks,
Eric