True Range Indicator: Formula, Settings and How to Read It

True Range plots Wilder's per-bar true range: the largest of the bar's high-to-low span, the distance from its high to the previous close, and the distance from its low to the previous close. Unlike a plain high-minus-low range, it counts the gap between one bar and the next.

Senzoukria · Indicators · Updated September 2026


True Range ships with the Senzoukria desktop app, in the Volatility group of the indicator catalogue. It is drawn in its own panel below the chart.

What True Range measures

On the first bar of the series there is no previous close, so true range falls back to high minus low; every later bar takes the maximum of the three candidates. The result is non-negative by construction, which is why the negative colour parameter normally never appears — it exists as a contract guard, not as a market state. This series is the unsmoothed quantity that ATR averages, so the ATR distances used by Volatility Stop and Volatility Regime are built from exactly these values.

The formula, as implemented

This is not a description of how the indicator is usually defined elsewhere — it is what the shipped code computes, documented next to the implementation:

True Range par barre (Wilder) : TR[0] = H−L ; TR[i] = max(H−L, |H−closeₚ|, |L−closeₚ|). Histogramme — TR ≥ 0 par construction, la couleur négative n'est qu'un garde-fou de contrat.

How to read it

  • The height of each bar is its full price span, gap included, in price units.
  • A tall bar after a run of short ones marks an expansion; judge it against its neighbours rather than against a fixed number.
  • Spikes at the session open and around scheduled releases are ordinary, and often come mostly from the gap term rather than from movement inside the bar.
  • A sustained run of short bars is compression — the same condition the Squeeze indicator formalises with bands and channels.
  • Nothing here indicates direction: an up bar and a down bar of the same span are identical to this measure.

Parameters and defaults

Smoothing defaults to 1, meaning raw per-bar true range with no averaging, and accepts up to 200. Raising it produces a steadier line at the cost of responsiveness, and past that point the plot should be read as an average range rather than as a record of individual bars. The colour settings control the positive series and the guard branch.

True Range — parameters exposed in the app, with the values it ships with.
ParameterTypeDefaultRange
Smoothingnumber11 – 200

What it does not show

True range is a span and nothing else: it carries no direction, and the participation behind the move is absent from it. It treats a gap exactly like traded movement, so after a halt or a long weekend the first bar is inflated by a distance nobody could trade through. It is also blind to the path inside a bar: a single sweep and a dozen round trips of the same amplitude give the same value. On the very first loaded bar the calculation degrades to high minus low, so that one value depends on where your history begins.

Using it in Senzoukria

Add it from the Indicators panel of any footprint chart or candle chart. It runs on futures data from Rithmic or Databento and on crypto pairs from Binance and Bybit, on the same engine — the calculation does not change with the venue, only the data feeding it does. Market data subscriptions are billed by the provider, separately from the app.

See the full indicator library, or start with the order flow guide if you are new to reading aggression, delta and absorption.

Frequently asked questions

What is the difference between true range and ATR?
True range is the per-bar measurement; ATR is the smoothed average of those measurements, traditionally over 14 bars with Wilder's smoothing. Reading true range directly shows each bar's span, while ATR shows the prevailing level and absorbs individual outliers.
Does true range account for gaps between bars?
Yes, that is the point of the calculation. Two of the three candidates measure from the previous close to the current bar's high and low, so if price opens away from the previous close, that distance is included in the value even though it was never traded through.
Why is the first true range value different from the others?
The first bar in the loaded series has no previous close to compare against, so its true range is simply high minus low. That single value therefore depends on where your chart history starts; every subsequent bar uses the full three-way maximum.

Keep reading