Zero Phase Filtering [Repaint] - ExperimentalImportant !
The indicator is for experimental purpose only, it must not be used as a decisional tool but only as a visual one (like Zig-Zag, Fractal etc). The information this indicator display is uncertain and subject to drastic changes over time. If you have further question feel free to pm me.
Introduction
Most of the filters you will find are causal, this mean that they depend on present and past input values, this explain the lag they produce. Non causal filters however will use future input values. A well know way to get a zero-phase filter is by using the forward backward method, but this is not possible in pinescript as i recall. So we have to use some kind of function that will display future values, this is possible using the security function in version 2 or the one in version 3 using barmerge.lookahead_on .
The Use Of A Repainting Indicator
Its always better to filter data in order to have a clearer view of what is happening, this can be useful when doing some forecasting or doing less formal kind of analysis. However since it repaint you cant use it as a signal provider or use signals of other indicators using this filter as source.
For example if you want to forecast a smooth indicator, the forecast of this indicator under normal circumstances could still have lag associated with it, so you would have to react before your forecast, this wont happen if you apply this filter as your indicator source.
The Filter
We smooth with a simple moving average the price provided by the security function twice, length control the smoothing level. Since security depend on the time frame you are in you must select your time frame in the indicator parameter selection window.
Filtering using 45 minutes time frame close price in a 5 minutes chart, we fix this by selecting our time frame.
Consider the fact that the input of the indicator is just periodic price, so sometimes the lag can sometimes be less or more than 0 and the estimation not centered.
The indicator can work on time frames up to 1h, after that the filter have some lag, i tried fixing this and i ended up having data errors.
Applying our filter as source for the rsi oscillator.
Conclusion
It is possible to have a kind of zero-phase filters, but it would be better if pinescript could support backward indexing thus making us able to do forward backward filtering.
Since noise can affect our analysis, applying smoothing without having to use offset in plot can be considered useful.
Non
B3 ALMA PendulumB3 Pendulums, quick little indicators that do change print inside the current bar, so beware. It is good for anticipation, but it is important to make sure the current and next bars follow through.
Ever wanted an indicator that really points out the micro term action in the form of a pendulum swing? This my attempt to show the market ups and downs in the smallest amount of lag possible. This indicator is designed to bounce back and forth from 100 to -100 as it shows you the price's relationship to ALMA. Really its just a simple deviance from mean study made to amplify the quick ups and downs, and kind of the neatest on Heikin Ashi setups. It looks like Arabic language at first glance, lol.
This should be easy to template out to your own MA's. ~I hope you are enjoying the B3 scripts, that is now 9 open source shares and a couple protected ones. I still plan on a few more give-a-ways, as I prepare some of the algorithmic things I do for subscription. Feel free to comment about things you would like to see! ~B3
Commitments of Traders(COT) Major's noncom net (beta) By Lowphata charted commitments of traders report
of most majors on one chart.
EUR=red
GBP=blue
CHF=white
CAD=dark green
USD bright green
JPY=yellow
AUD=brown


