Indicators: Signal to noise filter

 

Signal to noise filter:

The purpose of this indicator is to identify market fases that have too small amplitudes. These fases are useless even for systems designed for trading ranges markets. When the green line is BELOW the gray line - DON'T trade.

Author: Luis Guilherme Damiani

 
impressive, would it be possible to display the result as a histogram, with deeppink is NOTRADE and orange is trade and the values of the histogram are fixed as 1. ig anybody can do this woudl you please post the code
THX
 
You need to test to believe how powerful is. Just after a few test It becomes one of my most useful tools.

It´s impressive.

I almost eliminated bad trades due to choppy or ranging markets.

Thanks.
 
Excellant indicator ,really saved me from unwanted trades.Thanks .I wonder if anyone can incorporate an audio alert sytem into this.

thanks

William Narey Munny
 

Not bad.

 

Can someone help to read the indicator from our MQL4 code? 
I use:

iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter");

 but the compilation says "wrong parameters count"...

 
Rossella.Dy:

Can someone help to read the indicator from our MQL4 code? 
I use:

 but the compilation says "wrong parameters count"...

Try passing it the parameters it expects. That indicator has the following input parameters:
//---- input parameters
extern int       Viscosity=7;
extern int       Sedimentation=50;
extern double    Threshold_level=1.1;
extern bool      lag_supressor=true;
According to MQL4 docs on iCustom, if parameters aren't specified it should use default values
iCustom - MQL4 Documentation
  • docs.mql4.com
iCustom - MQL4 Documentation
 

I tried, but it returns 0.

There must be something with the parameters because at a certain point I manually added the parameters but (by mistake) did not add the trailing "mode" and "shift" parameters, and it started giving values. a bit weird, but I had some output.

 These are the combinations I tried: the second indicator is the new one from Damiani's website (which gives a different output and might be nice to have too.

double damianiOUT_1 = iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter", 4, 0);  // Returns 0.0
double damianiOUT_x = iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter", 7, 50, 1.1, true); // Gives weird output
double damianiOUT_2 = iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter", 7, 50, 1.1, true, 4, 0);  // Returns 0.0
double damianiOUT_New_1 = iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter v3.2", 13, 20, 40, 100, 1.4, true, 2000, 7, 0); // Returns 0.0
double damianiOUT_New_2 = iCustom (Symbol(), PERIOD_CURRENT, "Damiani_volatmeter v3.2", 7, 0); // Returns 0.0

 

Even if that worked, I am not sure that is the value we need: what we need to know is if the GreenLine > GreyLine which gives us a Trade signal.

The threshold serves only for internal calculation (I initially thought the buy signal was for indicator > threshold).

 

 
Rossella.Dy:

I tried, but it returns 0.

There must be something with the parameters because at a certain point I manually added the parameters but (by mistake) did not add the trailing "mode" and "shift" parameters, and it started giving values. a bit weird, but I had some output.

 These are the combinations I tried: the second indicator is the new one from Damiani's website (which gives a different output and might be nice to have too.

 

Even if that worked, I am not sure that is the value we need: what we need to know is if the GreenLine > GreyLine which gives us a Trade signal.

The threshold serves only for internal calculation (I initially thought the buy signal was for indicator > threshold).

 

Have another read through the iCustom doc again to see how to call it correctly. After the custom indicator input parameters, you list the mode (buffer 0 to 7) and the shift (bar number) you want. So you'll need to know which buffer holds the green line data and which holds the grey. If the indicator is outputting data to the buffers, you will see it in the data window. The closest you got in your example would be damianiOUT_2. You've asked for the 5th buffer (index 4) but looking at your screen shot, there are only 3. I'd suggest what you are looking for is either in buffer 1 (0), 2 (1) or 3 (2).

 

UPDATE: Code confirms: Buffer index 0=threshold (silver),    1 = vol_m (red),    2 = vol_t (green)

 
Filter:

Have another read through the iCustom doc again to see how to call it correctly. After the custom indicator input parameters, you list the mode (buffer 0 to 7) and the shift (bar number) you want. So you'll need to know which buffer holds the green line data and which holds the grey. If the indicator is outputting data to the buffers, you will see it in the data window. The closest you got in your example would be damianiOUT_2. You've asked for the 5th buffer (index 4) but looking at your screen shot, there are only 3. I'd suggest what you are looking for is either in buffer 1 (0), 2 (1) or 3 (2).

 

UPDATE: Code confirms: Buffer index 0=threshold (silver),    1 = vol_m (red),    2 = vol_t (green)

 

It's good, it works!!

My code doesn't but at least I have got a solid base! Thanks! 

 
Rossella.Dy:

 

It's good, it works!!

My code doesn't but at least I have got a solid base! Thanks! 

Good stuff, glad to hear :)
Reason: