有志始知蓬莱近
无为总觉咫尺远

股票beta值如何计算(股票中的贝塔值是怎么回事?有什么简便计算方法?和股指什么关系?)

股票中的贝塔值是怎么回事?有什么简便计算方法?和股指什么关系?

股票β值表示投资组合对系统风险的敏感程度:β值为1,表示指数变化时,股票价格会以相同的百分率变化;β值为1.8时,表示指数发生1%的变动,股票价格会呈现1.8%的变动;β值为值0.5时,表示指数发生1%的变动,股票价格会呈现0.5%的变动。行情上涨时,一般选取β值偏高的投资组合;行情下跌时,一般选取β值偏低的投资组合,这样才能取得最佳收益。当然,β值是历史数据的统计,有一定的时效性,这一点在应用时必须考虑。

R语言计算资本资产定价模型(CAPM)中的Beta值和可视化

今天我们将计算投资组合收益的CAPM贝塔。这需要拟合一个线性模型,得到可视化,从资产收益的角度考虑我们的结果的意义。

相关视频

简单的背景介绍,资本资产定价模型(CAPM)是由威廉·夏普(WilliamSharpe)创建的一个模型,它根据市场收益和资产与市场收益的线性关系来估算资产的收益。这种线性关系就是股票的贝塔系数。计算CAPM的betas可以作为一个团队工作中更复杂的模型的一个很好的模板。我们将专注于CAPM的一个特定方面:β值。正如我们上面所指出的,贝塔系数是指一项资产的收益率回归到市场收益率的结果。它抓住了资产与市场之间的线性关系

在计算该投资组合的贝塔值之前,我们需要找到投资组合的月度收益率。

我们将两个投资组合收益和一个资产收益一起分析。

我们的第一步是做出选择,用哪种资产作为市场收益的代理,我们将选择SPYETF,将标准普尔500指数视为市场收益。

让我们计算一下SPY的市场收益。注意开始日期是"2013-01-01",结束日期是"2017-12-31",所以我们将使用五年的收益。

我们还想要一个市场收益率的data.frame对象,并转换xts对象。

我们有一个market\_returns\_tidy对象。我们确保它的周期性与投资组合周期一致

如果周期性不一致,mutate()就会抛出一个错误。

计算投资组合的β值,首先让我们看看这个方程式。

投资组合β等于投资组合收益和市场收益的协方差,除以市场收益的方差。

我们可以用cov计算分子,即投资组合和市场收益的协方差,用var计算分母。

我们的投资组合β值等于。

这个β值相当接近于1,毕竟SPY是这个投资组合的一个重要部分。

我们也可以通过找到我们每个资产的贝塔值,然后乘以资产权重来计算组合贝塔值。也就是说,投资组合贝塔值的另一个方程式是资产贝塔值的加权和。

为了在R中使用这种方法,我们首先要找到我们每个资产的β值。

我们需要将每项资产的收益率回归到市场收益率上。我们可以用lm()对资产1进行回归,然后再用lm()对资产2进行回归,等等。但如果我们有一个50个资产的投资组合,这将是不现实的。相反,我们写一个代码流程,使用map()来回归我们所有的资产,并通过一次调用计算betas。

我们将从我们的returns_long整齐的数据框架开始。

nest(-asset)改变了我们的数据框架,所以有两列:一列叫做asset,保存我们的资产名称,一列叫做data,保存每个资产的收益列表。现在我们已经将收益列表"嵌套"在一列中。

