Skip to main content
On this page

Average Day Range Indicator: Daily Units, Stops and Position Sizing

· 6 min read
Pineify Team
Pine Script and AI trading workflow research team

Average Day Range (ADR) is an average of daily high-minus-low ranges. It provides historical range context, not a prediction of the next session's direction or maximum move. The data interval matters: averaging five-minute bar ranges is not the same as averaging daily ranges.

Average Day Range Indicator

Calculation and Units​

For N completed daily bars, add each day's high minus low and divide by N. A hypothetical five-day set of ranges of 1,800, 2,100, 1,950, 2,400 and 2,000 averages 2,050 price units. These are illustrative observations, not measured Bitcoin results.

The range excludes the distance between the previous close and the new session when that gap lies outside the day's high-low span. ATR instead smooths true range, which includes comparisons with the previous close. Its default TradingView smoothing also differs from a simple average. TradingView's ATR documentation.

Pineify's Preset Uses Chart Bars​

Pineify's Average Day Range preset has a Length input defaulting to 14 and a line-style setting. Its current calculation is the SMA of high minus low in the chart's context. It does not request daily data internally.

Chart contextMeaning of length 14
DailyAverage of 14 daily bar ranges
Five minutesAverage of 14 five-minute bar ranges
WeeklyAverage of 14 weekly bar ranges

Use a daily chart for the preset's daily interpretation. A daily measure displayed on an intraday chart requires explicit daily-data handling. Also specify the exchange session and whether the current unfinished day is included. An unfinished daily range generally expands during the session and is not comparable to a completed day's final range without that qualification.

TradingView's timeframe documentation explains requesting data from another interval and the historical/realtime timing implications.

Add and Inspect ADR​

How to search for and add indicator pages in the Pineify editor
  1. Add Average Day Range in Pineify's Visual Pine Editor.
  2. Set Length and line style, then generate the script.
  3. Compile it in TradingView and inspect it on a daily chart if daily range is the intended unit.
  4. Compare one output against the relevant high-low observations. Check whether the current bar is complete.

The preset displays in a separate pane. It does not automatically create a stop, choose a position size or guarantee compatibility after arbitrary script migrations.

Pineify Website

Use an Explicit Stop Distance for Sizing​

ADR can supply a scale for a research rule. It is not itself the loss per share. First define the entry-to-stop distance, then divide the risk budget by that distance, allowing for costs and broker increments.

Hypothetical stock example: ADR is $5 and a test rule places a stop 1.5 × ADR, or $7.50, from entry. With a $200 nominal risk budget, 200 / 7.50 = 26.67 shares. Rounding down to 26 whole shares gives $195 of nominal price-distance risk before fees, spread and slippage. Dividing by $5 instead would incorrectly assume a one-ADR stop.

A gap through the stop can produce a larger loss. ADR also does not establish how likely a profit target is to be reached. A session can exceed its historical average range by a large amount.

The Best Pine Script Generator

Compare Settings Without Inventing an Optimum​

A shorter daily lookback reacts more to recent daily ranges; it does not become an intraday calculation merely because the chart changes. A longer lookback retains older observations. Select a small set of integer lengths for a stated question, then evaluate the unchanged rule on separate data.

If comparing current intraday range with a completed-day ADR, record the time of day. A small morning range may simply reflect an incomplete session, rather than indecision or an impending breakout. Changing session definitions or feeds can also change the daily extremes.

Backtest the Complete Rule​

Define the entry, stop, target, sizing and bar-confirmation policy. A breakout above a prior high must use a level known before the entry; including the current high can change the intended condition. Record costs, test period, trade count and equity drawdown alongside returns.

Win rate is insufficient by itself. Under hypothetical fixed outcomes before costs, a 40% win rate with wins of 3R and losses of 1R yields 0.4 × 3 − 0.6 × 1 = 0.6R per trade. A 70% win rate with wins and losses of 1R yields 0.4R. That arithmetic assumes exact realized payoffs and says nothing about actual frequency, execution or future probabilities.

Parameter stability and held-out results are evidence to examine, not proof of a durable edge. No verified stock or crypto trading experiment supports a universal ADR length or target multiple here.

Frequently Asked Questions​

Is Pineify ADR always a daily measure?
No. Its current preset averages high-low ranges on the chart timeframe. Use daily bars for daily ranges; an intraday daily series requires separate timeframe handling.
How does ADR differ from ATR?
ADR averages daily high-low spans. True range also compares with the previous close to capture gaps, and ATR uses its selected smoothing method.
Can I divide risk directly by ADR?
Only if the intended stop distance is exactly one ADR and the units match. Use the actual entry-to-stop distance, costs and instrument contract specifications.
Does reaching ADR imply reversal?
No. An average is neither a price limit nor a probability threshold. The session can extend well beyond it.