Fed Inflation Signal
A reproducible composite that infers inflation pressure from FRED data using robust rolling standardisation, explicit data-quality handling, and transparent weighting. Applicable across macro use‑cases; commodity examples (e.g., silver) appear only as illustrations.
Abstract
We construct a monthly, rules‑based signal that blends headline/core CPI, breakevens (10Y), money/liquidity proxies (M2, Fed assets, ON RRP via sign inversion), growth/industry proxies (Industrial Production, copper), policy stance (Fed Funds Δ12m), USD (inverted YoY), and uncertainty (EPU). Each component is transformed to a comparable scale via rolling robust z‑scores, weighted, and summed to a Composite Inflation Signal. Regimes are mapped from the composite’s distribution to HOT, NEUTRAL, or COOL.
1. Data (FRED Identifiers)
- CPIAUCSL (Headline CPI), CPILFESL (Core CPI ex‑food & energy)
- GS10 (10Y UST), DFII10 (10Y TIPS) → breakeven = GS10 − DFII10
- M2SL (M2 money stock), WALCL (Fed total assets)
- DTWEXBGS (Broad USD index, inverted for inflation pressure)
- INDPRO (Industrial production), PCOPPUSDM (Copper price)
- USEPUINDXM (Economic Policy Uncertainty index)
- FEDFUNDS (Fed Funds effective rate)
All series are coerced to monthly end via resampling and forward‑fill where appropriate. Metadata (titles) are optionally captured for documentation.
2. Data Quality, Cleaning & Validation
- Recent availability check: list last observation date and recent coverage for each series.
- Bounded forward‑fill: up to 2–3 months (configurable) to bridge publication lags.
- Minimum history: require ≥120 months overlapping data for robust rolling transforms.
- Adaptive windows: if history is short, shrink rolling window but log a warning.
These steps generate a data_quality_flag trail to enable downstream audit and confidence assessment.
3. Component Transforms
Let x_t be a monthly series. We form level and impulse views via:
Constructed components (examples): headline_yoy, core_yoy, headline_3m_ann, core_3m_ann, breakeven10, m2_yoy, walcl_yoy, copper_yoy, usd_yoy_neg (note inversion), indpro_yoy, epu_level, fedfunds_delta_neg (inverted Δ12m).
4. Standardisation (Rolling z‑scores)
We scale each component with a rolling window W=120 months. Robust z‑scores use median/MAD; otherwise mean/std.
If insufficient history, use an adaptive window (≥60m) and emit a warning.
5. Weighting & Composite Construction
Let z^k_t denote the z‑score for component k. With weights w_k (normalised over available non‑NaN inputs), the composite is
Default weights emphasise core and breakevens, with auxiliary influence from liquidity, USD, activity, and uncertainty. Missing inputs are re‑normalised out.
{
"core_yoy_z": 0.22, "headline_yoy_z": 0.12,
"core_3m_ann_z": 0.12, "headline_3m_ann_z": 0.06,
"breakeven10_z": 0.18, "m2_yoy_z": 0.08,
"walcl_yoy_z": 0.05, "copper_yoy_z": 0.07,
"usd_yoy_neg_z": 0.06, "indpro_yoy_z": 0.02,
"epu_z": 0.01, "fedfunds_delta_neg_z": 0.01
}
6. Scaling & Regime Mapping
We provide a bounded 0–100 score and a categorical regime:
- HOT: z(S)t ≥ 1.0 (rising inflation pressure)
- NEUTRAL: −0.5 < z(S)t < 1.0
- COOL: z(S)t ≤ −0.5 (disinflation/deflation risk)
7. Implementation Notes (Python)
# ➊ Fetch (fredapi) → monthly end
s, title = fred.get_series('CPIAUCSL'), fred.get_series_info('CPIAUCSL').title
# ➋ Transform components: YoY, 3m annualised, Δ12m, sign inversions
# ➌ Robust rolling z-scores with adaptive window (default W=120)
# ➍ Weight & sum available components (weights re-normalised)
# ➎ Produce: composite, 0–100 scaled score, regime, and per-component contributions
Reference functions: _zscore (robust/classical), pct_change, _ann_3m, _delta_12m, data‑quality helpers (recent‑availability, bounded ffill, sufficiency checks).
8. Reproducibility, Audit & Monitoring
- Persist series IDs, retrieval timestamps, library versions, and resampling policy.
- Log cleaning actions (ffill count, proxies used), adaptive window changes, and missing‑input re‑weights.
- Store panels: raw components, z‑scores, contributions, composite, regimes.
9. Interpretation & Applications
The composite summarises inflation pressure for macro allocation, risk budgeting, and scenario analysis. For commodities (e.g., silver), HOT typically increases the risk of tighter policy and stronger USD headwinds; COOL the converse. Adapt signs/weights to specific asset sensitivities.
10. Governance & Change Control
- Quarterly review of components, thresholds, and weights with backtest diagnostics.
- Document rationale for any component additions/removals and re‑weighting.
- Maintain semantic versioning of the specification and outputs.