OPEN-SOURCE SCRIPT

Sequentially Filtered Moving Average

The previously proposed sequential filter aimed to filter variations lower than a certain period, this allowed to remove noisy variations and retain only the closing price values that occurred after a consecutive up/down, however because of the noisy nature of the closing price large filtering was impossible, in order to tackle to this problem the same indicator using a simple moving average as input is proposed, this allow for smoother results.

We will see that the proposed indicator can provide an alternative moving average that could be used as slow moving average in crossover systems.

Sequential Filter - An Original Filtering Approach


The Indicator

The length parameter as the same function as the one described in the sequential filter post, however here length also control the period of the moving average used input, in short larger values of length will return a smoother but less reactive output.

snapshot

In blue the moving average with length = 200, and in red the moving average with length = 50.

It is interesting to see how the moving average remain flat during ranging/flat market periods

snapshot

Unfortunately like the sequential filter the sequentially filtered moving average (SFMA) is not affected by large short term variations such as gaps or short term volatile events. This is because of the nature of the sequential filter to ignore movements amplitude and only focus on the variation period.

snapshot

Moving Average Crossover System

The SFMA is equal to a simple moving average of period length when a consecutive up/down sequence of size length has occurred, else the SFMA is equal to its precedent value, therefore we could expect less crosses between a fast moving average and the SFMA as slow moving average.

snapshot

We can see on the figure above that the fast moving average of period 50 (in green) cross more with the slow moving average of period 200 (in red) than with the SFMA of period 200 (in blue).

snapshot

Crosses can occur at the same time as with the classical slow moving average (in red) or a bit later.

Conclusion

A new moving average based on the recently proposed sequential filter has been proposed, it can be seen that under a moving average crossover system the proposed moving average seems to be more effective at producing less crosses without necessarily doing it with an excessive lag, in fact the moving average has either lag (length-1)/2 or lag length.

In the future it could be interesting to provide an hybrid alternative that take into account volatility as well as variations period.

Thanks for reading !
crossoverMoving Averagespatternsequencetrend

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?


Check out the indicators we are making at luxalgo: tradingview.com/u/LuxAlgo/
Also on:

Disclaimer