1.贝塔系数
1.1理论含义
贝塔系数衡量了个股或基金相对于整个股市的波动情况。
2.夏普比率
2.1理论含义
衡量股票或基金所获得的风险溢价,即如果股票或基金额外承担一单位的风险,可以获得多少单位的收益作为补偿。若为正值,代表股票或基金报酬率高过波动风险;若为负值,代表股票或基金操作风险大过于报酬率。
3.代码部分
# -*- coding: utf-8 -*-import mathimport pandas as pdimport numpy as npimport tushare as tsts.set_token('your token')pro = ts.pro_api()START_DATE = '0101'END_DATE = '1025'#提取股票每日行情df1 = pro.daily(ts_code='000001.SZ', start_date=START_DATE, end_date=END_DATE).sort_values(by='trade_date')#提取深市指数df2 = pro.index_daily(ts_code='399300.SZ', start_date=START_DATE, end_date=END_DATE).sort_values(by='trade_date')#计算贝塔系数s1 = df1['pct_change']s2 = df2['pct_change']print((np.cov(s1, s2))[0][1]/np.var(s2))#计算夏普比率df1['ex_pct_close'] = df1['pct_change'] - 0.04/252print((df1['ex_pct_close'].mean() * math.sqrt(252))/df1['ex_pct_close'].std())
输出:
#贝塔系数1.2772845904286678#夏普比率0.6094095907213576
注:
使用tushare数据接口(接口描述文档),token需要自己注册获得,致谢tushare!使用的是简单收益率。使用深证成指(399300.SZ)代替市场指数。无风险收益率使用年化利率为4%的国债利率,并化为日利率。
4.后续
使用对数收益率再计算两个指数如果觉得《Python计算贝塔系数和夏普比率》对你有帮助,请点赞、收藏,并留下你的观点哦!