XOM vs XOP next 20 sessions after a 5pp spike in Brent 20-day realized volatility
Some trades are conceptually neat and statistically wrong. The neat one: after crude's volatility jumps, Exxon's integrated cash flow should hold up better than a basket of levered upstream producers. In the roughly three-year sample that follows, on Brent spikes of more than five percentage points, that logic lost on almost every margin.
Across the 100 qualifying sessions, XOM beat XOP just 38% of the time over the next 20 sessions. The mean XOM-minus-XOP edge was about -2.3%, the median near -1.4%, and a paired t-stat of roughly -5 marks the gap as too persistent to wave away — a clear reversal from the modest positive edge XOM averaged on non-spike days. The full breakdown of forward returns, methods, and the caveats on overlapping windows is in the analysis below.
Over the past ~3 years, when Brent crude's 20-day realized volatility rises by more than 5 percentage points from 20 sessions earlier, does XOM outperform XOP over the next 20 trading sessions? I expect a sharp crude-vol spike to reward the supermajor's integrated cash flow and balance-sheet resilience while levered E&P beta is de-grossed.
How this was measured
Daily closes were built from minute bars for XOM and XOP, then aligned on shared trading days. Brent daily values were reindexed to those trading days with forward-fill and shifted one session to respect the T+1 publication lag. Brent 20-session realized volatility was annualized as std(daily returns, 20)*sqrt(252). A spike day was defined as rv20 minus rv20 20 sessions earlier > 0.05. Forward returns were measured close-to-close from the decision close to 20 sessions later. The edge is XOM forward return minus XOP forward return.
The key numbers
Reading the numbers
Across 100 Brent volatility-spike events, XOM averaged -0.71% over the next 20 sessions while XOP gained +1.55%: an average -2.25% edge against XOM, and XOM won only 38% of the time. The gap is statistically clear, so the expected supermajor edge is rejected.
The charts
The line moves within a wide band, with Brent's annualized 20-day realized volatility ranging from roughly 15% to 97% and averaging about 34%. The most recent reading shown is near 84%, a high-volatility backdrop. What matters for this question is that the 100 spike events are drawn from the sharper upward jumps in this series, not from ordinary daily wiggle.
The spike-day bars tell the story: XOM's average 20-day forward return is negative at -0.71%, while XOP's is positive at +1.55%, so the XOM-minus-XOP bar is -2.25%. On non-spike days the pattern flips, with XOM ahead of XOP by about +0.77 percentage points. This is the direct evidence against the hypothesis: sharp crude-vol spikes are associated with XOM underperforming XOP, not outperforming.
This histogram shows the spread of the XOM-minus-XOP edge across all 100 spike events. The outcomes range from about -12.8% to +4.2%, with a mean of -2.25%, meaning the center of the distribution sits firmly in XOP's favor. The few positive cases on the right side never reach the size of the negative tail on the left, which is why XOM beat XOP only 38% of the time.
Each dot pairs one spike event's Brent-vol jump with the forward XOM-minus-XOP edge. Spike sizes range from about 5 to 64 percentage points, and the edge ranges from about -12.8% to +4.2%, with the whole cloud averaging -2.25%. The final spike in the sample, a roughly 48 percentage-point RV jump, came with an edge near -3.9%, consistent with the overall message that larger crude-vol spikes do not reward XOM over XOP.
Event summary
| Metric | Value |
|---|---|
| Spike events (20d Brent RV rise > 5 pp) | 100 |
| Non-spike comparison days | 632 |
| Mean XOM 20d fwd - spike days | -0.0071 |
| Mean XOP 20d fwd - spike days | 0.0155 |
| Mean XOM minus XOP edge - spike days | -0.0225 |
| Median XOM minus XOP edge - spike days | -0.0141 |
| Fraction XOM > XOP - spike days | 0.38 |
| Mean XOM minus XOP edge - non-spike days | 0.0077 |
| Paired t-stat (spike edge vs 0) | -5.359 |
| Paired p-value | 0 |
| Welch t (spike vs non-spike edge) | -6.539 |
| Welch p (spike vs non-spike edge) | 0 |
Recent spike events (chronological, max 30)
| Date | RV change | XOM 20d fwd | XOP 20d fwd | XOM-XOP edge |
|---|---|---|---|---|
| 2026-03-16 | 0.3053 | -0.0542 | -0.0236 | -0.0306 |
| 2026-03-17 | 0.346 | -0.0646 | -0.0325 | -0.0321 |
| 2026-03-18 | 0.3649 | -0.0381 | -0.0332 | -0.0049 |
| 2026-03-19 | 0.3896 | -0.0753 | -0.0848 | 0.0095 |
| 2026-03-20 | 0.4469 | -0.0759 | -0.0859 | 0.0099 |
| 2026-03-23 | 0.4615 | -0.0791 | -0.0574 | -0.0216 |
| 2026-03-24 | 0.6234 | -0.0901 | -0.0633 | -0.0268 |
| 2026-03-25 | 0.6193 | -0.0792 | -0.0649 | -0.0143 |
| 2026-03-26 | 0.6384 | -0.0992 | -0.0965 | -0.0028 |
| 2026-03-27 | 0.637 | -0.1337 | -0.1024 | -0.0313 |
| 2026-03-30 | 0.6427 | -0.1248 | -0.0802 | -0.0445 |
| 2026-03-31 | 0.5211 | -0.0826 | -0.018 | -0.0646 |
| 2026-04-01 | 0.5009 | -0.0255 | 0.0238 | -0.0493 |
| 2026-04-02 | 0.5251 | -0.0498 | -0.0092 | -0.0406 |
| 2026-04-06 | 0.4346 | -0.057 | 0.0092 | -0.0662 |
| 2026-07-14 | 0.1451 | 0.0938 | 0.0789 | 0.0148 |
| 2026-07-15 | 0.1222 | 0.0999 | 0.0792 | 0.0207 |
| 2026-07-16 | 0.1032 | 0.0813 | 0.0751 | 0.0063 |
| 2026-07-17 | 0.0956 | 0.0763 | 0.0592 | 0.0171 |
| 2026-07-20 | 0.1138 | 0.0878 | 0.078 | 0.0098 |
| 2026-07-21 | 0.1299 | 0.0922 | 0.0652 | 0.027 |
| 2026-07-22 | 0.1585 | 0.061 | 0.0505 | 0.0104 |
| 2026-07-23 | 0.1635 | 0.06 | 0.0694 | -0.0094 |
| 2026-07-24 | 0.2221 | 0.053 | 0.0905 | -0.0375 |
| 2026-07-27 | 0.2629 | 0.0602 | 0.0999 | -0.0398 |
| 2026-07-28 | 0.2972 | 0.0316 | 0.0837 | -0.0521 |
| 2026-07-29 | 0.3362 | 0.0085 | 0.0687 | -0.0602 |
| 2026-07-30 | 0.4351 | -0.0121 | 0.0608 | -0.0728 |
| 2026-07-31 | 0.4345 | -0.0018 | 0.0394 | -0.0412 |
| 2026-08-03 | 0.4811 | 0.044 | 0.0834 | -0.0394 |
The takeaway
The premise fails in the data: after Brent's 20-day realized volatility jumps more than 5 percentage points, XOM does not outperform XOP over the next 20 sessions — it lags, and the contrast is too consistent to wave away. Across 100 spike episodes, XOM averaged about -0.7% forward while XOP averaged +1.5%, leaving a negative XOM-minus-XOP edge of roughly -2.3%; XOM beat XOP only 38% of the time and the median edge was -1.4%. The paired t-stat was -5.4 with a p-value around 0.0000005, and the spike-day edge was also clearly worse than the +0.8% edge on the 632 non-spike days, so this looks like a real reversal, not a coin flip. The practical takeaway: over this roughly three-year window, a sharp crude-volatility shock favored the levered producer basket over the integrated major — the opposite of the balance-sheet-resilience story. Treat it as a strong descriptive pattern rather than a trading law, since overlapping forward windows still inflate how much information the 100 events really contain.
The fine print
- 20-day forward windows overlap across nearby spike events, which inflates the effective sample size; treat p-values as descriptive rather than exact.
- Only 100 spike events and one 5pp threshold were tested; results may differ with a 3pp or 10pp threshold or a different RV window.
- Brent data is shifted one session for publication lag; results can change if that lag assumption is wrong.
- XOM and XOP differ in beta and oil-price exposure, so relative returns after a vol spike may not isolate the balance-sheet effect.