MINUS_DM
MINUS_DM
Summary
Minus Directional Movement, the downward component of Wilder's directional movement system. Measures Wilder-smoothed downward price motion over the period. Higher -DM indicates stronger downward directional movement.
Formula
diffP = high - prevHigh; diffM = prevLow - low
-DM1 = diffM if (diffM > 0 and diffP < diffM) else 0
period<=1: output raw -DM1 per bar.
period>1: seed = sum of first (period-1) -DM1; then Wilder smooth each bar:
-DM = prevMinusDM - prevMinusDM/period (+ -DM1 when the bar qualifies)
Inputs
inHigh— High price of each barinLow— Low price of each bar
Outputs
outReal— Smoothed minus directional movement
Parameters
| Parameter | Type | Default | Accepted values | Description |
|---|---|---|---|---|
optInTimePeriod | integer | 14 | 1–100000 | Wilder smoothing period |
Properties
Numerical Stability: Initial Unstable Period
| Display Flags |
|---|
| ☐ Overlap Input |
| ✅ Independent Y-Axis i |
| ☐ Candlestick |
Implementation
TA-Lib Definition: minus_dm.c · minus_dm.yaml
| Native | File |
|---|---|
| C | ta_MINUS_DM.c |
| Rust | minus_dm.rs |
| Java | Core_MINUS_DM.java |
TA-Lib is also available for Python, R and more using a wrapper.
Aliases
Minus Directional Movement, -DM
See Also
PLUS_DM · MINUS_DI · PLUS_DI · DX · ADX · ADXR
References
- J. Welles Wilder, New Concepts in Technical Trading Systems, Trend Research (ISBN 0894590278)