Factor Models in Finance
From CAPM to Multi-Factor Frameworks
Corrado Botta, PhD
Bocconi University
1/13
Outline
Notation
Introduction to Factor Models
The CAPM Framework
Arbitrage Pricing Theory
The Fama-French Models
Statistical Factor Models
Empirical Implementation
Applications in Finance
2/13
Notation
▶ Ri,t represents the return of asset i at time t.
▶ Rf ,t denotes the risk-free rate at time t.
▶ Rm,t is the market return at time t.
▶ Fk,t represents the k-th factor realization at time t.
▶ βi,k is the sensitivity (loading) of asset i to factor k.
▶ αi denotes the intercept (abnormal return) of asset i.
▶ ϵi,t is the idiosyncratic error term for asset i at time t.
▶ Σ represents the covariance matrix of returns.
3/13
Introduction to Factor Models
The Problem
In financial asset pricing, we seek to explain cross-sectional and time-series
variation in asset returns. Factor models provide a parsimonious framework
to capture systematic risk sources:
K
X
Ri,t = αi + βi,k Fk,t + ϵi,t (1)
k=1
where K is the number of risk factors that drive returns across assets.
Motivations for Factor Models
Factor models serve multiple purposes in finance:
▶ Dimension reduction in portfolio analysis
▶ Risk decomposition and attribution
▶ Performance evaluation of investment strategies
▶ Testing of market efficiency
4/13
The CAPM Framework
Definition
The Capital Asset Pricing Model (CAPM) (Sharpe 1964, Lintner 1965,
Mossin 1966) represents the simplest factor model with a single risk factor:
Ri,t − Rf ,t = αi + βi (Rm,t − Rf ,t ) + ϵi,t (2)
where βi measures the systematic risk of asset i with respect to the
market portfolio.
Key Assumptions
▶ Investors are rational and risk-averse
▶ Single-period investment horizon
▶ Homogeneous expectations about asset returns
▶ Perfect capital markets (no transaction costs, taxes, or restrictions)
▶ The market portfolio is mean-variance efficient
5/13
Arbitrage Pricing Theory
The Multi-Factor Paradigm
Arbitrage Pricing Theory (APT) (Ross 1976) generalizes CAPM by intro-
ducing multiple systematic risk factors:
Theoretical Framework
The linear factor model for returns under APT:
K
X
Ri,t = E[Ri,t ] + βi,k Fk,t + ϵi,t (3)
k=1
For a sufficiently large number of assets, absence of arbitrage implies:
K
X
E[Ri,t ] = Rf ,t + βi,k λk (4)
k=1
where λk represents the risk premium for factor k.
6/13
Arbitrage Pricing Theory
Advantages of APT
▶ Fewer restrictive assumptions than CAPM
▶ Accommodates multiple sources of systematic risk
▶ No need to identify the market portfolio (Roll’s critique)
▶ More flexible functional form
Challenges in Implementation
▶ Factor identification is not prescribed by the theory
▶ Number of factors to include is ambiguous
▶ Potential instability of factor loadings over time
▶ Factor risk premia may not be constant
7/13
The Fama-French Models
Three-Factor Model (1993)
Fama and French extended the CAPM by adding size and value factors:
Ri,t − Rf ,t = αi + βi,MKT (Rm,t − Rf ,t ) + βi,SMB SMBt (5)
+ βi,HML HMLt + ϵi,t (6)
where:
▶ SMBt (Small Minus Big): Return difference between small and large
cap portfolios
▶ HMLt (High Minus Low): Return difference between high and low
book-to-market portfolios
8/13
The Fama-French Models
Five-Factor Model (2015)
The Fama-French (FF) five-factor model adds profitability and investment
factors:
Ri,t − Rf ,t = αi + βi,MKT (Rm,t − Rf ,t ) + βi,SMB SMBt + βi,HML HMLt
(7)
+ βi,RMW RMWt + βi,CMA CMAt + ϵi,t (8)
where:
▶ RMWt (Robust Minus Weak): Return difference between high and
low profitability firms
▶ CMAt (Conservative Minus Aggressive): Return difference between
low and high investment firms
9/13
Statistical Factor Models
Principal Component Analysis
Principal Component Analysis (PCA) identifies orthogonal factors
that explain the maximum variance in returns:
Rt = α + BFt + ϵt (9)
where Ft is a vector of principal components, and B contains the
corresponding loadings.
Implementation Approach
▶ Compute the sample covariance matrix Σ of asset returns
▶ Perform eigen decomposition: Σ = QΛQ⊤
▶ Extract the K largest eigenvalues and corresponding eigenvectors
▶ The K eigenvectors define the factor loadings B
▶ Factor realizations are computed as Ft = B⊤ Rt
10/13
Empirical Implementation
# Load necessary packages and set seed
library(quantmod); library(PerformanceAnalytics); library(ggplot2); library(dpl
set.seed(123)
# Define parameters
tickers <- c("AAPL", "MSFT", "AMZN", "GOOGL", "META", "JPM", "BAC", "WMT", "PG"
benchmark <- "SPY" # S&P 500 ETF
start_date <- "2018-01-01"; end_date <- "2022-12-31"
# Download data and calculate monthly returns
getSymbols(c(tickers, benchmark), from = start_date, to = end_date)
monthly_returns <- lapply(c(tickers, benchmark), function(ticker) {
monthly_return <- monthlyReturn(get(ticker))
colnames(monthly_return) <- ticker
return(monthly_return)
})
all_returns <- do.call(cbind, monthly_returns)
# Calculate excess returns (assuming risk-free rate of 2% per annum)
rf_monthly <- 0.02/12
excess_returns <- all_returns - rf_monthly
asset_returns <- excess_returns[, tickers]
market_returns <- excess_returns[, benchmark]
# DM ME FOR THE FULL R CODE 11/13
Factor Model Analysis Results
Factor Model Empirical Analysis Results
Market Betas from CAPM R−Squared Comparison
1.0
1.4
CAPM
Multi−Factor
1.2
0.8
1.0
0.6
0.8
0.6
0.4
0.4
0.2
0.2
0.0
0.0
J
PL
ZN
PG
AAPL
MSFT
AMZN
GOOGL
META
JPM
BAC
WMT
PG
JNJ
JN
ET
G
SF
M
BA
JP
AA
AM
W
M
M
O
G
Variance Explained by PCs Factor Loadings Heatmap
JNJ
0.5
PG
WMT
0.4
BAC
JPM
0.3
META
0.2
GOOGL
AMZN
0.1
MSFT
AAPL
0.0
beta_MKT
beta_SMB
beta_HML
beta_MOM
PC1 PC2 PC3 PC4 PC5 PC6
12/13
Applications in Finance
▶ Portfolio Construction:
▶ Factor-based allocation strategies (smart beta)
▶ Risk parity approaches across factor exposures
▶ Portfolio tilting to capture factor risk premia
▶ Performance Attribution:
▶ Decomposing returns into factor and idiosyncratic components
▶ Identifying sources of outperformance/underperformance
▶ Evaluating skill versus factor exposures
▶ Risk Management:
▶ Factor-based VaR and stress testing
▶ Hedging factor exposures with derivatives
▶ Scenario analysis under factor shocks
▶ Asset Pricing:
▶ Testing market efficiency and anomalies
▶ Estimating risk-adjusted returns (alpha)
▶ Cross-sectional pricing tests
13/13