XOM — factor decomposition (Energy)

How much of XOM's move over the window is systematic (market, XLE sector-excess, rate-excess via TLT) vs. idiosyncratic (stock-specific).

Return decomposition (log-return points, additive)

Market-9.07ppSector (excess)-0.00ppRate (excess)-0.00ppIdiosyncratic+47.35pp

Factor betas

Beta · Market (SPY)-0.44
Beta · Sector-excess (XLE)+1.06
Beta · Rate-excess (TLT)-0.04
0.83
Window2025-06-30 → 2026-07-31 (274 trading days)

Read

R² is 0.83 — a reasonably reliable fit; the betas and the split below are worth reading at face value.

Note: the net move here (+38.3pp) is small relative to the systematic and idiosyncratic swings underneath it — they're largely offsetting each other, which is why the idiosyncratic share below exceeds 100% (it's dividing by a small net, not an error). Read the pp values themselves as the meaningful numbers here, not the ratio.

Of XOM's +38.3pp move over this window, +47.4pp (124% of the total magnitude) is idiosyncratic — not explained by riding market, sector, or rate moves. The rest (-9.1pp) came from systematic exposure: market -9.1pp, sector -0.0pp, rate -0.0pp.