Skip to main content

Range Expansion Rate

Quick Reference

PropertyValue
Dimensionstability
Categorymomentum
Versionv1.0
Output Columnrange_expansion_rate

Rate of price range expansion 鈥?measures whether volatility is expanding or contracting

Formula

((high - low) - shift((high - low), lookback)) / shift((high - low), lookback)

CDM Inputs

ColumnCDM TableDescription
highcdm_fixed_barsOHLCV bar data 鈥?open, high, low, close, volume per bar interval
lowcdm_fixed_barsOHLCV bar data 鈥?open, high, low, close, volume per bar interval

Parameters

ParameterTypeDefaultDescription
lookbackinteger60000Window for range comparison

Output

Column: range_expansion_rate

Rate of change of high-low range (positive = expanding)

Market Intuition & Trading Rationale

Range expansion rate measures whether the high-low range is growing or shrinking: (range[t] - range[t-lookback]) / range[t-lookback]. A positive rate means the range is expanding 鈥?volatility is increasing, breakouts are more likely, and the market is entering a directional phase. A negative rate means the range is contracting 鈥?volatility is decreasing, the market is coiling, and a breakout may be imminent in either direction.

Range expansion/contraction cycles are one of the most reliable market patterns. Periods of low volatility (contracting range) tend to be followed by periods of high volatility (expanding range) 鈥?the "volatility clustering" phenomenon. The range_expansion_rate captures where the market is in this cycle: contracting (negative rate) suggests positioning for a breakout; expanding (positive rate) suggests the breakout is already underway.

Usage Cases

  • Breakout anticipation: Negative range_expansion_rate (contracting) 鈫?the market is coiling. Set entry orders on both sides of the range. When the rate turns positive, the breakout has started 鈥?cancel the losing side and ride the winning side.
  • Volatility regime classification: Positive and rising 鈫?expansion regime (trend following). Negative and falling 鈫?contraction regime (mean reversion or breakout anticipation). Near zero and stable 鈫?equilibrium (range-bound strategies).
  • stability context: Used in opening_range_breakout pack 鈥?range expansion confirms that the opening range breakout has follow-through rather than being a false breakout that immediately reverses.

YAML Definition

name: range_expansion_rate
description: Rate of price range expansion 鈥?measures whether volatility is expanding
or contracting
category: momentum
dimension: stability
version: v0.9.0 (Beta)
required_inputs:
- high
- low
output_column: range_expansion_rate
output_description: Rate of change of high-low range (positive = expanding)
tags:
- stability
- range
- volatility
parameters:
lookback:
type: integer
description: Window for range comparison
required: false
default: 60000
formula: ((high - low) - shift((high - low), lookback)) / shift((high - low), lookback)