Risk Regime Scorecard

As-of 2026-09-29 14:47 PDT · market data 2026-09-29
Refresh: bbg_fast · Prices: Yahoo/FRED (forced) · Overlays: BBG 2026-09-29 · ran 2026-09-29 14:47 PDT

Traffic lights

3 red · 2 amber · 1 green — aligns with Risk-off
Liquidity
Bearish
Credit
Bearish
Volatility
Neutral
Growth
Stable / Improving (mixed)
Breadth
Narrow
Positioning / Sentiment
Neutral

Display-only summary: Liquidity/Credit/Volatility vote; Growth/Breadth/Positioning/Sentiment are context. Scoring unchanged.

  • Liquidity — voting leg (UUP vs 200DMA): bullish→green, neutral→amber, bearish→red.
  • Credit — voting leg (HYG >200DMA AND 21d ROC>0): same bullish/neutral/bearish color map.
  • Volatility — VIX level + 21d ROC sets base color; hard VIX veto→red; MOVE Rising may only tint green→amber; MOVE Falling may tint amber→green if VIX not bearish; MOVE does not vote.
  • Growth — US GDP Δ4W (improving ≥+0.2pp / softening ≤−0.2pp) + SPX earnings (supportive if Δgrowth≥0.5pp or NTM/TTM≥10% and not contracting; deteriorating if contracting or Δgrowth≤-0.5) + Style lean; green when GDP improving, earnings supportive, Style ≠ Defensive; Defensive+soft→red; curve not folded in.
  • Breadth — % of S&P above 200DMA (Broad/Mixed/Narrow); A/D Divergence / Broken uptrend / Downtrend can worsen amber→red.
  • Positioning / Sentiment — NAAIM 3Y %ile (crowded ≥80 / washed ≤20) + sentiment composite + GS HF VIP vs Most Short; plain HF Risk-off alone→amber mid-pack; red if HF Risk-off confirmed by crowded NAAIM or bearish sentiment, or HF squeeze/spec risk-off, or both NAAIM and sentiment cautionary.
Current regime
Risk-off
Tactical Equity %
50%
Core
45%
Overlay
+5%
Equity %
50%

NAAIM 0 (Neutral (35th %ile)) · Style +2.5 (Offensive growth) · US GDP Δ4W +2.5 (Improving +0.7pp)

Method. Core equities % = round_2.5(60 + 15×4W weighted score), clamp [45,75]. Overlay = equal ±2.5% nudges from NAAIM (3Y %ile ≤20 → Contrarian Long / ≥80 → Contrarian Short), Style (Offensive growth +2.5 / Defensive −2.5; Cyclical value & Mixed = 0), and US GDP nowcast Δ4W (≥+0.2pp Improving / ≤−0.2pp Softening), then cap ±5%. Final = round_2.5(clamp(Core + Overlay, 45, 75)). Hard VIX veto → 45% and ignores Overlay. Regime chip uses Core only.

Core Macro Indicators

Vote = 200DMA rules (Liq 40% / Cred 35% / Vol 25%) · 100DMA column is context only

LegCallLevel vs 200DMA21d vs 100DMA (ctx)
Liquidity / USD bearish UUP 28.75 +3.76% +2.02% +2.18%
Credit bearish HYG 77.36 -1.12% -2.45% -1.72%
Volatility neutral VIX 16.0 * +11.16% —

Weighted leg_score = 0.40·liq + 0.35·cred + 0.25·vol → -0.75 (raw on ≥+0.40 / off ≤−0.40; hard VIX veto → risk_off)

UUP/HYG vs 100DMA is display context only — does not vote. LQD/MOVE/10Y remain context.

* Volatility has no 200DMA. VIX level subscore: <15 → +1 (bullish), 15–20 → 0 (neutral), ≥20 → −1 (bearish). Combined with the 21d ROC subscore (≤−10% → +1, ≥+15% → −1) to form the Call.

US Yield Curve

FRED 2s10s + MOVE · as-of 2026-09-28 (yields) / 2026-09-29 (MOVE) · (context only)

SeriesLevel3Y %ile 1M3MRead
2s10s (10Y − 2Y)32 bps49-15 bps+4 bpsNormal
MOVE (bond vol)106.675+35.6+34.6Rising

Read (2s10s): level Inverted if <0; else Steepening/Flattening from 1M Δ (±15 bps); else Normal — 3M is display only for 2s10s. MOVE Read: primarily 1M (±10 pts); 3M can trigger if |3M| ≥ 10 and 1M confirms direction (1M ≥ 0 for Rising / ≤ 0 for Falling); else Stable. Context only — not a voting leg. Sources: FRED DGS2/DGS10 · Yahoo ^MOVE. 3Y %ile = level percentile over 3Y; 2s10s Δ in bps, MOVE in index points.

Rolling Correlations

Windows: 5d (1W) / 21d (1M) / 63d (3M) · as-of 2026-09-29

