Skip to content

KB / framework

Market Regimes (5-tier classifier)

Last verified

Every cycle the platform classifies current conditions into one of five regimes. The label drives narrative on the dashboard, weight adjustments inside the Health Score, and analogue filtering in the base-rate matcher.

The five regimes

RISK-ON

Triggers: DIX strong, GEX positive, HY OAS tight, breadth broad, VIX low

Structural supports intact with broad participation. The floor is solid.

Favor long positions, full sizing. Conditions support risk-taking.

CAUTIOUS

Triggers: Most supports intact but one or two lagging — typically breadth < 50% or credit widening

Mostly there but mixed signals warrant caution. Not all sectors participating.

Be selective. Favor quality, slightly smaller sizes. Watch the lagging signal.

TRANSITIONAL

Triggers: Signals actively disagree — some improving while others deteriorate

Between regimes. Direction is unclear. Often seen at turning points.

Reduce exposure or wait for clarity. Don't force trades when signals conflict.

RISK-OFF

Triggers: Multiple structural supports weakening — rising HY OAS, falling breadth, weak DIX, negative GEX

Environment deteriorating. Institutional buyers stepping back.

Favor defensive sectors, reduce longs, consider hedges. Cash is a position.

PANIC

Triggers: Acute stress across all dimensions — extreme VIX, wide credit, collapsed breadth, heavy put buying

Systemic stress. Capital preservation mode.

Hedge everything. No new longs. Wait for stabilization.

Evaluation order

The classifier evaluates regimes in most-restrictive-first order: PANIC → RISK-OFF → RISK-ON → CAUTIOUS → TRANSITIONAL (default). A row gets the first label whose triggers fire; if none match, it falls through to TRANSITIONAL.

This ordering matters: PANIC and RISK-OFF only catch acute stress, so the gate is intentionally tight. RISK-ON requires broad agreement across all structural supports — it doesn’t fire unless DIX, GEX, credit, breadth, and VIX all confirm.

Energy regime — orthogonal axis

A second regime axis classifies energy conditions separately (energy_regime field): STABLE, ELEVATED, SHOCK, CRISIS. Energy SHOCK or CRISIS triggers the energy_shock override in score_weights.json, rebalancing the Health Score so Correlations doubles (cross-asset transmission becomes the dominant signal), BTC drops to zero, and Sectors scale down. The transmission-order profile in the Alignment dots also flips to oil-led.

How regimes affect the Health Score

Per score_weights.json → regime_overrides, each regime can declare per-component scaling. Only energy_shock and energy_relief are configured today, but the structure generalizes — any future regime can rebalance the 18-component allocation. Total weight stays at 100; the override just shifts which components contribute most.

See also