KB / signal
60-day beta vs SPY
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.
60-day beta vs SPY
What it is
60-day beta vs SPY — registry key screener_beta_60d.
Per-ticker rolling 60-day OLS beta vs SPY log returns. Stored in screener_features_daily. Feeds archetype scorers (A5 mechanical-selling reversion: beta-residual drop on forced-flow days).
Source
Source module: screener
Data source: computed
Derived metric — produced inside the platform (app/sources/screener.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
OLS slope of ticker log-returns on SPY log-returns over trailing 60 days: cov(ret_t, ret_spy) / var(ret_spy). NULL when fewer than 61 aligned rows.
Where it surfaces
- API field:
screener.features.beta_60donGET /api/v1/signals/latest
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:
daily