Pair1W1M3MRead
SPY vs UUP (DXY)-0.92-0.39-0.31Risk-off
SPY vs TLT (long Treasuries)+0.71+0.65+0.49Risk-off
SPY vs crude oil (WTI)-0.09-0.48-0.56Risk-off
Bitcoin vs UUP (DXY)-0.72-0.20-0.35—
Gold vs UUP (DXY)-0.50-0.45-0.53—
Crude oil vs UUP (DXY)-0.03-0.18-0.00—

Spot moves

Series1W1M3M
UUP (DXY)+0.95%+2.02%+1.20%
10Y yield (^TNX)+29 bps+54 bps+84 bps
Crude oil (WTI)-5.97%+6.64%+27.97%
Bitcoin (BTC-USD)-3.22%+7.16%+42.42%
Gold (GC=F)-3.69%-6.95%+4.37%

Read uses 1M corr (|r| ≥ 0.15; 3M fallback if 1M missing). 1W is display only. SPY pairs keep Risk-on/off Reads; Bitcoin/Gold/Crude vs UUP are numbers-only (Read —). Rolling corr is noisy (esp. 1W); context only — not a regime leg.

Breadth

Now: 41.3% above 200DMA · coverage 501/503 names · Reads: Broad / Narrow / Mixed (participation & size; context only)

Measure1W1M3MRead
% above 200DMA (Δ pp)-8.0-28.3-19.3Narrow
IWM (small) vs SPY (large)-1.67%-4.99%-9.48%Narrow
MeasureLevelvs 50DMAvs 200DMA1M3MRead
S&P 500 A/D line (TRADCADS Index) 102,175 -1.14% -0.51% -1.25% -1.24% Divergence

Changes are percentage points. Read uses level and primarily 1M Δ (conflicts = Mixed); thresholds ≥55% / ≤45%. 41.3% SPX above 200DMA → Read Narrow (level ≥55% or 1M Δ ≥+5 pp = Broad; level ≤45% or 1M Δ ≤−5 pp = Narrow; conflicts = Mixed); RSP/SPY 21d -4.29%, 63d -3.75% · computed from 503 S&P constituents (portfolio OHLCV cache); n_valid=501 n_missing=2

A/D Read: Uptrend if line > 50DMA and 50DMA > 200DMA; Broken uptrend if line < 50DMA while 50DMA still > 200DMA; Downtrend if line < 50DMA and 50DMA < 200DMA; Divergence if SPX within ~3% of 52-week high while A/D is below its 50DMA (and/or 1M change negative). Context only — not a vote. Source: TRADCADS Index · as-of 2026-09-29.

Style rotation

Overall (1M): Offensive growth · soft lean: Risk-on lean · taxonomy: Offensive growth / Cyclical value / Defensive / Mixed (context only)

Pair1W1M3MRead
MTUM (momentum) vs VLUE (value)+1.71%+6.82%-7.24%Momentum
IVW (S&P growth) vs IVE (S&P value)+0.77%+4.72%+2.19%Growth
USMV (min-vol / defensive) vs SPY (market)+0.05%-3.14%-0.88%Offensive

Hedge Fund Positioning

Overall (1M): Risk-off · GS VIP / Most Short · as-of 2026-09-29 · (context only)

Basket1W1M3MRead
GS HF VIP-1.88%+0.39%-4.65%—
GS Most Short Rolling-7.05%-6.24%-9.11%—
VIP vs Most Short+5.17%+6.63%+4.47%Risk-off

Context only — not a voting leg. GS HF VIP (GSTHHVIP) vs Most Short Rolling (GSCBMSAL). Pair = VIP return − Most Short return. Reads from GS basket signals (absolute + spread). Overlay for crowding; combine with Positioning / Style / breadth.

Earnings and Real GDP Growth

NTM EPS · 50/50 Weighted+NTM revision · Growth = NTM/TTM · real GDP nowcasts · as-of 2026-09-30 · (context only)

IndexNTM EPSBlended 4W revBlended 3M revGrowth (NTM/TTM)Growth 4W agoΔ (pp)Read
S&P 500417.4+0.39%+5.42%+27.2%+26.6%+0.6Stable
S&P/TSX2296.0+0.45%-0.96%+18.7%+18.2%+0.5Stable
MSCI World282.8+0.12%+5.24%+23.7%+23.5%+0.3Stable

Real GDP nowcasts

RegionNowcast4W agoΔ (pp)Read
US2.2%1.5%+0.7Improving
China4.1%3.7%+0.5Improving
Euro Area0.4%0.4%-0.0Stable

Context only — not a voting leg. Revision Read = mean of available 4W/3M % changes in Bloomberg Weighted Est and Next Year EPS (50/50 when both exist). NTM EPS level = Next Year estimate. Growth = NTM EPS / TTM EPS − 1. Nowcasts = Bloomberg Economics GDP nowcasts (US/China/Euro Area); always use the last non-null datapoint in each country column (may be dated past today). EA = Bloomberg Euro Area GDP nowcast (BENWEAGQ).

