CAPM模型

获取任一股票数据,建立CAPM模型,估计基于CAPM模型的预期收益率与实际收益率,结果以图形的形式展示。

import tushare as ts

import pandas as pd
import statsmodels.api as sm
mydf=ts.get_hist_data('sz',ktype='W',start='2016-01-01',end='2017-01-01')
mydf.p_change
ZGLT=ts.get_hist_data('600050',ktype='W',start='2016-01-01',end='2017-01-01')
ZGLT.p_change
#无风险收益率
rf=1.0385**(1/365)-1
Return=pd.merge(pd.DataFrame(mydf.p_change),pd.DataFrame(ZGLT.p_change),left_index=True,right_index=True,how='inner')
Eret=Return-rf
#拟合CAPM模型
model=sm.OLS(Eret.p_change_y[1:],sm.add_constant(Eret.p_change_x[1:]))
result=model.fit()
print(result.summary())
#根据拟合结果计算预期收益率
Premydf=mydf.p_change-rf
PreZGLT=ZGLT.p_change-rf
ActualZGLT=1.0511+0.9757*Premydf
#画折线图
import matplotlib.pyplot as plt
plt.plot(PreZGLT, marker='o', label='PreZGLT')
plt.plot(ActualZGLT, marker='*',label='ActualZGLT')
plt.legend()
plt.show()
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值