Now with an adaptive period setting! I use in-phase & quadrature dominant cycle measurement ( IQ IFM) method to set the period dynamically.
This method favors longer periods which tend to produce smoother, albeit laggier bandpass oscillator plots. From my quick tests, I tend to have lag between 4 and 8 bars, depending on the Timeframe.
The lower timeframes tend to have more noise and thus produce more interfering frequencies that may cause lag.
- Source: Select the data source to perform calc's on (close, open, etc...)
- Period: Select the period to tune. Periods outside of this value will be attenuated (reduced)
- Adaptive: Enable to have the I-Q IFM set the period for you (disables Period setting)
- Bandpass Tolerance: Allow periods that are plus/minus the chosen period to pass.
- Cycle Tolerance: Sensitivity of cycle mode. Lower values consider trends more frequent, higher values consider cycles more frequent.
Bandpass tolerance example: for instance, if this setting is 0.1 (10%) and Period is set to 20, then waves with a period of 18 - 22 will pass.
>How to read
- Red line is the bandpass output, showing a lagged version of the dominant cycle representing the
- Black lines are the upper and lower bounds for a cycle
- Green Background indicates an uptrend
- Red background indicates a downtrend
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 a publication is governed by House Rules. You can favorite it to use it on a chart.