- Updated the name and description of the Hilbert Trendline (HTIT) to "Ehlers Hilbert Transform Instantaneous Trend (HTIT)". - Changed the name and description of the MESA Adaptive Moving Average (MAMA) to "Ehlers MESA Adaptive Moving Average". - Modified the Center of Gravity (CG) indicator to "Ehlers Center of Gravity (CG)". - Renamed the Detrended Synthetic Price (DSP) to "Ehlers Detrended Synthetic Price (DSP)". - Updated the Autocorrelation Periodogram (EACP) to "Ehlers Autocorrelation Periodogram (EACP)". - Changed the Homodyne Discriminator (HOMOD) to "Ehlers Homodyne Discriminator (HOMOD)". - Updated the Hilbert Transform Dominant Cycle Period and Phase indicators to include "Ehlers" in their names. - Renamed the Hilbert Transform Phasor Components to "Ehlers Hilbert Transform Phasor Components (HT_PHASOR)". - Updated the SineWave indicator to "Ehlers Hilbert Transform SineWave (HT_SINE)". - Changed the Phasor Analysis indicator to "Ehlers Hilbert Transform Phasor Components (HT_PHASOR)". - Updated the SSF-Based Detrended Synthetic Price to "Ehlers SSF Detrended Synthetic Price (SSFDSP)". - Renamed the Ultimate Channel to "Ehlers Ultimate Channel (UCHANNEL)". - Added new indicators: Moving Average Variable Period (MAVP), Ehlers Predictive Moving Average (PMA), Ehlers Reverse EMA (REVERSEEMA), and Ehlers Trendflex Indicator (TRENDFLEX). - Updated various SVG badges to reflect changes in classes, comments, source files, lines of code, methods, and public types.
3.2 KiB
DECO: Ehlers Decycler Oscillator
Overview
The Decycler Oscillator (DECO) is a DSP-based oscillator developed by John F. Ehlers that isolates intermediate-frequency market cycles. It computes the difference between two 2-pole Butterworth high-pass filters with different cutoff periods, revealing the spectral band between the two cutoff frequencies.
Origin
- Author: John F. Ehlers
- Source: "Decyclers", Technical Analysis of Stocks & Commodities, September 2015
- Category: Oscillator / Digital Signal Processing
Formula
The DECO uses two 2-pole Butterworth high-pass filters:
α = (cos(0.707 × 2π/period) + sin(0.707 × 2π/period) - 1) / cos(0.707 × 2π/period)
HP[n] = (1 - α/2)² × (x[n] - 2×x[n-1] + x[n-2]) + 2×(1-α) × HP[n-1] - (1-α)² × HP[n-2]
DECO = HP_long - HP_short
The 0.707 factor (1/√2) places the filter response at the -3 dB Butterworth design point.
Transfer Function
Each HP filter has the z-domain transfer function:
H(z) = (1-α/2)² × (1 - 2z⁻¹ + z⁻²) / (1 - 2(1-α)z⁻¹ + (1-α)²z⁻²)
The DECO output is the difference H_long(z) - H_short(z), which forms a bandpass response isolating cycles between the short and long cutoff periods.
Parameters
| Parameter | Type | Default | Range | Description |
|---|---|---|---|---|
| shortPeriod | int | 30 | > 0 | Short HP cutoff period (bars) |
| longPeriod | int | 60 | > shortPeriod | Long HP cutoff period (bars) |
Interpretation
The Decycler Oscillator provides several analytical perspectives:
-
Zero-Line Crossovers:
- Crossing above zero indicates bullish cycle momentum
- Crossing below zero indicates bearish cycle momentum
- The zero-crossing timing is relatively lag-free
-
Band Isolation:
- The oscillator extracts only cycles within the frequency band defined by the two cutoff periods
- Shorter cycles and longer trends are both rejected
- This makes the oscillator highly selective
-
Divergence Analysis:
- Bullish divergence: price makes lower lows while DECO makes higher lows
- Bearish divergence: price makes higher highs while DECO makes lower highs
- Indicates potential trend reversal
-
Multiple Instance Analysis:
- Ehlers recommends using multiple DECO instances with different period pairs
- Crossovers between instances with different coefficients can identify trend reversals
Warmup Period
The indicator requires longPeriod bars before producing reliable output. The first two bars always output zero (insufficient price history for the 2-pole HP filter).
Properties
- Range: Unbounded (oscillates around zero)
- Complexity: O(1) per bar (pure IIR filter, no lookback buffer needed)
- Memory: O(1) — only stores filter state variables
Related Indicators
- Decycler (DECYCLER): The low-pass complement — removes cycles, keeps trend
- SSF-DSP: Similar concept using Super Smooth Filters instead of HP filters
- Roofing Filter: HP + SSF combination for cycle isolation
- BandPass Filter: Ehlers' direct bandpass approach
References
- Ehlers, J. F. (2015). "Decyclers." Technical Analysis of Stocks & Commodities, September 2015.
- Ehlers, J. F. (2013). Cycle Analytics for Traders. Wiley. Chapter 4.