Files

7.0 KiB
Raw Permalink Blame History

UBANDS: Ehlers Ultimate Bands

Ehlers' ultimate bands apply cycle-aware smoothing to define an envelope that resonates with dominant frequency.

Property Value
Category Channel
Inputs Source (close)
Parameters period (default DefaultPeriod), multiplier (default DefaultMultiplier)
Outputs Multiple series (Upper, Middle, Lower, Width)
Output range Tracks input
Warmup period bars
PineScript ubands.pine
  • Ehlers Ultimate Bands replace the conventional SMA foundation of Bollinger Bands with the Ultrasmooth Filter (USF), a 2-pole IIR filter with zero o...
  • Similar: BBands, SDChannel | Complementary: RSI for overbought/oversold | Trading note: Uncertainty bands; statistical confidence intervals around a moving average.
  • Validated against TA-Lib, Skender, and Tulip reference implementations where available.

Ehlers Ultimate Bands replace the conventional SMA foundation of Bollinger Bands with the Ultrasmooth Filter (USF), a 2-pole IIR filter with zero overshoot and minimal lag. Band width is determined by the RMS (Root Mean Square) of residuals between price and the smoothed centerline, providing a mathematically rigorous deviation measure that makes no assumptions about the distribution of returns. The USF is a recursive filter requiring O(1) computation per bar, while the RMS calculation scans the lookback window at O(n) per bar.

Historical Context

John F. Ehlers introduced Ultimate Bands in 2024 as part of his ongoing research into digital signal processing applied to financial markets. Ehlers' career spans decades of applying engineering concepts (particularly from electrical and mechanical engineering) to trading indicator design.

The key insight behind Ultimate Bands: traditional standard deviation measures assume stationarity and normality, assumptions that financial time series routinely violate. By measuring the RMS of actual residuals (the difference between price and the USF-smoothed value), the bands adapt to whatever distribution the market presents. RMS is the natural measure of dispersion around zero; since the residuals are already centered on the smooth, RMS is the mathematically correct choice.

The Ultrasmooth Filter itself is derived from Ehlers' work on maximally flat filters. Its 2-pole IIR design achieves zero overshoot (unlike many smoothing filters that ring on sharp price moves), minimal lag compared to SMA of equivalent smoothness, and excellent high-frequency noise rejection with 12 dB/octave rolloff.

Architecture & Physics

1. Ultrasmooth Filter Coefficients

The USF coefficients are derived from the period parameter n:


\text{arg} = \frac{\sqrt{2}\,\pi}{n}

c_2 = 2\,e^{-\text{arg}} \cos(\text{arg})

c_3 = -e^{-2\,\text{arg}}

c_1 = \frac{1 + c_2 - c_3}{4}

2. USF Recursion (Middle Band)

The filter processes input prices P_t through a 2-pole IIR structure:


\text{USF}_t = (1 - c_1)\,P_t + (2c_1 - c_2)\,P_{t-1} - (c_1 + c_3)\,P_{t-2} + c_2\,\text{USF}_{t-1} + c_3\,\text{USF}_{t-2}

During the first few bars (before sufficient history exists), the filter initializes directly to the input value.

3. Residuals and RMS

The residual captures the high-frequency component rejected by the filter:


r_t = P_t - \text{USF}_t

The RMS over the lookback window:


\text{RMS}_t = \sqrt{\frac{1}{n} \sum_{i=0}^{n-1} r_{t-i}^2}

4. Band Construction


U_t = \text{USF}_t + k \cdot \text{RMS}_t

L_t = \text{USF}_t - k \cdot \text{RMS}_t

where k is the multiplier (default 1.0). Note the default is 1.0 (not 2.0 as in Bollinger Bands), because RMS of residuals from the USF is typically larger than population standard deviation from an SMA.

5. Complexity

The USF recursion is O(1) per bar (four multiply-adds). The RMS calculation scans n residuals per bar, yielding O(n) total. Memory: two scalar states for USF history plus a buffer of n squared residuals.

Mathematical Foundation

Parameters

Symbol Name Default Constraint Description
n period 20 \geq 1 USF smoothing and RMS lookback period
k multiplier 1.0 > 0 RMS multiplier for band width

USF Transfer Function

In the z-domain:


H(z) = \frac{(1 - c_1) + (2c_1 - c_2)\,z^{-1} - (c_1 + c_3)\,z^{-2}}{1 - c_2\,z^{-1} - c_3\,z^{-2}}

Cutoff frequency: approximately f_c \approx 1/(2\pi n) cycles per bar. Rolloff: 12 dB/octave.

RMS vs Standard Deviation

Standard deviation measures dispersion around the mean: \sigma = \sqrt{E[(X - \mu)^2]}. RMS measures dispersion around zero: \text{RMS} = \sqrt{E[X^2]}. Since the residuals r_t = P_t - \text{USF}_t are already deviations from the smooth centerline, RMS is the correct measure. When the mean of residuals is zero (as it approximately is for a well-fitted filter), RMS equals standard deviation.

Output Interpretation

Output Interpretation
USF slope positive Underlying trend is up
Bands widening Residual volatility increasing
Bands narrowing Residual volatility compressing
Price at upper band High-frequency component is large positive
Price at lower band High-frequency component is large negative

Performance Profile

Operation Count (Streaming Mode)

UBANDS combines an O(1) USF IIR recursion (center line) with an O(n) RMS scan (band width):

Operation Count Cost (cycles) Subtotal
MUL + ADD (USF coefficients, 4 terms) 4 4 16
ADD (USF: 2 feedback + 3 feedforward) 5 1 5
SUB (residual = source - USF) 1 1 1
MUL (residual² for RMS buffer) 1 3 3
ADD (sum of squared residuals, n) n 1 n
DIV (sumSq / count) 1 15 15
SQRT (RMS) 1 20 20
MUL (k × RMS) 1 3 3
ADD/SUB (USF ± width) 2 1 2
Total ~$n + 16$ ~n + 65 cycles

For period 20: ~85 cycles/bar. The USF recursion is fast ($\sim$21 cycles); the RMS window scan at O(n) dominates.

Batch Mode (SIMD Analysis)

The USF is recursive (IIR dependency). The RMS scan over squared residuals is vectorizable:

Optimization Benefit
USF 2-pole IIR Sequential; 5 multiply-adds per bar
RMS accumulation (sum of r²) Vectorizable with Vector.Multiply + horizontal sum
Band arithmetic Vectorizable in a post-pass

Resources

  • Ehlers, J. F. (2024). "Ultimate Bands." Technical Analysis of Stocks & Commodities.
  • Ehlers, J. F. (2013). Cycle Analytics for Traders. Wiley.
  • Ehlers, J. F. (2001). Rocket Science for Traders. Wiley.