Maximum number of conditions in a custom indicator

 

Hi Everyone,

I have created a list of 100 different condition based on the value of MT4 (built in) indicator.

I want to create a custom indicator with only 1 buffer that include these 100 conditions above.

Before doing so, I wonder if there is any limit on the number of condition I can include in a custom indicator.

The condition is most likely something like:

IMA(X,Y,Z) >1.4 AND IMA(B,B,C)<1.53

OR

Isto(x,y,z)<80 AND irsi(A)>10

OR

...

Thank you for your help.

SCFX

 
scfx:

Hi Everyone,

I have created a list of 100 different condition based on the value of MT4 (built in) indicator.

I want to create a custom indicator with only 1 buffer that include these 100 conditions above.

Before doing so, I wonder if there is any limit on the number of condition I can include in a custom indicator.

The condition is most likely something like:

IMA(X,Y,Z) >1.4 AND IMA(B,B,C)<1.53

OR

Isto(x,y,z)<80 AND irsi(A)>10

OR

...

Thank you for your help.

SCFX

There is no limit because they are read individually during execution. I happen to think so :-)
 
scfx:

Hi Everyone,

I have created a list of 100 different condition based on the value of MT4 (built in) indicator.

I want to create a custom indicator with only 1 buffer that include these 100 conditions above.

Before doing so, I wonder if there is any limit on the number of condition I can include in a custom indicator.

There is probably no limitation but bear in mind this will slow your EA down so it will bee even more important not to do this for every tick unless you are specifically looking at bar 0, if not then there is nothing to be gained do it more than once per bar for returned values that will not be changing more frequently than once per bar. This can make a huge difference: https://www.mql5.com/en/forum/144240
 
RaptorUK:
There is probably no limitation but bear in mind this will slow your EA down so it will bee even more important not to do this for every tick unless you are specifically looking at bar 0, if not then there is nothing to be gained do it more than once per bar for returned values that will not be changing more frequently than once per bar. This can make a huge difference: https://www.mql5.com/en/forum/144240

Thank you for your advice.

I intend to run it on H4 and only return/calculate value once when the bar is closed.

Should you think it will cause much trouble or not when I run that Indicator.

How about doing the backtest? I guess it will take lots of time.

SCFX

 
scfx:

Thank you for your advice.

I intend to run it on H4 and only return/calculate value once when the bar is closed.

Should you think it will cause much trouble or not when I run that Indicator.

How about doing the backtest? I guess it will take lots of time.

SCFX

I don't think calculating once per H4 bar will give you any problems, even for many, many Technical Indicators and even in the Strategy Tester.
 
RaptorUK: I don't think calculating once per H4 bar will give you any problems, even for many, many Technical Indicators and even in the Strategy Tester.
You can't use the standard loop
int counted = IndicatorCounted();
if(counted < LOOKBACK) counted = LOOKBACK;
for(int iBar = Bars - 1 - counted; iBar > 0; iBar--){ Buffer[iBar] = ...

even with not calculating bar zero. Every temporary disconnect, time frame change, etc results in it calculating all bars. You likely want to limit iBar to some small maximum (like 10 depending on your EA.)

Reason: