Fama French 三因子模型
Fama-French 模型在 CAPM 模型上,另外加入兩個因子來描述資產報酬:
$$ R_{P} = RF + \beta_{M}(R_{M}-RF)+b_{SMB} \cdot SMB + b_{HML} \cdot HML + \alpha $$
- SMB:小型減大型(Small Minus Big)因子。
- $b_{SMB}$:對 SMB 因子的曝險。
- HML:高帳面價值減低帳面價值(High Minus Low)因子。
- $b_{HML}$:對 HML 因子的曝險。
- $\alpha$:無法由其他因子解釋的超額表現。
- $\beta_{M}$:對整體市場投資組合的貝塔值。
FamaFrenchData DataFrame 已提供在你的工作環境中,且包含本練習所需的 HML 與 SMB 因子欄位。
本練習屬於課程
Python 投資組合風險管理入門
練習說明
- 定義一個迴歸模型,將
Portfolio_Excess設為Market_Excess、SMB、HML的函數。 - 從
FamaFrench_fit萃取調整後的 r-squared。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# 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)