Z-Score Composition:
The Z-Score is a composite metric derived from two equally-weighted (50/50) components:
① FRED Balance Sheet (WRBWFRBL): 50% — Federal Reserve total assets normalized by GDP.
② Non-Financial Debt / GDP: 50% — Sum of household (CMDEBT), corporate (NCBDBIQ027S), and government (FGSDODNS) debt, normalized by GDP.
Z-Score Zones (Chart Background Shading):
■ Zone E (Green): $\Delta$Z ≥ +0.30. Extreme liquidity expansion.
■ Zone D (Blue): +0.10 ≤ $\Delta$Z < +0.30. Moderate liquidity growth.
■ Zone B (Orange): -0.30 < $\Delta$Z ≤ -0.10. Moderate liquidity contraction.
■ Zone C (Red): $\Delta$Z ≤ -0.30. Extreme liquidity drain (Systemic shock).
Zone A is Neutral (-0.10 to +0.10) and is unshaded.
Time Horizons (Lags) & Lookahead Bias:
Because macroeconomic data is published on a delay, the 0M Lag contains lookahead bias (it is a theoretical baseline). The 3M Lag is the actionable signal, representing a buy/sell execution on the exact date the Federal Reserve publicly releases the Z.1 Financial Accounts data.
Lag Return Definitions & Examples:
The "Lag" column measures how long after the signal date the trade is executed. Each row answers: "If I had entered this trade X months after the macro signal, what would my return have been?"
0M Lag (Theoretical Baseline): Execute immediately on the signal date. Contains lookahead bias because FRED Z.1 data is not yet public. Use only as a theoretical upper bound.
Example: Signal date = 2025-01-01 (Q1 Z-score). 0M Lag = buy on 2025-01-01, hold for 6 months, return measured from 2025-01-01 → 2025-07-01.
3M Lag (Actionable Signal): Execute when FRED publishes the Z.1 data (~3 months after quarter end). This is the first real-time opportunity to act on the signal.
Example: Signal date = 2025-01-01 (Q1 Z-score). Data published ~2025-03-31. 3M Lag = buy on 2025-03-31, hold for 6 months, return measured from 2025-03-31 → 2025-09-30.
6M Lag (Delayed Onset): Execute 6 months after the signal date. The Onset Return chart above uses this lag. Useful for measuring delayed market reactions to macro shifts.
Example: Signal date = 2025-01-01. 6M Lag = buy on 2025-07-01, hold for 6 months, return measured from 2025-07-01 → 2026-01-01.
9M & 12M Lags: Extended hold periods. These measure whether the signal's predictive power persists over longer horizons. Useful for strategic asset allocation decisions.
Example: Signal date = 2025-01-01. 12M Lag = buy on 2026-01-01, hold for 6 months, return measured from 2026-01-01 → 2026-07-01.
How to Read the Tables:
Hit % = Percentage of historical periods where the index outperformed (bullish regimes) or underperformed (bearish regimes) its unconditional average.
Hit Avg = Average return during those "hit" periods.
Miss % = Percentage of periods where the signal failed.
Miss Avg = Average return during those "miss" periods (often negative for bullish regimes, positive for bearish regimes).
Yield Curve Regimes (10Y minus 2Y):
Bear Flattening: Short rates rising faster than long rates.
Bear Steepening: Long rates rising faster than short rates.
Bull Flattening: Long rates falling faster than short rates.
Bull Steepening: Short rates falling faster than long rates.
Neutral: No decisive curve movement (Spread change $\sim$0).
Spread Magnitude: Extreme Flattener (≤ -0.20), Moderate Flattener (-0.20 to 0), Moderate Steepener (0 to +0.20), Extreme Steepener (> +0.20).
Hit / Miss Logic:
For Bearish Regimes (Zone B, Zone C, Bear Flattening, Bear Steepening), a "Hit" means the index successfully underperformed its historical average.
For Bullish/Neutral Regimes (Zone D, Zone E, Zone A, Bull Flattening, Bull Steepening, Neutral), a "Hit" means the index successfully outperformed its historical average.