投资者最关心的两个问题就是收益率和股息,两者作为公司经营状况的两个重要方面,往往同时出现在投资报告中,二者之间具有较强的关联性(点击文末“阅读原文”获取完整代码数据)。
目前,国内外对于股票股息收益、股息收益率和股权溢价等方面的研究已有很多,但大多数是关于市场环境或宏观因素对上述指标产生影响的研究。
本文选择沪深两市股票作为研究对象,帮助客户构建两阶段最小二乘法2 SLS回归、工具变量法分析股息收益、股息收益率和股权溢价,旨在探究指标间是否具有显著相关关系。研究结论不仅为投资者提供了分析投资机会的理论依据,还有助于上市公司进行决策分析。此外,文章还对相关行业的发展具有一定指导意义。
1.数据
表格中包括从1965年到2014年的月度数据,需要用到的是:yyyymm(年⽉),
index(s&p 500 price index) , Dividend, D12(dividend yield), Rfree(risk-free rate)
读取数据,查看数据
head(data) ## yyyymm Index Dividend D12 E12 b/m tbl AAA BAA ## 1 196501 87.56 2.51667 2.51667 4.59333 0.4717232 0.0381 0.0443 0.0480 ## 2 196502 87.43 2.53333 2.53333 4.63667 0.4713995 0.0393 0.0441 0.0478 ## 3 196503 86.16 2.55000 2.55000 4.68000 0.4694899 0.0393 0.0442 0.0478 ## 4 196504 89.11 2.57000 2.57000 4.73333 0.4525593 0.0393 0.0443 0.0480 ## 5 196505 88.42 2.59000 2.59000 4.78667 0.4546643 0.0389 0.0444 0.0481 ## 6 196506 84.12 2.61000 2.61000 4.84000 0.4808590 0.0380 0.0446 0.0485 ## lty ntis Rfree infl ltr corpr svar ## 1 0.0422 0.01790289 0.003175000 0.0009600000 0.0040 0.0081 0.0001534973 ## 2 0.0424 0.01482236 0.003275000 0.0000000000 0.0014 0.0009 0.0003681211 ## 3 0.0422 0.01913336 0.003275000 0.0009590793 0.0054 0.0012 0.0001431412 ## 4 0.0422 0.01472169 0.003275000 0.0022357074 0.0036 0.0021 0.0001654871 ## 5 0.0423 0.01624416 0.003241667 0.0031867431 0.0018 -0.0008 0.0003363517 ## 6 0.0423 0.01755028 0.003166667 0.0041296061 0.0047 0.0003 0.0018498325 ## csp CRSP_SPvw CRSP_SPvwx ## 1 -0.0022007442 0.034791 0.033837 ## 2 -0.0022017761 0.003746 -0.000853 ## 3 -0.0021373681 -0.012213 -0.013685 ## 4 -0.0021429735 0.035612 0.034769 ## 5 -0.0025656153 -0.003122 -0.008354 ## 6 -0.0023808197 -0.046880 -0.048367 #需要用到的是有红色标记的:yyyy(年份),price index(s&p 500 price index),D12(dividend yield),Rfree(risk-free) CampaignData <- na.omit(subset(AllData, select=c("yyyymm","Index","D12","Rfree","Dividend")))
2.自变量x
⾃变量x是D12(dividend-yield), DY(t)=log[D(t)/P(t-1)],这⾥的D(t)就是表格中的Dividend。P(t-1) 就是表格中的index.
DY=log(Dt/Pt)
3.因变量y
因变量y是股权溢价(equity premium),公式是equity premium=rm(t)-rf(t) 关于rm(t): rm(t)=log[Rm,t]=log[ (P(t)+D(t)) / P(t-1) ],D(t)就是表格中的Dividend.
P(t),P(t-1)就是表格中的index. 关于 rf(t): rf(t)=log[1+Rf(t)],这⾥的Rf(t)就是表格中的Rfree(risk-free rate)
equity_premium=Rm-Rf y=equity_premium
4.模型
y(t)=β* x(t-1)+ε(t) (1)
oequity_premium[-1] ~ CampaignData$D12[-n] +I(1:(n-1)), data=CampaignData)
x(t)= ρ* x(t-1)+u(t) (2)
点击标题查阅往期内容
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
01
02
03
04
5.工具变量:
z(t)=ρz* z(t-1)+Δx(t) ,其中ρz是z(t-1)的系数,和式⼦(2)中的ρ不是同⼀个值.
这⾥的 z0=0,ρz=1+c/nκ , c=-1,k=0.95
c=-1 z=0 ρz=1+c/(n^k) for(i in 1:n)z[i+1]=ρz*z[i]+x[i] z=z[-1]
6.用两阶段最⼩二乘法做回归, 2SLS
具体做法: (1)通过工具变量计算出z(t-1)的数值
(2)建⽴x(t-1)与z(t-1)的函数关系:x(t-1)=αz(t-1)+ e(t),通过OLS得出α的估计值,
然后得出x(t-1)的估计值。x(t-1)的估计值= α的估计值* z(t-1) (3)把x(t-1)的估计值带⼊到第⼀个式⼦中,即y(t)=β* x(t-1)的估计值+ε(t) ,再
进⾏OLS回归,最后得到β的估计值,以及test-statistic的值,和p-value.
# 建⽴x(t-1)与z(t-1)的函数关系 n=length(x) olsmodel <- lm(x[-1] ~ z[-n] +I(1:(n-1)), data=CampaignData) # summary(olsmodel) # 得出x(t-1)的估计值 # fitted(olsmodel) # 把x(t-1)的估计值带⼊到第1⼀个式⼦中,即y(t)=β*x(t-1)的估计值+ε(t) p=summary(olsmodel)[4]$coefficients[,4][2] return(p) p=numeric(0) fo){ p=c(p,f(x[xx[i]:xx[i+1]],y[yy[j]:yy[j+1]]))
7.p-value surfaces图:
需要的是得到下⾯的这样一张图,⽤p-value 构建的。
具体描述是:所选取的样本区间是从1965年1⽉到2014年12⽉,以5年为⼀个最短的⼦样本。图的y轴为样本的起始点⼀共540个(从1965年1⽉到2009年12⽉), x轴为样本的终点⼀共也是540个(从1970年1⽉到2014年12⽉)。图中的每⼀个点为⼀个⼦样本的p-value的值。
for(j in 1:(length(yy)-1)){ p=c(p,f(x[xx[i]:xx[i+1]],y[yy[j]:yy[j+1]])) persp(xx, yy, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue")