MOVE 1y percentile
Last verified
Auto-generated. This article is rebuilt from
app/signals/config/signal_definitions.jsonbyscripts/build_signals_kb.py. Edit the registry entry and re-run the script β do not edit this file directly.
MOVE 1y percentile
What it is
MOVE 1y percentile β registry key move_pct_1y.
MOVE Index trailing ~1-year percentile rank (0-100), computed at capture time from the trailing daily_signals.move history. Pure rate-vol MAGNITUDE carrier for the drawdown-risk / state-description lane β βis bond vol cheap or expensive vs its own last year?β. No bands, no health-score contribution; the raw MOVE level (move) keeps its own banded carry_risk role. Mirrors wti_percentile_1yβs trailing-window classification (shared _trailing_percentile_1y core).
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: capture
Data source: computed
Derived metric β produced inside the platform (app/signals/capture.py or equivalent) rather than fetched as a raw upstream value. See the How it's computed section below for the formula.
How itβs computed
Percentile rank (0-100, midrank) of todayβs MOVE close against the trailing ~252-row daily_signals.move history (exclusive of today). Computed at capture in app/signals/capture.py:_inject_move_percentile (and mirrored at the API edge by app/signals/routes.py:_inject_move_percentile) via app/signals/implications.py:compute_move_percentile_1y, which wraps the shared _trailing_percentile_1y core that wti_percentile_1y also uses. NULL when the trailing window carries fewer than 30 usable points (series start).
Where it surfaces
- API field:
volatility.move_pct_1yonGET /api/v1/signals/latest - Surface:
daily_signalsrow (daily-cadence persistence)
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
- Publishes:
intraday
See also
- /kb/api/get-signals-latest β API endpoint that serves this field.