现在我们可以使用map()对每个嵌套的列表应用一个函数,并通过mutate()函数将结果存储在一个新的列中。整个管道命令是mutate(model=map(,~lm())

我们现在有三列:之前的资产,之前的数据,以及我们刚刚添加的模型。模型一栏是我们对每项资产进行回归的结果lm( )。这些结果是我们每个资产的β值和截距。

让我们用tidy()函数整理一下我们的结果。我们想将该函数应用于我们的模型列,并将再次使用mutate()和map()组合。

我们现在已经很接近了,但是模型栏里有嵌套的数据框。

不过,嵌套的数据框架不方便呈现,所以我们调整模型列。

现在,这看起来比较整洁。我们将做进一步的清理,去掉截距,因为我们需要贝塔值。

快速检查应该发现SPY与自身的贝塔为1。

现在让我们看看这些资产的组合如何影响投资组合的β值。

我们按照上面的选择来分配投资组合的权重。

现在可以使用这些权重来获得投资组合的β值,基于每个资产的β值。

这个贝塔值与我们上面用协方差/方差法计算的是一样的,现在我们知道投资组合收益和市场收益的协方差除以市场收益的方差等于把每项资产的收益回归到市场收益上得到的加权估计。

使用内置CAPM.beta()函数。该函数需要两个参数:希望计算其β值的投资组合(或任何资产)的收益,以及市场收益。

首先,我们将使用dplyr来抓取我们的投资组合贝塔。稍后会进行一些可视化,但现在将提取投资组合的β值。

为了计算贝塔值,调用do(model=lm())。然后使用tidy()函数,使模型结果更容易看懂。

使用tidyquant函数。能够将CAPM.beta()函数应用于一个数据框架。

稳定的结果和接近1的贝塔值是比较理想的,因为我们的投资组合有25%分配给标准普尔500指数。

在可视化之前,我们需要计算投资组合的收益,然后计算投资组合涉及到的单个资产的CAPMβ。

CAPM的β值告诉我们投资组合收益与市场收益之间的线性关系。它还告诉我们投资组合的风险性--投资组合相对于市场的波动程度。在我们讨论贝塔系数本身之前,让我们先看看我们的资产的预期月度收益与我们个别资产的月度风险的对比。

我们的投资组合在这个散点图上的位置如何?让我们用geom_point()把它添加到ggplot()中。

我们的投资组合收益/风险看起来都不错,尽管SP500指数的预期收益率更高,只是风险更大一些。在过去的五年里,要战胜市场是很困难的。EEM和EFA有较高的风险和较低的预期收益,而IJS有较高的风险和较高的预期收益。

点击标题查阅往期内容

R语言基于线性回归的资本资产定价模型(CAPM)

左右滑动查看更多

01

02

03

04

一般来说,散点是为我们的投资组合提供一些收益-风险的背景。它不是CAPM的直接组成部分。

接下来,让我们更直接地转向CAPM,用X轴上的市场收益和Y轴上的投资组合收益的散点图来直观地显示我们的投资组合与市场之间的关系。首先,我们将通过调用mutate()将市场收益添加到我们的投资组合tibble中。然后,我们用ggplot()设置我们的x轴和y轴。

这个散点图与β计算传达了相同的强线性关系。我们可以用geom_smooth()给它添加一个简单的回归线。

在结束CAPMbeta的分析之前,让我们来探讨一下如何创建更有趣的可视化数据。

下面的代码块从lm()的模型结果开始,它将我们的投资组合收益率回归到市场收益率上。我们将结果存储在一个名为model的列表列中。接下来,我们调用augment(),将预测值添加到原始数据集,并返回一个tibble。

这些预测值将被放在.fitted列中。

让我们用ggplot()来看看拟合的收益值与实际收益值的匹配程度。

这些月度收益和拟合值似乎重合得不错。让我们把实际收益和拟合收益都转换为一元的增长,并进行同样的比较。

我们的拟合增长很好地预测了我们的实际增长,尽管在大部分时间里,实际增长低于预测值。

TheCapitalAssetPricingModel:TheoryandEvidenceEugeneF.FamaandKennethR.French,TheCapitalAssetPricingModel:TheoryandEvidence,TheJournalofEconomicPerspectives,Vol.18,No.3(Summer,2004),pp. 25-46

获取全文完整资料。

本文选自《R语言计算资本资产定价模型(CAPM)中的Beta值和可视化》。

点击标题查阅往期内容

证券市场线的β系数

1.β系数的意义证券市场线描述的则是市场均衡条件下单项资产或资产组合(不论它是否已经有效分散风险)的期望收益与风险之间的关系。测度风险工具是单项资产或资产组合对于整个市场组合方差的贡献程度,即β系数。 它告诉我们相对于市场组合而言特定资产的系统风险是多少。举例:普通股成本,资本资产定价模型中的贝塔值的估计贝塔值是企业的权益收益率与股票市场收益率的协方差:β=cov(Ri,Rm)/б^2其中:cov(Ri,Rm)是股票收益与市场指数之间的协方差;б^2是市场指数的方差。2.β系数的确定在确定计算贝塔值时,必须做出两项选择(1)选择有关预测期间的长度【5年或更长】。公司风险特征无重大变化时,可以采用5年或更长的预测长度;如果公司风险特征发生重大变化,应当使用变化后的年份作为预测期长度。(2)选择收益计量的时间间隔。使用每周或每月的收益率被广泛采用。(3)财务估价使用的现金流量数据是面向未来的,而计算权益成本使用的β值却是历史的,时间基础不一致的问题β值的驱动因素很多,但关键的因素只有三个:经营杠杆、财务杠杆和收益的周期性。如果公司在这三方面没有显著改变,则可以用历史的β值估计权益成本。

样条曲线分段线性回归模型piecewiseregression估计个股beta值分析收益率数据

市场,是一个有点模糊的概念,像往常一样,我们使用标准普尔500指数进行近似计算。上述关系(以下简称β)对交易和风险管理的许多方面是不利的。已经确定的是,波动率对于上涨的市场和下跌的市场有不同的动态。我们无论如何都要使用回归来估计贝塔值,所以对于希望拟合这种不对称性的投资者来说,分段线性回归是合适的。

相关视频

这个想法很简单,我们将数据集分成两个(或更多)部分,并分别、逐块或 _分段_估计每个部分。这个简单的想法可以用复杂的符号和代码来实现。

为了说明,我使用Microsoft股市收益率数据(MSFT)。

我对不同收益率估计了不同的β值,正日在零以上,负日在零以下,所以零是我们的突破点。(这个突破点在学术术语中被称为"结",为什么是"结"呢?因为它把两部分联系在一起。)下面的图显示了结果。

也许β值一直都是一样的,直到极端的负值,只有说当市场急剧下降时,关系才会改变。

点击标题查阅往期内容

R语言分位数回归、GAM样条曲线、指数平滑和SARIMA对电力负荷时间序列预测

左右滑动查看更多

01

02

03

04

这属于结构性变化的范畴。我考虑沿轴线的点的网格,并建立一个模型,在每个点上有一个断点,断点前有一个斜率,断点后有一个斜率。我寻找整个样本的平方误差之和的最小值,所以我把两个模型的平方误差相加。下图显示了结果。

在最优模型上进行网格搜索

数据显示,结点不是零,但几乎是零,为了使用正确的β值,你现在要做的就是决定,这是一个熊市还是一个牛市,谢谢阅读。

点击标题查阅往期内容

股票的β值怎么算?

β(Beta)系数-----------BETA(N)返回当前证券N周期收益与大盘收益相比的贝塔系数.

股票中贝塔系数都有哪些测算方法?

一般来说,贝塔系数都是根据过去一段时间内该公司股价和大盘标杆指数的历史价格通过应用线性回归测算出来的。最常用也是业界最普遍的方法取值范围是在过去5年,取每月初价格,总共60个值,通过线性回归来计算。

capm模型中的杠杆beta系数如何计算?

Beta=covariance(Ri,RM)/variance(Rm)covariance(ri,rm)为个股于市场之间的协方差Variance(Rm)为市场的方差通常计算beta是用对股票的excessreturn和市场的excessreturn进行回归运算股票=y市场=xbeta为回归分析结果的斜率,Y=a+beta(X)+e回归式子的斜率为Beta值

股票交易所说的beta值是什么?

简单说:beta就是股价变动与大盘变动的比值,大于1说明股价波动大风险大,小于1波动小风险小

单指数模型的β值怎么求?

单指数模型是指用单一的市场指数来解释股票收益率的模型。在单指数模型中,β值表示股票与市场指数的相关系数,用于衡量股票在市场波动中的表现。

求β值的一种常用方法是通过历史数据的回归分析来估计。具体步骤如下:

1. 收集股票和市场指数的历史数据,通常包括每日收益率或价格。

2. 计算股票和市场指数的日收益率,即将每日价格变化转化为百分比变化。

3. 进行线性回归分析,以市场指数的收益率为自变量,股票收益率为因变量。回归模型为:股票收益率 = α + β * 市场指数收益率。

4. 通过回归分析得到的β系数即为股票的β值,表示股票与市场指数之间的相关程度。

需要注意的是,β值只能作为一种参考指标,不能完全确定股票的风险水平和表现。此外,β值的计算结果受样本期间和数据质量等因素影响,应该结合其他因素进行综合分析和判断。

利用Python计算资产beta值和市场beta值

在这篇文章中,我们将强调理解股票市场中beta的重要性,以及我们如何来使用beta来对冲市场风险。我们还会利用Python来计算任何股票的beta值。接下来,让我们开始吧,来编写Python程序。

基准投资组合(标普500指数)或者市场投资组合所表现出来的风险称为系统风险。beta是衡量任意个股或者投资组合风险的指标。换句话说,它衡量任何证券对于整体市场波动的波动性。接下来,让我们更加直观的理解beta。

考虑到谷歌公司的每日回报。如果谷歌股票的beta值是1.5,那么,如果市场的回报率是10%,那么谷歌股票的回报率将是15%。换句话说,谷歌股票的回报率超过市场的50%,谷歌的alpha回报是5%。现在,如果市场下跌5%,那么谷歌股票将下降7.5%也就是比市场多跌50%。谷歌股票的市场价值变化乘以其beta来估计其未来的变动。因此,谷歌股票是一个高beta的股票。

同样,如果任何股票的beta值为0.75,那么它的波动性将低于市场。如果市场的日内涨幅为10%,那么低beta值的股票将仅仅获得7.5%的收益。低beta股票对于降低市场风险非常有用。这是因为,如果市场下跌5%,那么股票只会下跌3.75%,这在市场下跌趋势中,是非常有用的。

首先,让我们在Python中导入数据并且绘制谷歌和标普500的每日回报。

从图中我们可以看出,谷歌股票的回报波动比较大(蓝色),标普500的回报波动比较小(橙色)。

计算beta的最常用方法之一是使用资本资产定价模型(CAPM)。CAPM模型如下:

E(Ra)=Rf+Ba[E(Rm)-Rf]

CAPM模型表明资产E(Ra)的预期收益等于市场的无风险收益加上市场预期收益与无风险收益之间的差值(E(Rm)-Rf)乘以资产的beta值。所以,我们就可以通过这个公式来求得资产的bata值,如下:

Ba=[E(Ra)-Rf]/[E(Rm)-Rf]

我们甚至可以通过回归分析技术找到beta值。当我们试图捕捉变量x和y之间的数学关系时,通过散点图来拟合线,多项式或曲线。这样人们可以对给定的x和y做出相当好的预测,那么,在x和y之间导出这样一个方程的数学过程称为回归分析。这个方程也可以通过使用基于机器学习的回归模型得出。

如果我们师徒通过这个散点图来拟合线,那么我们可以得到一个最简单的线性回归模型。

线性回归假定因变量和自变量之间存在线性关系。以下回归方程描述了这种关系:

Yi=b0+b1Xi+ei

我们将截距b0和斜率系数b1称为回归系数,将ei称为随机误差。

现在,考虑另一个等式:

Rasset=ex-postalpha+betaofasset* Rbenchmark +ei

为了更直观的理解系数,如果我们考虑谷歌与标普500指数的回报,则回归线中的斜率系数称为股票的beta,因为它衡量的是谷歌收益中系统性或不可分散风险的相对数量。如果谷歌回报的斜率大于1,其回报往往会增加或者减少市场回报。斜率或者beta为1,那么其回报将与市场平均具有相同的系统风险水平,斜率或者beta小于1意味着回报增加或者减少的幅度小于市场回报的变化。

截距是事后的alpha,即与市场指数回报相比,谷歌超额回报的衡量。如果截距是负数,则意味着谷歌在风险调整的基础上表现落后于标普,而截距是正数,则意味着其在风险调整基础上有超额收益。

回归方程线上的所有点预测相应x值的y值。然而,最佳回归线是由回归方程预测的y值与实际y值之间的平方差(垂直距离)或者平方误差之和或者SSE之和的回归线。使得误差最小。

因此,回归线使得SSE最小化。这就是为什么简单线性胡桂也被称为普通最小二乘或者OLS的原因,因此回归方程也被称为最小二乘估计。

回归线的斜率系数b1被计算为x和y的协方差除以x的方差,并且截距系数是x=0处的线与y轴的交点。

以下的Python代码可以参考:

从图上我们可以看到谷歌的beta值是1.25,你也可以尝试别的股票。

下面是线性回归图。

作者:chen_h

未经允许不得转载:财高金融网 » 股票beta值如何计算(股票中的贝塔值是怎么回事?有什么简便计算方法?和股指什么关系?)

相关推荐