capm模型python
时间: 2023-06-20 15:03:29 浏览: 255
投资组合-python模拟鼠标点击和键盘输入的操作
CAPM是资本资产定价模型(Capital Asset Pricing Model)的缩写,是一种用于估算资本市场所需回报率的经济模型。在Python中,可以使用pandas和numpy等库来计算CAPM模型。
下面是一个简单的CAPM模型的Python代码示例:
```python
import pandas as pd
import numpy as np
from pandas_datareader import data as wb
# 获取股票数据
tickers = ['AAPL', 'MSFT', '^GSPC']
data = pd.DataFrame()
for t in tickers:
data[t] = wb.DataReader(t, data_source='yahoo', start='2010-1-1')['Adj Close']
# 计算日收益率
returns = np.log(data / data.shift(1))
returns.dropna(inplace=True)
# 计算每只股票的Beta系数
cov = returns.cov() * 252
cov_with_market = cov.iloc[0:2, 2]
market_var = returns['^GSPC'].var() * 252
AAPL_beta = cov_with_market['AAPL'] / market_var
MSFT_beta = cov_with_market['MSFT'] / market_var
# 计算预期回报率
risk_free_rate = 0.03 # 无风险利率
market_return = returns['^GSPC'].mean() * 252 # 市场平均回报率
AAPL_expected_return = risk_free_rate + AAPL_beta * (market_return - risk_free_rate)
MSFT_expected_return = risk_free_rate + MSFT_beta * (market_return - risk_free_rate)
print('AAPL的预期回报率为:', AAPL_expected_return)
print('MSFT的预期回报率为:', MSFT_expected_return)
```
这段代码首先使用pandas_datareader库获取了苹果、微软和标普500指数的股票数据。然后,计算了每只股票的日收益率,并使用这些数据计算了每只股票的Beta系数。最后,使用CAPM模型计算了每只股票的预期回报率。
阅读全文