使用Python轻松计算股票的Beta系数
本文包含用Python计算股票beta系数并对其进行排序存入Excel的完整详细流程
一、Beta系数介绍
β系数也称为贝塔系数(Beta coefficient),是一种风险指数,用来衡量个别股票或股票基金相对于整个股市的价格波动情况。β系数是一种评估证券系统性风险的工具,用以度量一种证券或一个投资证券组合相对总体市场的波动性,在股票、基金等投资术语中常见。
贝塔系数是统计学上的概念,它所反映的是某一投资对象相对于大盘的表现情况。其绝对值越大,显示其收益变化幅度相对于大盘的变化幅度越大;绝对值越小,显示其变化幅度相对于大盘越小。如果是负值,则显示其变化的方向与大盘的变化方向相反;大盘涨的时候它跌,大盘跌的时候它涨。由于我们投资于投资基金是为了取得专家理财的服务,以取得优于被动投资于大盘的表现情况,这一指标可以作为考察基金经理降低投资波动性风险的能力。
二、Beta系数计算公式
其中,rm为该股票所在市场整体的涨跌幅,ra为该支股票自身的涨跌幅,Cov(ra,rm)为两者的协方差。
分母部分则为该支股票自身涨跌幅的标准差。
三、协方差的意义和计算公式
协方差(Covariance)在概率论和统计学中用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是相同的情况。
所以协方差的计算公式可以由方差的计算公式来推出。
方差计算公式为:
由此推知协方差计算公式为:
由于Python中并没有直接计算协方差的公式,所以我们可以对协方差公式进行一定的转化。
我们可以发现X,Y的协方差恰好等于X,Y的标准差的乘积,而Python当中正好有直接计算标准差的方法。
四、代码实现(完整代码在最后)
首先,为了抓取股票的数据,我们需要先引入一个非常好用的免费的tushare库(详细操作步骤参见我上一篇文章)
官网网址:https://tushare.pro/register?reg=427001
import tushare as ts
ts.set_token('你在官网个人中心中拿到的token')
pro = ts.pro_api()
抓取所有股票的基本信息并设定基本的输入参数:
stock_info = pro.stock_basic()
startdate: str = input('请输入开始日期\n')
enddate: str = input('请输入结束日期\n')
抓取上证指数和深证指数的数据
SH_code = '000001.SH'
SZ_code = '399300.SZ'
SH = pro.index_daily(ts_code=SH_code,start_date=startdate,end_date=enddate)
SZ = pro.index_daily(ts_code=SH_code,start_date=startdate,end_date=enddate)
分别计算它们涨跌幅的标准差和方差
SH_std = SH.std()
SH_var = SH.var()
SZ_std = SZ.std()
SZ_var = SZ.var