哈喽!诸君安!
应广大读者的要求,今天就来介绍一下如何在Stata中应用修正的Jones模型计算可操控应计项目。
我们的上市公司财务数据来源于CSMAR数据库,行业分类数据来源于2015申银万国行业分类。修正的Jones模型如下图所示:
具体计算方法为:借助公式1b拟合出各行业年份的回归系数,然后带入公式1a中并拟合出NDA,即正常的应计项目规模,最后套用公式1c,计算出可操控应计项目的值,上述的运算都是在同一行业同一年份中进行(公式中的详细财务指标见变量标签)。
一
读取财务数据
clear
set more off
global path = "D:\DA" //定义文件存放路径
use ${path}\资产负债表,clear
merge 1:1 stkcd year using ${path}\利润表
drop _m
merge 1:1 stkcd year using ${path}\现金流量表
drop _m //合并CSMAR数据库三表数据
xtset stkcd year //为后续的滞后运算设置时间变量
二
数据预处理
1.数据重命名:对模型中需要用的基本财务数据进行重新命名
rename b001100000 S
label var S "营业收入"
rename a001111000 R
label var R "应收账款"
rename a001212000 PPE
label var PPE "固定资产"
rename a001000000 A
label var A "账面资产"
rename b002000000 NI
label var NI "净收入"
rename c001000000 CFO
label var CFO "经营现金流量"
2.生成模型中计算
gen Delta_S=d.S
label var Delta_S "营业收入增量"
gen Lag_A=l.A
label var Lag_A "去年的账面资产"
gen Delta_R=d.R
label var Delta_R "应收账款增量"
gen TA=NI-CFO
label var TA "总应计项目"
gen A1=1/l.A /*A1为滞后1期的总资产的倒数*/
replace TA=TA/l.A
replace Delta_S=Delta_S/l.A
replace Delta_R=Delta_R/l.A
gen RVC=Delta_S-Delta_R
label var RVC "营业收入增量减去应收账款增量然后除以滞后一期的账面资产"
replace PPE=PPE/l.A
3. 匹配行业数据
sort stkcd
merge m:1 stkcd using ${path}/行业分类\申银万国行业分类2015.dta //行业分类数据存放路径
drop _m
encode syind,gen(ind) //把字符型数据转换为数值型数据
keep stkcd year ind Delta_S PPE A Lag_A Delta_R TA A1 RVC //保留所需变量
drop if ind==.|TA==.|A1==.|Delta_S==.|PPE==.|RVC==. //剔除缺失值
save ${path}\fs_盈余管理数据,replace //数据保存
三
修正的Jones模型运算
statsby _b,by(year ind) clear :reg TA A1 Delta_S PPE //使用statsby命令进行公式1b的分组回归,并输出各年份行业的归回系数
merge 1:m year ind using ${path}\fs_盈余管理数据.dta //匹配原始数据
gen NDA=_b_cons+_b_A1*A1+_b_Delta_S*RVC+_b_PPE*PPE //根据公式1a拟合出合理的应计项目规模
gen DA=TA-NDA //根据公式1c计算可操控应计项目
四
可选择操作
winsor DA,gen(DA_Winsor) p(0.01) //进行缩尾操作
gen abs_DA_Winsor=abs(DA_Winsor) //取绝对值
gen abs_DA=abs(DA) //取绝对值
save ${path}\盈余管理,replace
满满的都是干货啊,还在等什么,打赏的小按钮在向你招手呢!
以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。
应广大粉丝要求,爬虫俱乐部的推文公众号打赏功能可以开发票啦,累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~
文字编辑:高娜娜
技术总编:刘贝贝
往期推文推荐:
7.一言不合就用stata写邮件(Outlook/Foxmail)
9.I have a Stata, I have a python
10.I have a Stata, I have a Python之二——pdf转word
关于我们
微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。
此外,欢迎大家踊跃投稿,介绍一些关于stata的数据处理和分析技巧。
投稿邮箱:statatraining@163.com
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿”+“推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。
欢迎关注爬虫俱乐部
微信扫一扫
关注该公众号