The Fama French 3-factor model
The Fama-French model famously adds two additional factors to the CAPM model to describe asset returns:
$$ R_{P} = RF + \beta_{M}(R_{M}-RF)+b_{SMB} \cdot SMB + b_{HML} \cdot HML + \alpha $$
- SMB: The small minus big factor
- \(b_{SMB}\): Exposure to the SMB factor
- HML: The high minus low factor
- \(b_{HML}\): Exposure to the HML factor
- \(\alpha \): Performance which is unexplained by any other factors
- \(\beta_{M}\): Beta to the broad market portfolio B
The FamaFrenchData DataFrame is available in your workspace and contains the HML and SMB factors as columns for this exercise.
Cet exercice fait partie du cours
Introduction to Portfolio Risk Management in Python
Instructions
- Define a regression model that explains
Portfolio_Excessas a function ofMarket_Excess,SMB, andHML. - Extract the adjusted r-squared value from
FamaFrench_fit.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import statsmodels.formula.api
import statsmodels.formula.api as smf
# Define the regression formula
FamaFrench_model = smf.ols(formula='____', data=FamaFrenchData)
# Fit the regression
FamaFrench_fit = FamaFrench_model.fit()
# Extract the adjusted r-squared
regression_adj_rsq = ____
print(regression_adj_rsq)