Live Dashboard
Oil Shock Monitor
Price momentum, realized volatility, CFTC positioning, and regional spreads — triangulated to flag when energy markets are pricing in stress. Historical shock comparisons included.
Shock status
Acute
Composite 90 / 100
Brent-WTI spread
$14.00
Price momentum
73
Realized volatility
99
Speculative positioning crowding
—
Brent-WTI spread dislocation
98
- • WTI down 11.8% in 30 days (73th percentile vs 5-year history)
- • Realized vol 89% (99th percentile vs 5-year history)
- • Brent-WTI spread at $14.00 (98th percentile vs 5-year |spread|)
Prices & momentum
WTI Crude
$99.89
30-day
-11.8%
90-day
+62.2%
Brent Crude
$113.89
30-day
-10.8%
90-day
+68.2%
Henry Hub Gas
$2.72
30-day
-4.9%
90-day
-38.2%
Volatility & positioning
30-day realized volatility
- WTI
- 89%
- Brent
- 101%
Annualized via log returns × √252. Oil vol above 40% is historically elevated; above 60% has only occurred in major supply shocks.
WTI CFTC speculative positioning
- Net spec
- -40K
- 1-yr percentile
- 6%
- NC long
- 95K
- NC short
- 135K
Crowded positioning (percentile >90 or <10) historically precedes mean reversion. Wednesday CFTC COT report, published Fri 15:30 ET.
WTI history
Brent history
Henry Hub natural gas
Historical oil shocks for context
| Year | Event | Peak move | Duration | Macro impact |
|---|---|---|---|---|
| 1973 | OPEC Embargo | +300% | 5 months | S&P −48%, deep recession, stagflation onset |
| 1979 | Iran Revolution | +150% | 12 months | Volcker shock, double-dip recession |
| 1990 | Gulf War (Kuwait) | +130% | 3 months | Short recession, rapid reversal after war |
| 2008 | Pre-GFC peak → crash | $147 → $30 | 6 months | GFC — decoupled from oil, but demand destruction |
| 2014 | Shale glut | −70% | 18 months | Energy sector crisis, EM stress, disinflation |
| 2020 | COVID + Saudi-Russia | −75% | 2 months | Negative WTI futures, energy bankruptcies |
| 2022 | Russia invasion | +60% | 4 months | Europe energy crisis, sticky inflation, Fed hikes |
Methodology
- Composite score is a weighted average of four components, each expressed as a percentile rank (0-100) against its own 5-year rolling history. Weights are equal (25% each) for transparency. Bands are quartile-based: 0-25 Calm, 25-50 Watch, 50-75 Elevated, 75-100 Acute.
- Price momentum — rank of |30-day WTI return| in the 5-year history of absolute 30-day returns.
- Realized volatility — rank of the current 30-day annualized vol against 5 years of rolling 30-day vols (log returns, √252).
- Positioning crowding — CFTC net-spec percentile distance from 50, then ranked against history. Crowded long or short both register.
- Brent-WTI spread — rank of |current spread| in the 5-year history of absolute spreads. Widens on Atlantic-basin tightness or Cushing glut.
- Macro transmission: A 10% rise in oil historically adds ~0.4pp to US headline CPI over 6-12 months, and roughly 0.1pp to core through pass-through effects.
Related tools
Get alerts when the composite crosses 50 (Elevated) or 75 (Acute).
Sources: EIA/FRED (WTI, Brent, Henry Hub spot prices), CFTC Commitments of Traders. The composite aggregates four percentile ranks against 5-year rolling history via the framework in src/lib/tools/stress-composite.ts. Not a regulated benchmark.