OPEN-SOURCE SCRIPT
Updated ADR% + ADR

ADR% — Average Daily Range as a percentage, plotted as a line so you can
see how a stock's volatility has evolved rather than just where it stands
today.
Most ADR% tools give you a single number in the corner of the chart. That
tells you whether a stock qualifies today, but not whether it is waking up
or going quiet. A stock at 4.5% that was at 2% a month ago is a different
setup from one at 4.5% that was at 9%. This script plots the full history
and keeps the current readout in a table alongside it.
WHAT IT CALCULATES
ADR% = 100 * (SMA(High / Low, 20) - 1)
Each bar is converted to a percentage before averaging. This matters: a
formula that averages absolute ranges first and divides by the current
close will understate ADR% on stocks that have trended up over the
lookback window — exactly the names momentum traders are screening for.
The table also shows absolute ADR in price units, which is what you
actually need for stop distance and position sizing.
An alternative (High - Low) / Close method is available in settings.
ADR, NOT ATR
This uses High - Low, not True Range. Gaps are excluded by design. ADR
measures the intraday range a position can work with after entry, which is
the assumption behind ADR-based stops and sizing. ATR includes overnight
gaps and will read materially higher on gap-prone momentum names.
SETTINGS
Length Default 20, the convention in momentum screening.
ADR% method H/L ratio (default) or (H-L)/Close.
Force daily On intraday charts, pulls daily bars so "ADR" always
means average DAILY range. Uses lookahead_off, so
history does not repaint. On by default.
Threshold Reference line, default 5%. The table value turns green
at or above it.
Table Position, text size, or hide entirely.
ALERTS
Two conditions fire when ADR% crosses above or below the threshold —
useful for catching a quiet base starting to expand, or a former mover
compressing out of tradable range.
NOTES
Designed for daily charts. Threshold values quoted in momentum trading
literature (5%, 7%) assume the H/L method and a 20-day length, so keep
those defaults if you want the numbers to line up with public screeners.
ADR% is a volatility filter, not a signal. It tells you whether a stock
moves enough to be worth trading and how much room to give a stop. It says
nothing about direction.
see how a stock's volatility has evolved rather than just where it stands
today.
Most ADR% tools give you a single number in the corner of the chart. That
tells you whether a stock qualifies today, but not whether it is waking up
or going quiet. A stock at 4.5% that was at 2% a month ago is a different
setup from one at 4.5% that was at 9%. This script plots the full history
and keeps the current readout in a table alongside it.
WHAT IT CALCULATES
ADR% = 100 * (SMA(High / Low, 20) - 1)
Each bar is converted to a percentage before averaging. This matters: a
formula that averages absolute ranges first and divides by the current
close will understate ADR% on stocks that have trended up over the
lookback window — exactly the names momentum traders are screening for.
The table also shows absolute ADR in price units, which is what you
actually need for stop distance and position sizing.
An alternative (High - Low) / Close method is available in settings.
ADR, NOT ATR
This uses High - Low, not True Range. Gaps are excluded by design. ADR
measures the intraday range a position can work with after entry, which is
the assumption behind ADR-based stops and sizing. ATR includes overnight
gaps and will read materially higher on gap-prone momentum names.
SETTINGS
Length Default 20, the convention in momentum screening.
ADR% method H/L ratio (default) or (H-L)/Close.
Force daily On intraday charts, pulls daily bars so "ADR" always
means average DAILY range. Uses lookahead_off, so
history does not repaint. On by default.
Threshold Reference line, default 5%. The table value turns green
at or above it.
Table Position, text size, or hide entirely.
ALERTS
Two conditions fire when ADR% crosses above or below the threshold —
useful for catching a quiet base starting to expand, or a former mover
compressing out of tradable range.
NOTES
Designed for daily charts. Threshold values quoted in momentum trading
literature (5%, 7%) assume the H/L method and a 20-day length, so keep
those defaults if you want the numbers to line up with public screeners.
ADR% is a volatility filter, not a signal. It tells you whether a stock
moves enough to be worth trading and how much room to give a stop. It says
nothing about direction.
Release Notes
remove the top right corner information, if you need that, use the other version that I created. You can find it in my bioOpen-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Trade what you see, be open minded.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Trade what you see, be open minded.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.