Low volatility : how do you filters signals in your EA ?

 

Hi there !

Anyone who coded an EA knows that it gives a lot of wrong signals, particulary when the volatility is low. If you use a MA crossing strategy it won't stop crossing, nor positionning during this moments.

Many suggests a time filter (trade hours). How do you do ?


EDIT : No answer with BB. Taking the BB width as a filter shows lack ... cause it misses the breakout when BB congests.

 
blouf:

Anyone who coded an EA knows that it gives a lot of wrong signals, particulary when the volatility is low.

Many suggests a time filter (trade hours). How do you do ?

I suggest a minimum volatility filter :)
 
oddpip:
I suggest a minimum volatility filter :)
That's what is a filter using the bb. When the BB congests, the width between the 2 bands is minimal, then come the breakout. If you filter that way, you miss (some of) the best opportunities.
 
blouf:
That's what is a filter using the bb. When the BB congests, the width between the 2 bands is minimal, then come the breakout. If you filter that way, you miss (some of) the best opportunities.
I check for breakouts also when volatility is low, then if it breaks also the minimum volatility threshold is good enough to open an order.
 
oddpip:
I check for breakouts also when volatility is low, then if it breaks also the minimum volatility threshold is good enough to open an order.
How do you get the minimum volatility threshold ? The volatility is down, but a breakout doesn't always happen. Wrong signals.
 
blouf:
How do you get the minimum volatility threshold ? The volatility is down, but a breakout doesn't always happen. Wrong signals.
Maybe your breakout detection is too sensitive. Try to raise its threshold.
 
blouf:

Hi there !

Anyone who coded an EA knows that it gives a lot of wrong signals, particulary when the volatility is low. If you use a MA crossing strategy it won't stop crossing, nor positionning during this moments.

Many suggests a time filter (trade hours). How do you do ?


EDIT : No answer with BB. Taking the BB width as a filter shows lack ... cause it misses the breakout when BB congests.

You can use filter code like this:

Hour()>12

 
Makeprofitsuper:

You can use filter code like this:

Hour()>12

I've tried to change to change thresold filter by adding a dead zone like : < min BB = give signals / > max bb = give signals. But it requires an optimization & ... damn I did not find the suitable volatility indicator to manage this.

I tried also with Money Flow Index, it gives good results but this error. Two weeks it didn't take any trade, but when running it in the strategy tester, it gives the same error but *trade.*

So I'm not sure on what to do. Any suggestion ?

cannot load indicator 'Money Flow Index' [4805]
with error 4805 : Error applying an indicator to chart
 
Volatility or not, MA crossing is not sufficient to set an entry condition. (You can have high volatility with MA==0 )
You need also a signal of relevant price movement/speed in one direction. And it should be higher than the recent volatility.
 
In my experience it is not actually a volatility issue. The problem is with your indicator. It is my guess that you are trying to use a "short" ma with a period of 1 to 5 or so. You are also running it on a MODE CLOSE with no shift. This configuration of the iMA is inherently unstable. You will have difficulty optimizing it or running consistent back tests. Your results will be different every time. I would have to see your script to guarantee a fix but I would suggest that you eliminate ALL of your volatility filter efforts and simply switch ALL of your MA functions to MODE_OPEN. If this doesn't fix the problem then you have other issues with your coding.
 

@oddpip : absolutely, but MA crossing gives a lot of false signals. I have to filter it. And volatility seems to be the more relevant. Do any price mov/speed indicator like RSI doing it better ?

@Quantum : Why the volatility filter ? (see higher).

Reason: