CAPM & Carhart Factor Model · Transparency

Factor Methodology & Transparency

Every histogram on the Market Overview tab is the cross-section of a regression coefficient estimated stock-by-stock. This page documents exactly how each one is derived — the data, the universe, the estimation horizon, and the precise formula — so the numbers are reproducible rather than a black box. The interactive explorer at the bottom lets you compare any set of industries on the same axis for any factor.

← Back to the Factor Model Dashboard
Data & Universe β · Market Beta SMB · Size HML · Value WML · Momentum α · Alpha R² · Fit Industry Explorer
Data & Universe — The Common Foundation

Beta, SMB, HML, WML and alpha are not five separate studies. They are coefficients from one regression run on each stock. Before the formulas, here is the shared input every panel is built on.

Universe
S&P 500 constituents with sufficient price history (current membership)
Estimation Horizon
Trailing 5 years of month-end returns
Return Frequency
Monthly
Split- & dividend-adjusted close, month-end
Factor Source
Ken French
Fama-French + momentum data library
Inputs

1 · Stock returns (the left-hand side)

Five years of daily adjusted-close prices for every S&P 500 name are pulled, resampled to month-end, and converted to simple monthly returns. We then subtract the monthly risk-free rate to get each stock's excess return (ri − rf).

2 · Factor returns (the right-hand side)

The regressors — Mkt-RF, SMB, HML, WML, RF — come straight from the Kenneth French data library. These are the canonical academic factors, rebuilt monthly from the full CRSP US universe (NYSE/AMEX/NASDAQ), not constructed from the S&P 500 alone.

This is the key transparency point for SMB / HML / WML: the factor portfolios are Ken French's; what this dashboard estimates is each stock's loading (sensitivity) onto them.

Estimation

One OLS regression per stock

For each ticker we align the months where both its return and the factors exist (≈58 observations), then fit ordinary least squares. The CAPM uses one regressor; the Carhart four-factor model adds three:

ri rf = α + β(Rmrf) + s·SMB + h·HML + w·WML + ε
α, β, s, h, w are the fitted coefficients. The CAPM is the same line with the SMB/HML/WML terms dropped. Standard errors, t-stats and two-sided p-values use the textbook OLS formula s²(XᵀX)⁻¹ on n−k degrees of freedom.

A stock needs at least 24 aligned monthly observations to be modelled; names with shorter histories are dropped.

β Market Beta CAPM · single factor

How much a stock moves when the whole market moves. β = 1 means it tracks the market one-for-one; β = 1.5 means it tends to rise (and fall) 50% more; β below 1 is defensive.

How it is calculated
βi = Cov(rirf, Rmrf) / Var(Rmrf)
Equivalently, β is the OLS slope of the stock's excess return regressed on the market's excess return over the 5-year window.

Which "market"?

Mkt-RF from Ken French — the value-weighted return of all CRSP US stocks minus the risk-free rate. Note this is the total US market, not SPY. (SPY appears elsewhere on the dashboard only as a price benchmark, never as the regression's market.)

Which stocks & horizon?

Each stock's own 5 years of monthly excess returns are the dependent variable. Beta is therefore a backward-looking 5-year average sensitivity, not a snapshot. The Deep Dive tab shows the 36-month rolling version to reveal drift.

Beta Distribution — all modelled stocks
Same data as the Market Overview histogram, annotated with the cross-sectional statistics.
SMB Size Factor — "Small Minus Big" Carhart loading · s

SMB captures the historical tendency of small-cap stocks to behave differently from large-cap stocks. A positive loading (s > 0) means the stock moves with small caps; negative means it behaves like a mega-cap.

How the SMB factor is built (Ken French)

The criterion: market capitalisation

Every June, the entire CRSP universe is split into Small and Big at the NYSE median market cap, and independently into three book-to-market buckets. That gives six value-weighted portfolios:

Small: SL · SN · SH  |  Big: BL · BN · BH

SMB = ⅓(SL+SN+SH) ⅓(BL+BN+BH)
The average return of the three small-cap portfolios minus the average of the three big-cap portfolios — so it isolates the size effect while holding value exposure roughly constant.

Which stocks are "part of SMB"?

The factor return is computed from the full US market, not just the S&P 500. What we report per S&P 500 stock is its loading s — the regression slope on this SMB series. So a large S&P name can still show a small positive s if its returns happen to co-move with small caps.

SMB Loading Distribution
Cross-section of the size loading s across all modelled stocks.
HML Value Factor — "High Minus Low" Carhart loading · h

HML captures the value premium: cheap stocks (high book-to-market) versus expensive growth stocks (low book-to-market). Positive h = value tilt; negative h = growth tilt.

How the HML factor is built (Ken French)

The criterion: book-to-market ratio

Using the same six size × book-to-market portfolios as SMB, HML is the return of the high book-to-market (value) portfolios minus the low book-to-market (growth) portfolios, averaged across the small and big size buckets:

HML = ½(SH+BH) ½(SL+BL)
High = top 30% book-to-market, Low = bottom 30%, with NYSE breakpoints. Averaging across small and big neutralises the size effect.

Reading the loading

A stock's h is how strongly its returns track that value-minus-growth spread. Banks, energy and other classic "cheap" sectors tend to load positive; high-multiple software names load negative.

HML Loading Distribution
Cross-section of the value loading h across all modelled stocks.
WML Momentum Factor — "Winners Minus Losers" Carhart loading · w

WML (also called UMD / Mom) captures momentum: stocks that have done well over the past year tend to keep doing well in the short term. Positive w = the stock rides momentum; negative w = it behaves like a reversal/contrarian name.

How the WML factor is built (Ken French)

The criterion: prior 2–12 month return

Stocks are sorted on their cumulative return from 12 months ago to 1 month ago (skipping the most recent month to avoid short-term reversal), crossed with size. WML buys recent winners and sells recent losers:

WML = ½(Small-Hi+Big-Hi) ½(Small-Lo+Big-Lo)
"Hi" = top 30% by prior-year return, "Lo" = bottom 30%. This is Carhart's (1997) addition to the Fama-French three-factor model.

Reading the loading

A stock's w tells you whether it has lately behaved like a momentum winner. It is the most time-varying loading — a name can flip sign as its recent performance changes.

WML Loading Distribution
Cross-section of the momentum loading w across all modelled stocks.
α Alpha — The Unexplained Return regression intercept

Alpha is the part of a stock's average excess return that none of the factors explain — the regression intercept. It is the closest thing to "skill" or a missing risk, but it is also where luck and data-mining hide.

How it is calculated
αi = mean(rirf) [ β·Mkt + s·SMB + h·HML + w·WML ]
It is the fitted intercept of the four-factor regression — the average monthly return left over once every factor's contribution is removed. We report it annualised = αmonthly × 12.

Is it real? — the t-stat

An alpha only matters if it is statistically distinguishable from zero. The t-statistic (and its p-value) does that: |t| > 1.96 ≈ 95% confidence. With ~500 stocks, ≈25 will clear that bar by pure chance, so the Alpha Screen tab treats significant alpha as a starting point, not proof.

CAPM vs Carhart alpha

A positive CAPM alpha often shrinks once SMB/HML/WML are added — what looked like skill was really a size/value/momentum tilt. The gap between the two alphas is itself informative.

Alpha Distribution — annualised
Cross-section of Carhart α (×12, in %) across all modelled stocks.
Model Fit — CAPM vs Carhart goodness of fit

R² is the share of a stock's return variance the model explains (0% = nothing, 100% = perfect). The lift from CAPM's R² to Carhart's R² measures how much the three extra factors actually add.

How it is calculated
= 1 SSresid / SStotal
SSresid is the unexplained variation left in the residuals; SStotal is the total variation of the stock's excess return. ΔR² = R²Carhart − R²CAPM.

What the gap means

A large average ΔR² says size, value and momentum genuinely help explain S&P 500 returns. A small gap says the single market factor already does most of the work — common for mega-cap-heavy indices.

Low-R² stocks are idiosyncratic: driven by company-specific events the factor model can't see.

Average R² — CAPM vs Carhart
Mean explanatory power across all modelled stocks.

Factor-by-Industry Explorer

Pick a factor and add as many sectors or industries as you like — each one's average loading is drawn on the same axis so you can see, for example, which industries are genuinely high-beta or which carry a real value tilt. Bars are sorted; the dashed line marks the reference level (β = 1, or 0 for the other factors).

Factor
Group by
Add group
No groups selected — add some above, or click “Add all”.

Survivorship caveat. The universe is current S&P 500 membership only. Stocks that were delisted, merged or removed are absent, which biases averages — especially alpha — upward. Treat cross-industry comparisons as descriptive, not predictive.