开始使用免费开始使用

用 CAPM 计算贝塔

建模股票收益的方法有很多,但最为知名之一的是 资本资产定价模型(Capital Asset Pricing Model,CAPM):

$$ E(R_{P}) - RF = \beta_{{P}}(E(R_{M})-RF)\ $$

  • $E(R_{P}) - RF$:单只股票或投资组合 P 的超额期望收益。
  • $E(R_{M}) - RF$:广义市场投资组合 B 的超额期望收益。
  • $RF$:本地区无风险利率。
  • $\beta_{{P}}$:投资组合 P 对广义市场投资组合 B 的贝塔(或暴露)。

您可以在 statsmodels.formula.api 中对 .ols(formula, data) 模型对象调用 .fit() 方法来执行分析,并在分析对象上调用 .summary() 方法来查看结果。

FamaFrenchData DataFrame 已在您的工作区中可用,并包含本练习所需的数据。

本练习是课程的一部分

Python 投资组合风险管理入门

查看课程

练习说明

  • 首先,将 statsmodels.formula.api 导入为 smf
  • 定义一个回归模型,用 Market_Excess 解释 Portfolio_Excess
  • 提取并打印拟合回归模型的调整后 R-squared。
  • 提取您投资组合的市场贝塔。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import statsmodels.formula.api
import ____ as ____ 

# Define the regression formula
CAPM_model = smf.ols(formula=____, data=FamaFrenchData)

# Print adjusted r-squared of the fitted regression
CAPM_fit = CAPM_model.fit()
print(CAPM_fit____)

# Extract the beta
regression_beta = CAPM_fit____
print(regression_beta)
编辑并运行代码