用Python将2010-2020年月度a股数据构建fama五因子模型,并附有代码
时间: 2024-02-18 20:02:18 浏览: 195
以下是基于Python实现Fama五因子模型的简单示例代码:
```python
import pandas as pd
import numpy as np
import statsmodels.api as sm
# 读取数据
data = pd.read_csv('a股数据.csv', index_col=0, parse_dates=True)
# 计算因子收益率
market_return = data['指数收益率']
SMB_return = data['小市值股票收益率'] - data['大市值股票收益率']
HML_return = data['高账面市值比率股票收益率'] - data['低账面市值比率股票收益率']
# 计算超额收益率
risk_free_rate = 0.03 # 1个月期限国债收益率
excess_return = data['股票收益率'] - risk_free_rate
# 回归分析
X = pd.DataFrame({'market_return': market_return,
'SMB_return': SMB_return,
'HML_return': HML_return})
X = sm.add_constant(X)
model = sm.OLS(excess_return, X)
results = model.fit()
# 输出结果
print(results.summary())
```
这段代码实现了从CSV文件中读取数据,计算因子收益率、超额收益率,进行线性回归分析,并输出回归结果的摘要。在实际使用中,需要根据具体数据和模型要求进行相应的修改和调整。
阅读全文