DonovanWall

Range Filter [DW]

This is an experimental study designed to filter out minor price action for a clearer view of trends.

Inspired by the QQE's volatility filter, this filter applies the process directly to price rather than to a smoothed RSI .

First, a smooth average price range is calculated for the basis of the filter and multiplied by a specified amount.
Next, the filter is calculated by gating price movements that do not exceed the specified range.
Lastly the target ranges are plotted to display the prices that will trigger filter movement.

Custom bar colors are included. The color scheme is based on the filtered price trend.
Note di rilascio: Updates:

-> Migrated to v4.
-> Range Filter and the bands are now calculated in a singular function.
-> There are now two different calculation methods for the filter. Select the type you want to use via the "Filter Type" input. Type 1 is the original formula.
-> Multiple range sizing methods are now available. You can choose from the following scales:
- Points
- Pips (Works best with forex pairs, obviously)
- Ticks
- % of Price
- ATR
- Average Change (Default. This is the original sizing method.)
- Standard Deviation
- Absolute (Absolute numerical value)
-> Range smoothing is now optional, and you can specify your smoothing length. Smoothing only affects dynamic scales (ATR, Average Change, and Standard Deviation).
-> Filter movement can now be determined using wicks or close. This can be specified via the "Movement Source" input.
-> Stability Fix: Added correction for NaN values to stabilize initial states.
-> Reorganized the script structure.
-> Revamped the color scheme.
Note di rilascio: Updates:

- The Range Filter functions have now been rebuilt using Pine's awesome new array functions.

- Standard deviation calculation has been adjusted to calculate the same as TV's built in stdev() function.

- Rewritten filter direction and bar color variables.

- Included an external output variable for trend information that can easily be sent to other scripts without hardcoding.
The output format is 1 for bullish, and -1 for bearish.
To use this external variable with another script, simply select it from your other script's source dropdown tab.

- Added the ability to average range filter values based on a user defined number of filter changes.
This averaging method utilized the Conditional Sampling EMA function I introduced in my Resampling Filter Pack and only takes a new sample when the filter changes its value.
This opens up a whole new world of possible filter outputs.
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 a publication is governed by House Rules. You can favorite it to use it on a chart.

Want to use this script on a chart?
For my full list of premium tools, check the blog:
https://wallanalytics.com/

Reach out on Telegram:
https://t.me/DonovanWall

Commenti

Such an incredible script! Great job and thanks for what you are doing for this community man, please keep it up!
500coin
Rispondi
This indicator is perfection. So far my favourite on this platform. Thanks!
+5 Rispondi
Congrats to the developer for this superb indicator. I would like to program an alert whenever the filter goes red or green, but as far as I understand, it has a lot of invisible changes in color (cross between Color0 and Color1), and therefore it causes to many noise/false-signals. How can I make an alert that corresponds to the visual core trend Color0 /Color1 cross? Thanks
+3 Rispondi
DonovanWall aciriaco
@aciriaco, There aren't invisible transitions in the color. If you want to code signals for when filter direction changes, you need to use the upward and downward variables. These vars save the last directional state of the filter.
To make the signals, you can use a conditions like these:

bull_sig = upward==0 and upward
bear_sig = downward==0 and downward

That will signal the change in var states.
+2 Rispondi
aciriaco DonovanWall
@DonovanWall, thanks but no signal is triggered with the bull_sig and bear_sig as you stated. Made it work with a cross(upward,downward). Keep the good codes coming!!
Rispondi
DonovanWall aciriaco
@aciriaco, Whoops. I left out the previous bar identifier. My apologies.

What I meant was:

bull_sig = upward==0 and upward
bear_sig = downward==0 and downward

But yes, cross conditions for the variables work as well since they move between 0 and 1. Glad you got it to work.

Edit: apparently I didn't leave it out. TV comments don't like to support brackets I guess. You need to reference the previous bar for the ==0 parts. lol
+1 Rispondi
Thank you for your work! It is really a great indicator !
+3 Rispondi
this script is biggest service to the society...i heartly exprssing gratitude towards you.
+2 Rispondi
Hey @DonovanWall, great idea! The QQE is pretty powerful, would be great to see more applications of it on price action rather than rsi!
Cheers
+2 Rispondi
Thanks for this great code.
Is it possible to explain the different colors of bars?
+1 Rispondi
Home Screener azioni Screener forex Screener cripto Calendario economico Come funziona Caratteristiche Grafico Costi Invita un amico Regolamento Centro di supporto Soluzioni per broker & siti web Widget Librerie grafiche Libreria grafica leggera Blog & Novità Twitter
Profilo Impostazioni profilo Account e fatturazione Amici invitati Coin I miei ticket di supporto Centro di supporto Messaggi Privati Chat Esci