Range Expansion Streak Indicator: Formula, Settings and How to Read It

Range Expansion Streak counts how many bars in a row have had a larger high-low range than the bar before them. The count resets to zero the moment a bar fails to expand, including when its range is exactly equal to the previous one.

Senzoukria · Indicators · Updated September 2026


Range Expansion Streak 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 Range Expansion Streak measures

For each bar the study compares high minus low with the same figure on the preceding bar. A strictly larger range increments the running count; anything else — smaller or exactly equal — sets it back to zero. The strict inequality is deliberate: two bars of identical size describe a market holding its rhythm, not accelerating. The first bar of the series is 0 because it has no predecessor, and every bar emits a value including the zeros, so a run of zeros is visible as a measurement rather than as a hole in the histogram. There is no lookback parameter, because the definition never looks further back than one bar.

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:

Range Expansion Streak — combien de barres CONSÉCUTIVES ont un range plus grand que la précédente : range[i] = high[i] − low[i] streak[0] = 0 (pas de précédente) streak[i] = range[i] > range[i−1] ? streak[i−1] + 1 : 0 Inégalité STRICTE : un range ÉGAL n'est pas une expansion, il remet le compteur à zéro. POURQUOI : l'expansion de range est le signal d'entrée en mouvement (l'inverse de `range-compression`, patterns.ts) ; deux barres de range identique, c'est un marché qui tient son rythme, pas qui accélère. Un point PAR BARRE, y compris la première et les zéros : 0 est une mesure (« pas d'expansion en cours »), pas une absence — l'histogramme ne saute aucune barre, ce qui rend la lecture des séries de zéros honnête. Aucun paramètre de période : la définition ne compare qu'à la barre précédente, il n'y a pas de fenêtre à régler.

How to read it

  • A count of three or four means each of those bars was larger than the one before it — an accelerating range, with no directional content.
  • The reset to zero is often as informative as the streak: it marks the exact bar where expansion stopped.
  • Long runs of zero describe a market whose bar size is stable or shrinking, which can be a quiet range or a steady trend with constant bar size.
  • Because equality resets the count, instruments with a coarse tick size and small bars show shorter streaks than the eye expects, since identical ranges are common there.
  • Check the streak against the actual range: three small expansions in a row are still three small bars.

Parameters and defaults

The only numeric setting is smoothing, which defaults to 1 and leaves the raw count untouched; it accepts up to 200, and any value above 1 averages the streak across bars, turning a discrete counter into a rounded curve. The two colour settings apply to the histogram, one for bars with a streak in progress and one for the zeros.

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

What it does not show

The comparison is against the immediately preceding bar only, so the indicator has no notion of whether the current range is large or small in absolute terms — a streak can build entirely inside a very quiet stretch. It uses high and low alone: volume, delta and the position of the close are not inputs. Bar type matters a great deal, since time bars, tick bars and volume bars distribute range differently and mechanically produce different streak distributions. Setting smoothing above 1 removes the property that makes the study readable, namely the exact bar on which expansion broke.

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 counts as a range expansion in this indicator?
A bar whose high minus low is strictly greater than the previous bar's high minus low. Equal ranges do not count and reset the streak to zero. The comparison uses the bar range only, not the true range, so the distance between one bar and the next is not included.
Why does my range expansion streak reset when the bars look the same size?
Because bars of exactly equal range reset the count by design. On instruments with a coarse tick size, two consecutive bars frequently span the identical number of ticks even though they look different on screen. The counter treats that as the market keeping its rhythm rather than accelerating.
Does the Range Expansion Streak have a period setting?
No. The definition only compares each bar with the one immediately before it, so there is no window to configure. The only numeric parameter is an optional smoothing value, which defaults to 1 and leaves the raw count unchanged.

Keep reading