Indicator Lab · ADX · Trend structure
Average Directional Index
Smooths the relative imbalance between positive and negative directional movement.
BTCUSDC · 1h · latest 30 complete days · shared snapshot · no account required
How pronounced is directional movement, regardless of its direction?
Smooths the relative imbalance between positive and negative directional movement.
One dataset, the same parameters and the same candle for application and explanation.
BTCUSDC · confirmed hourly candles
Snapshot retrieved: 11 Oct 2026, 15:52 UTC · stored snapshot · background refresh scheduled · age when opened: 3,137.4 min
11 Sept 2026, 15:00 — 11 Oct 2026, 15:00 UTC · 720 evaluation candles · 3000 earlier candles for warm-up only. Your opened snapshot stays fixed. A visit can refresh a stale cache in the background for later visitors; fetching fresh is not a tick stream.
Parameters and precise application
Number of confirmed hourly candles. Warm-up history stays fixed; only this parameter changes.
Base rule with this filter
Spot long/cash: BUY only on a confirmed EMA10 crossing above EMA30 AND ADX ≥ 25. SELL on the reverse cross regardless of the filter. No catch-up entries. Next open with costs; control: the same EMA rule without the filter.
Shared capital and cost model
Includes the buy fee; the remainder stays in cash.
One adverse markup/markdown. Do not add spread a second time.
1 = next open. No retroactive trade at the signal close.
Preparing the calculation module. The shared market snapshot is already available.
Calculation and interpretation of the same candle
ADX describes directional strength; DI+ and DI− provide a separate directional comparison. A filter restricts entries of a complete base rule.
TR=max(H−L,|H−Cprev|,|L−Cprev|); DI±=100·Wilder(DM±)/Wilder(TR); DX=100·|DI+−DI−|/(DI++DI−); ADX=Wilder(DX)
TA-Lib Wilder initialization; +DI/−DI are explicitly named, ADX measures strength rather than direction. ADX and DI use the same period.
High ADX alone means neither buy nor sell. A threshold filter can miss entries and must be examined including costs.
Checked sources and reproducibility
- TA-Lib · ADX · v0.6.4
Original C reference implementation. Custom scaling and additional lines are described separately. · checked 2026-10-11
- pandas-ta 0.4.71b0 · pandas_ta/trend/adx.py
Verified original file from the versioned library; the implemented convention and deliberate differences accompany the formula. · checked 2026-10-11
- The Probability of Backtest Overfitting
Why selection across many historical trials can produce misleading results. This tool does not estimate PBO or claim out-of-sample profitability. · checked 2026-10-11
Data source, versions and hash
- Market data source
- https://data-api.binance.vision/api/v3/klines?symbol=BTCUSDC&interval=1h&startTime=1778338800000&endTime=1791730799999
- Specification
- indicator-library-1.0.0
- Execution model
- signal-simulation-1.0.0
- Data hash
- 42ac75e03e017bcac023d319dabb0928e0562fda0e51f4bfa5549ac50e3e8be4
- Disclosed candles including warm-up
- 3720
The sources support definitions and methodological limits. They do not establish profit for this specific BTCUSDC rule. This analysis is descriptive; parameter trials on the same history are not independent out-of-sample evidence. Parity with a deployed unCoded engine is not claimed.