Fama-French三因子模型数据和Stata代码2001-2019年
- 数据周期:月度 2000-2019
- 数据格式:dta(Stata14版)
- 无风险利率采用一年期定期存款利率
- 市值指标选择流通市值
- 市场回报率采用流通市值加权平均法计算,考虑现金红利再投资的综合月度市场回报率
数据处理说明
- 规范信息披露制度下上市公司年度财务报表一般在次年3、4月份公布,且在一季度财务报表公布之前披露,即4月底为年报披露截止期。财务报表信息披露的滞后性造成金融数据库中财务数据与市场数据的时间不一致,即t年末的财务数据因年报公布的滞后性在t+1年4月份披露财务报表时才得到更新。因此选取t年5月至t+1年4月作为组合构建周期。
- 新股的处理:剔除IPO后前六个月的数据(包括上市月) (可以根据自己需求修改)
- ST(特别处理)、PT(特别转让)股票的处理:由于采用的是月度数据,故涨跌幅度的收窄并不会对造成显著性影响,故在样本中保留ST股票。而针对PT股票,其流通性较正常股票大幅下降,故未被纳入市场指数,故剔除PT股票。(数据里提供是否ST、是否PT、是否ST或PT三个字段,这里使用是否PT字段进行剔除,如果要把ST和PT都剔除,使用是否ST或PT字段进行剔除)
- * 剔除PT
- merge m:1 stkcd year using 是否ST.dta, nogen keep( 1 3 )
- drop if 是否PT==1
复制代码
- 金融类股票处理:剔除
如果不需要剔除的话,可以注释掉一下代码
- * 剔除金融类股票
- gen ind=substr(行业代码C,1,1)
- drop if ind==”J”
复制代码
- 账面价值为负的股票的处理: 剔除
如果不需要剔除的话,可以注释掉一下代码
- * 删除账面价值为负的股票
- drop if 账面价值<0
复制代码
因子构建
- 规模的分组点为中位数,前50%为小规模组(S,Small),后50%为大规模组(B,Big)
- 账面市值比的分组点都为第30个和第70个百分位数,前30%为低账面市值比组(L,Low),中间40%为中账面市值比组(N,neural),后30%为高账面市值比组(H,High)
- SMB=(SH+SN+SL)/3-(BH+BN+BL)/3
- HML=(SH+BH)/2-(SL+BL)/2
- 分25组回归的时候计算组合收益率采用流通市值加权平均法计算的组合收益率
分25组回归结果(Excel已设置好公式,只需要Stata生成的结果复制进去可以自动生成表格,标注星号,方便快捷)
提示:esttab展示结果出现esttab命令不能被识别的错误,需要安装esttab命令ssc install estout