Skip to content

KB/signal

IWM distance from 50DMA

Last verified

Auto-generated. This article is rebuilt from app/signals/config/signal_definitions.json by scripts/build_signals_kb.py. Edit the registry entry and re-run the script β€” do not edit this file directly.

IWM distance from 50DMA

What it is

IWM distance from 50DMA β€” registry key iwm_dist_50dma.

Signed fractional distance of IWM from its 50-day SMA: (price - SMA_50) / SMA_50. Positive = above, negative = below. market.py:_analyze_single_ticker computes Distance_from_50DMA for every ticker; downstream previously captured only IVR. Small-cap stretch/compression read β€” divergence from SPY signals breadth breakdown. Series starts at the 2026-06-05 deploy and FILLS FORWARD – the sparse history is intentional, not a defect (REFACTOR inventory Cat-1B); no backfill planned.

Data-pyramid tier

T1 β€” Signal. This metric sits at the signal layer of the platform’s six-tier data pyramid (T0 raw inputs β†’ T5 actionable read). The tier reflects how far the value is from a raw measurement β€” not how strongly it is validated. Abstraction and validation are separate axes: a higher tier is not a claim of stronger evidence.

Horizon & validation

No validated skill horizon is on file for this metric β€” read it as context / a data carrier, not a validated edge. Stamps are added only when a gated research verdict lands.

Source

Source module: market
Data source: back_fillable

Fetched directly from app/sources/market.py; see source code for the upstream API call and any provider-specific handling.

How it’s computed

(IWM_price - IWM_SMA_50) / IWM_SMA_50. Computed in market.py:_analyze_single_ticker from the 1-year price history; SMA_50 is the 50-period rolling mean. Extracted via engine.py from data[β€˜market’][β€˜equity_board’][β€˜IWM’][β€˜Distance_from_50DMA’].

Where it surfaces

Health-score / alignment role

Data carrier β€” no implication, no health-score contribution.

Persisted for downstream consumers (sparklines, base-rate matcher, calibration substrate) but does not classify into BULLISH / NEUTRAL / BEARISH and does not contribute to the 0-100 health score.

Release cadence

See also