KB / signal
A1 post-earnings state
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.
A1 post-earnings state
What it is
A1 post-earnings state — registry key a1_post_earnings_state.
State label from the A1 post-earnings overreaction scorer. ‘primed’ = all five screen conditions met (recent earnings + gap-down + surprise>=0 + gate pass + basing confirmed). ‘partial’ = core dislocation present but basing unconfirmed. ‘none’ = not qualified. Mirrors the squeeze_setup_state convention.
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
State machine in app/screener/archetypes.py::evaluate_post_earnings_overreaction. ‘primed’ when all five conditions hold; ‘partial’ when core four hold but basing unconfirmed; ‘none’ otherwise.
Where it surfaces
- API field:
screener.candidates.a1.stateonGET /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