Hilbert Transform - Dominant Cycle Phase (HT_DCPHASE)
Summary
Hilbert Transform Dominant Cycle Phase: the instantaneous phase (in degrees) of the dominant market cycle, derived from a homodyne discriminator on a Hilbert-transformed, smoothed price. One real output per bar. Output is degrees, in the range −45 to 315 (a full 360° span).
Interpretation
DCPhase is a rotating angle: it locates the current bar within the dominant price cycle the Hilbert-transform model has locked onto. One full lap of that cycle is the same −45°-to-315° span described above — Ehlers' original algorithm cuts the circle at 315° instead of the more common 0°. HT_TRENDMODE separately flags bars where the market isn't cycling at all.
Inputs
inReal— Price series to analyze
Outputs
outReal— Dominant cycle phase in degrees
Properties
Numerical Stability: Initial Unstable Period
| ☐ Overlap Input |
| ✅ Independent Y-Axis i |
| ☐ Candlestick |
| ☐ Can Output NaN or ±Inf |
| ☐ Identity at Period 1 |
Implementation
TA-Lib Definition: ht_dcphase.c · ht_dcphase.yaml
| Native | File |
|---|---|
| C | ta_HT_DCPHASE.c |
| Rust | ht_dcphase.rs |
| Java | Core_HT_DCPHASE.java |
TA-Lib is also available for Python, R and more using a wrapper.
Aliases
Hilbert Transform Dominant Cycle Phase
See Also
HT_DCPERIOD · HT_PHASOR · HT_SINE · HT_TRENDLINE · HT_TRENDMODE · MAMA · WMA
References
- John F. Ehlers, Rocket Science for Traders: Digital Signal Processing Applications, John Wiley & Sons (ISBN 0471405671)