Positioning

Non-commercial / leveraged net · 3Y %ile · as-of 2026-09-29 · (context only)

AssetNetNet 4W ago3Y %ileRead
Equities (ES)-133,228-75,94132.3Neutral
Nasdaq (NQ)56,41327,08998.1Contrarian Short
Small-cap (RTY)-75,563-71,2165.1Contrarian Long
Rates (10Y)-811,752-909,27544.9Neutral
USD10,33017,02569.0Neutral
Crude141,106129,91128.5Neutral
Gold217,747222,18850.6Neutral

Read from 3Y %ile (80/20): excess long → Contrarian Short, excess short → Contrarian Long; not a vote. Asset-manager nets omitted (noisy scale).

Sentiment

Overall: Neutral · composite %ile 29.4 · as-of 2026-09-29

MeasureLevelLevel 4W ago3Y %ileRead
AAII bulls32.7%39.7%23.4Neutral
NAAIM exposure79.779.735.4Neutral

Read from 3Y %ile (80/20): excess long → Contrarian Short, excess short → Contrarian Long; not a vote.

Weekly samples (persistence trail)

Headline = 4W weighted raw · Legacy persist = legacy 3-week confirm — not the headline

DateRaw4W scoreWeightedLegacy persistvol/cred/liqEquities tgtVeto
2026-09-29Risk-off-1.00Risk-offRisk-off-1/-1/045.0%—
2026-09-24Risk-off-1.00Risk-offRisk-off-1/-1/045.0%—
2026-09-17Risk-off-0.90Risk-offRisk-off-1/0/047.5%—
2026-09-10Risk-off-0.70Risk-offMixed-1/0/-150.0%—
2026-09-02Risk-off-0.40Risk-offMixed-1/0/055.0%—
2026-08-26Mixed+0.00MixedMixed-1/1/160.0%—
2026-08-19Mixed-0.10MixedMixed-1/1/157.5%—
2026-08-12Mixed-0.30MixedMixed-1/1/155.0%—

1M regime log

21 trading days (2026-08-31 → 2026-09-29) · Risk-on 0 · Mixed 7 · Risk-off 14 · %>200DMA 41.3–66.9% (last 41.3%)

DateRegime (raw)leg_score / legs%>200DMA (context)liq / cred / vol
2026-09-29Risk-offls=-0.75 · 0↑ 2↓41.3%liq:S cred:S vol:N
2026-09-28Risk-offls=-0.75 · 0↑ 2↓43.7%liq:S cred:S vol:N
2026-09-25Risk-offls=-0.50 · 1↑ 2↓46.3%liq:S cred:S vol:B
2026-09-24Risk-offls=-0.75 · 0↑ 2↓44.9%liq:S cred:S vol:N
2026-09-23Risk-offls=-0.75 · 0↑ 2↓47.5%liq:S cred:S vol:N
2026-09-22Mixedls=-0.15 · 1↑ 1↓49.3%liq:S cred:N vol:B
2026-09-21Mixedls=-0.15 · 1↑ 1↓50.1%liq:S cred:N vol:B
2026-09-18Mixedls=-0.15 · 1↑ 1↓49.9%liq:S cred:N vol:B
2026-09-17Risk-offls=-0.40 · 0↑ 1↓50.7%liq:S cred:N vol:N
2026-09-16Risk-offls=-0.65 · 0↑ 2↓50.5%liq:S cred:N vol:S
2026-09-15Risk-offls=-0.65 · 0↑ 2↓53.3%liq:S cred:N vol:S
2026-09-14Risk-offls=-0.65 · 0↑ 2↓56.7%liq:S cred:N vol:S
2026-09-11Risk-offls=-0.40 · 0↑ 1↓56.9%liq:S cred:N vol:N
2026-09-10Risk-offls=-0.65 · 0↑ 2↓55.1%liq:S cred:N vol:S
2026-09-09Risk-offls=-0.40 · 0↑ 1↓57.3%liq:S cred:N vol:N
2026-09-08Risk-offls=-0.40 · 0↑ 1↓61.1%liq:S cred:N vol:N
2026-09-04Mixedls=+0.20 · 2↑ 1↓64.7%liq:S cred:B vol:B
2026-09-03Mixedls=+0.20 · 2↑ 1↓66.9%liq:S cred:B vol:B
2026-09-02Risk-offls=-0.40 · 0↑ 1↓64.9%liq:S cred:N vol:N
2026-09-01Mixedls=-0.05 · 1↑ 1↓63.3%liq:S cred:B vol:N
2026-08-31Mixedls=+0.20 · 2↑ 1↓66.9%liq:S cred:B vol:B

Changes (raw flips)