本文主要是介绍2021年A题泰迪杯国家级二等奖——上市公司财务数据分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
需要完整代码和论文私信我
上市公司财务数据分析
摘要
近年来国内财务造假案件频发,给投资者带来了难以估量的经济损失,也给资本市场的健康发展带来严重的负面影响,如何快速准确的识别出财务造假的公司已引起投资者、审计机构以及政府机关的极大关注。
针对问题1,通过对AdaBoost、SVM、Logistic、决策树、随机森林、贝叶斯六种机器学习算法的评价指标AUC进行比较,得出随机森林模型最为适合本次实验的特征数据提取。通过对随机森林参数的调优,最后输出按照特征重要型排名的特征集,我们挑选出排名前18的重要特征数据作为问题1中该行业与财务数据造假相关的数据指标。根据各行业的重要特征数据,进而分析比较不同行业上市公司数据指标的异同。
针对问题2,根据问题1中筛选出来的特征因子构建预测模型。根据各种模型的实验对比,本文选择了最优的随机森林模型构建预测模型。随机森林模型在测试集上的AUC得分为88%,高于其他的分类模型,可见该模型较为稳定。利用随机森林模型对制造业第6年财务数据造假的上市公司进行预测,预测结果:在2344个待预测数据当中,有31个数据存在财务数据造假的可能。
针对问题3,由于部分行业不存在该行业财务数据造假的案例,不能使用随机森林模型进行数据分类训练及预测,所以对于该部分行业我们默认该行业全部财务数据都不存在数据造假的情况。我们只对存在财务数据造假的行业使用本文最优的随机森林模型进行分类训练及拟合,通过使用拟合好的随机森林模型,对其他行业的第6年财务数据进行预测。对于其他行业可预测分类的总数据有1347条,得到16条数据存在财务数据造假的可能。
本文利用机器学习算法,根据提供的各行业财务数据,对比多种分类算法后选择拟合效果最好的随机森林预测模型,该实验结果具有较大的参考价值和现实意义。
关键词:数据挖掘、机器学习、AUC指标、模型对比、财务造假
上市公司财务数据分析
摘要
近年来国内财务造假案件频发,给投资者带来了难以估量的经济损失,也给资本市场的健康发展带来严重的负面影响,如何快速准确的识别出财务造假的公司已引起投资者、审计机构以及政府机关的极大关注。
针对问题1,通过对AdaBoost、SVM、Logistic、决策树、随机森林、贝叶斯六种机器学习算法的评价指标AUC进行比较,得出随机森林模型最为适合本次实验的特征数据提取。通过对随机森林参数的调优,最后输出按照特征重要型排名的特征集,我们挑选出排名前18的重要特征数据作为问题1中该行业与财务数据造假相关的数据指标。根据各行业的重要特征数据,进而分析比较不同行业上市公司数据指标的异同。
针对问题2,根据问题1中筛选出来的特征因子构建预测模型。根据各种模型的实验对比,本文选择了最优的随机森林模型构建预测模型。随机森林模型在测试集上的AUC得分为88%,高于其他的分类模型,可见该模型较为稳定。利用随机森林模型对制造业第6年财务数据造假的上市公司进行预测,预测结果:在2344个待预测数据当中,有31个数据存在财务数据造假的可能。
针对问题3,由于部分行业不存在该行业财务数据造假的案例,不能使用随机森林模型进行数据分类训练及预测,所以对于该部分行业我们默认该行业全部财务数据都不存在数据造假的情况。我们只对存在财务数据造假的行业使用本文最优的随机森林模型进行分类训练及拟合,通过使用拟合好的随机森林模型,对其他行业的第6年财务数据进行预测。对于其他行业可预测分类的总数据有1347条,得到16条数据存在财务数据造假的可能。
本文利用机器学习算法,根据提供的各行业财务数据,对比多种分类算法后选择拟合效果最好的随机森林预测模型,该实验结果具有较大的参考价值和现实意义。
关键词:数据挖掘、机器学习、AUC指标、模型对比、财务造假
目 录
第1章 绪论... 1
1.1问题背景.... 1
1.2问题重述.... 1
1.3本文主要工作与创新点.... 1
1.4问题研究意义.... 2
第2章 相关理论... 3
2.1财务造假相关理论介绍.... 3
2.1.1财务造假的概念.... 3
2.1.2财务造假的基本特征.... 3
2.1.3财务造假的手段.... 3
2.1.4财务造假的危害.... 4
2.2机器学习算法介绍.... 4
2.2.1 AdaBoost 4
2.2.2 SVM... 5
2.2.3 Logistic. 6
2.2.4决策树与随机森林.... 7
2.2.5朴素贝叶斯.... 8
第3章 数据预处理... 10
3.1数据处理流程图.... 10
3.2无关标签处理.... 10
3.3股票的行业分类.... 11
3.4年数据统计.... 12
3.5缺失值处理.... 14
3.6数据标准化处理.... 15
第4章 基于机器学习的问题研究... 17
4.1模型构建.... 17
4.1.1训练集、测试集划分.... 17
4.1.2模型指标的选择.... 18
4.2模型的训练与调优.... 18
4.2.1模型选择.... 18
4.2.2 AdaBoost 19
4.2.3 SVM... 20
4.2.4 Logistic. 21
4.2.5决策树与随机森林.... 22
4.2.6朴素贝叶斯.... 25
4.3最优模型.... 26
4.4基于机器学习的问题解决.... 26
4.4.1问题1:确定重要数据特征与指标.... 26
4.4.2问题2:确认第 6 年财务数据造假的制造业上市公司.... 28
4.4.3问题3:确认第 6 年财务数据造假的其他行业上市公司.... 29
第5章 总结... 31
参考文献... 32
附录... 33
财务报告是公司在某一时期的财务状况、经营成果及资本变动情况的直观体现,也是投资者和债权人在做出判断时的重要参考依据。然而,随着我国经济快速发展,证券市场的不断扩容,不同行业、不同规模的上市公司的不断增加,财务造假案件层出不穷,2020年还出现了流动性危机及信用债违约等问题。这些违规操作不仅让投资者蒙受巨大损失,而且严重扰乱了我国资本市场的运营环境。
近年来,监管部门已加大了监管力度,对于出现严重财务数据造假、丧失持续经营能力的上市公司,强制退市是唯一的选项。然而上市公司的退市必定会给投资者带来损失,因此投资者在选择投资品种时,有必要对上市公司的财务数据进行深入的分析研究。查看文献得知邹译萱[1]肖志鸿[2]等人已经在该方面进行了深入的研究
(1)根据不同的行业分类,利用22213条相关上市公司的财务数据,确定出各行业与财务数据造假相关的数据指标,并分析比较不同行业上市公司相关数据指标的异同。
(2)根据提供的22213条财务数据中属于制造业的各上市公司的财务数据,确定出第6年财务数据造假的上市公司。
(3)根据提供的22213条财务数据中其他(除制造业外)各行业上市公司的财务数据,确定出第6年财务数据造假的上市公司。
(1)对数据进行预处理。
将各行业财务数据利用数据清理、数据集成、数据变换、数据归约等方法进行数据的预处理。主要步骤包括:去除唯一属性、处理缺失值、数据标准化、特征选择、主成分分析。
(2)通过数据分析筛选出各行业与财务数据造假相关的数据指标,并分析比较不同行业上市公司相关数据指标的异同。
本文将特征工程筛选后的因子数据,根据机器学习算法随机森林算法得出特征因子的重要性为前18的因子。
(3)机器学习算法预测各行业第6年财务数据造假的上市公司。
本文对问题1中经过筛选后确定的各行业的财务数据因子,使用多种不同类型的机器学习算法分别预测各行业第6年财务数据造假的上市公司,基于AUC指标给机器学习算法的参数调优,进一步提升模型的精度。
1.4问题研究意义
近年来国内财务造假案件频发,给投资者带来了难以估量的经济损失,也给资本市场的健康发展带来严重的负面影响,如何快速准确的识别出财务造假的公司已引起投资者、审计机构以及政府机关的极大关注。作为专业投资者,研究一家上市公司的财务数据是否稳健,需要考虑相关的诸多因素。面对上市公司多年的财务数据报告,通过建立数据挖掘模型,筛选数据指标进行跟踪分析和研究,识别真伪,避免踩雷。对有可能出现财务造假问题的上市公司进行风险提示,以此为市场投资者提供投资依据,为证券监管部门提供决策参考。
第2章 相关理论
2.1.1财务造假的概念
财务造假是指公司采用各种违反国家法律、法规、制度规定的手段篡改财务报表来达到掩盖公司真实财务状况、经营成果与现金流量情况的行为。财务造假行为会使得公司财务信息失去真实性、公平性、是一种违法犯罪行为。
2.1.2财务造假的基本特征
(1)财务造假主体一般是管理层财务造假。通常是管理层的集体行为,财务层作为舞弊的核心。
(2)财务造假的客体是财务信息数据,不论目的为何,其造假的客体都是会计凭证、会计账簿、报表等,造假者提供伪造凭证,用不恰当的方式变更会计政策,最终达到伪造财务报告的数据。
(3)会计数据的造假。会计数据具有一定的不确定性,而且部分的会计政策本身存在着缺陷,有漏洞可钻。
(4)财务造假是连续的行为。这类造假行为一般来说具有年度连续造假的行为,是有系统、有步骤、有计划的行为,必然会涉及到几个会计期间。
2.1.3财务造假的手段
(1)虚增交易,调节利润。通过伪造销售合同、销售发票、发运凭证的原始单据、编制虚假代销清单等等,虚构交易,形成虚假的收入与利润。
(2)虚增资产,调节利润。虚增资产的主要形式是虚增资产挂账,对于一些没有利用价值的项目不予注销,把不能产生未来经济利润、不该计入或者不存在内容的资产计入资产。
(3)提前确认收入、虚增收入,调节利润。提前销售收入指企业为了增加利润,粉饰财务报表,违背会计准则的截止要求,将不属于当期销售的商品或劳务的收入强行放到当期。
(4)利用过渡性科目,少计负债。调整跨期费用,将一些已经发生的费用作为长期待摊费用、待处理财产损失、其他应收款等项目入账,不按照相关准则要求计入当期损益,少计负债。
(5)隐瞒或不及时披露重大事项。母子公司之间关联方交易往往利用了不公允的市场价格,高买低卖,以此来达到操作利润的目的,从而可以粉饰财务报表。
2.1.4财务造假的危害
(1)财务造假扰乱了正常运转的市场经济。财务造假使得企业的实际经营成果、财务状况被掩盖,欺骗了广大投资者,使得投资者对于国家的宏观经济形势做出了错误的判断,造成巨大的损失,严重影响了社会经济秩序的正常运作。
(2)财务造假危害广大中小投资者的利益。财务报表是中小投资者投资的依据,它是投资者了解企业经营状况的重要消息来源,财务数据的造假不仅严重损害了投资者的利益,也阻碍证券市场的健康发展。
(3)财务造假阻碍注册会计师行业的健康发展。注册会计师的行业内部竞争激烈,有的注册会计师为了生存下来不惜以财务造假的方式帮助客户修饰财务报表,以稳定客源。由此可见,注册会计师会随着财务造假的趋势而扭曲发展,这对注册会计师行业公平公正来说是极大的一种挑战。
(4)财务造假无法真实的反映盈利状况。虚假的财务数据信息会对公司的正常运营带来极大的干扰甚至是破坏。
AdaBoost是一种重要的集成学习技术,其核心思想是针对同一个训练集训练不同的弱分类器,然后把这些弱分类器集合起来,构成一个更强的最终分类器。其算法流程主要包括:
(1)首先,初始化训练数据的权值分布。每一个训练样本最开始时都被赋予相同的权值:wi=1N
,这样训练样本集的初始权值分布D1(i)
:
D1I=W1,W2,…,WN=(1N,…,1N)
(2)进行迭代t=1,…,T
(a)选取一个当前误差率最低的弱分类器h
作为第t
个基本分类器Ht
,并计算弱分类器ht:X→{-1,1}
,该弱分类器在分布Dt
上的误差为:
et=P(Htxi)≠yi=i=1NwtiI(Ht(xi)≠yi)
(b)计算该弱分类器在最终分类器中所占的权重(弱分类器权重用α
表示):
αt=12ln1-etet
(c)更新训练样本的权值分布Dt+1
:
Dt+1=Dtiexp-αtyiHtxiZT
其中Zt
为归一化常数Zt=2et(1-et)
(3)最后,按弱分类器权重αt
组合各弱分类器,即
fx=t=1TαtHt(x)
通过符号函数sign
的作用,得到一个强分类器为:
Hfinal=signfx=signt=1TαtHt(x)
2.2.2 SVM
SVM(支持向量机)是一类按监督学习方式对数据进行二元分类的广义线性分类器。给定一组训练实例,每个训练实例被标记为属于两个类别中的一个或另一个,SVM训练算法创建一个将新的实例分配给两个类别之一的模型,使其成为非概率二元线性分类器。SVM模型是将实例表示为空间中的点,这样映射就使得单独类别的实例被尽可能宽的明显的间隔分开。然后,将新的实例映射到同一空间,并基于它们落在间隔的哪一侧来预测所属类别。
训练步骤:
(1)输入两类训练样品的向量Xi,Yii=0,1,2,…,N,X∈Rn,y∈-1,1
,类号分别为ω1,ω2
。如果Xi∈ω1,则yi=-1;Xi∈ω2,则yi=1。
(2)指定核函数类型。
(3)利用二次规划方法求解目标函数式的最优解,得到最优Lagrange乘字α*。
(4)利用样本库中的一个支持向量X,代入式中,左值f(X)
为其他类别值(-1或1),可以得到偏差值b*
。
分类步骤:
(1)输入待测样品X。
(2)利用训练好的 Lagrange乘字α*
、偏差值b*
和核函数,根据式子求解判别函数 fX
。
(3)根据sgnfX
的值,输出类别。如果 sgnfX
为-1,则样品属于ω1
类;如果 sgnfX
为1,则样品属于ω2
类。
2.2.3 Logistic
Logistic回归是一种广义线性回归,在机器学习中是最常见的一种用于二分类的算法模型。Logistic回归的因变量可以是二分类的,也可以是多分类的,在实际中最为常用的是二分类的Logistic回归。Logistic回归的原理:
将输入的n
维数据 x=(x1,x2,…,xn)
,进行线性加权得到:
gx=w0+w1x1+…wnxn=wTx
Logistic回归主要用于二分类,假设得到的类别为0或者1,那么可以使用sigmod
函数处理输入数据,这个函数类似于阶跃函数且是连续型函数。
sigmod(x)
衡量的是输入数据x
归属于类别1的概率,当 x<0
时,sigmod(x)<0.5
,可以认为x
归属于类别0的概率较大,当x>0
时,sigmodx>0.5
,可以认为 x
归属于类别1的概率较大。将线性加权得到的 g(x)
作为sigmod
函数的输入,得到:
fx=11+e-g(x)=σgx=σ(wTx)
(2)
这样就得到了输入数据 x
最终属于类别1的概率。
我们先考虑使用常规的均方差作为损失函数,这时的损失函数为:
Lw=12(y-f(x))2=12(y-σ(wTx))2
采用梯度下降的方法对 w
进行更新,那么需要将损失函数对 w
求导得到:
∂L∂w=(y-σ(wTx))σ'(wTx)x
其中梯度更新中包含了 σ'(wTx)
,而通过sigmod
函数可以发现,当 σ(wTx)
位于0或者1附近时,导数值几乎趋近于0,梯度收敛速度极慢。
因而在这种情况下我们可以考虑使用交叉熵作为损失函数。将g(x)
作为输入数据x
的输出,对(2)式做个简单的变换:
lnf(x)1-f(x)=wTx
将f(x)
视为类后验概率估计P(y=1|x)
,则上式可以重写为:
lnP(y=1|x)P(y=0|x)=wTx
那么从而可以得到:
Py=1x=f(x)
Py=0x=1-f(x)
上式可以合并为:
Pyx,w=[f(x)]y∙[1-f(x)]1-y
然后,输入数据求出使这一似然函数的值最大的参数估计。
2.2.4决策树与随机森林
决策树是一种常见的用于解决分类与回归两类问题的机器学习方法。相比贝叶斯算法,决策树的优势在于其易于理解和实现,且构造过程不需要任何领域知识或参数设置。在实际应用中,对于探测式的知识发现,决策树更加适用。决策树通常包括三个步骤:特征选择、决策树的生成、决策树的修剪。
在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。
随机森林根据下列算法而建造每棵树:
(1)用N来表示训练样本的个数,M表示特征数目。
(2)输入特征数目m,用于确定决策树上一个节点的决策结果,其中m远小于M。
(3)从N个训练样本中以有放回抽样的方式,取样N次,形成一个训练集,并用未抽到的样本作预测,评估其误差。
(4)对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的。根据这m个特征,计算其最佳的分裂方式。
(5)每棵树都会完整成长而不会剪枝。
相比较于其他的分类器,随机森林具有产生高精准度的分类器、学习过程快速、可以有效的平衡误差等优点。
2.2.5朴素贝叶斯
朴素贝叶斯与大多数机器学习算法不同,如:决策树,逻辑回归,支持向量机等都是判别方法,也就是直接学习出特征输出Y
和特征X
之间的关系,通过一个决策函数Y=f(x)
或者条件分布P(Y|X)
。朴素贝叶斯是一种生成方法,能够找到特征输出Y
和特征X
的联合分布P(X,Y)
,然后用PYX=P(X,Y)/P(X)
得出。贝叶斯的基本思想可以概括为:先验概率+数据=后验概率。贝叶斯的实现步骤:
假设有m个样本数据:
x11,x21,…xn1,y1,x12,x22,…xn2,y2,…x1m,x2m,…xnm,yn
每一个样本特征X
有n
个特征,标签Y
有K
个类别,定义为C1,C2,…Ck
从已有的样本,我们很容易得到先验概率分布:
P(Y=Ck)(k=1…k)
因条件概率分布有:
PX=xY=Ck=P(X1=x1,X2=x2,…Xn=xn|Y=Ck)
我们可以用贝叶斯公式得到X
,Y
的联合分布P(X,Y)
了,联合分布P(X,Y)
定义为:
PX,Y=Ck=PY=CkPX=xY=Ck=P(Y=Ck)P(X1=x1,X2=x2,…Xn=xn|Y=CK)
从前面可以看出P(Y=Ck)
很容易得到,只需统计以下各类被占的比例(频数)就能求得。
第3章 数据预处理
3.1数据处理流程图
本文的数据处理流程图如图3-1所示:
图3-1 数据处理流程图
3.2无关标签处理
对于提供的全部行业的财务数据,我们直接去除掉了ACT_PUBTIME、PUBLISH_DATE、END_DATE_REP、END_DATE、REPORT_TYPE、FISCAL_PERIOD、MERGED_FLAG、ACCOUTING_STANDARDS和CURRENCY_CD这九个与‘是否在当年造假’无关的数据指标,这些字段分别对应的解释是实际披露时间、发布时间、报告截止日期、截止日期、报告类型、会计区间、合并标志:1-合并,2-母公司、会计准则和货币代码。其中该次删除的指标与总体指标的占比如图3-2所示:
图3-2 无关指标的比例
对于部分数据缺失严重的标签,我们也直接选择删去,但是我们考虑到部分数据的缺失情况是可能和该股票所在的行业有关,所以我们首先对股票进行行业区分,再进行相同行业财务数据的缺失值处理。
3.3股票的行业分类
根据提供的股票所属行业类别的数据中,我们可以知道在4163支股票中,一共有19种类型的行业,其中属于制造业的股票最多,有2667支股票。对总行业的股票而言,制造业的占比巨大,如图3-3所示:
图3-3 制造业的占比
其中,制造业有2667支股票,信息传输、软件和信息技术服务业有343支股票,批发和零售业有170支股票,金融业有121支股票,房地产业有120支股票,电力、热力、燃气及水生产和供应业有118支股票,交通运输、仓储和邮政业有107支股票,建筑业有98支股票,采矿业有77支股票,水利、环境和公共设施管理业有71支股票,科学研究和技术服务业有64支股票,文化、体育和娱乐业有59支股票,租赁和商务服务业有58支股票,农、林、牧、渔业有42支股票,综合有16支股票,卫生和社会工作有12支股票,住宿和餐饮业有10支股票,教育有9支股票,居民服务、修理和其他服务业有1支股票。各个行业的股票数目对比如图3-4所示:
图3-4 各行业的股票数
3.4年数据统计
根据提供的22213条所有行业的财务数据可知,每支股票都有对应的1~5年或者1~6年的数据,并且除了第七年之外,每一年的数据都给出了当年是否存在造假标签。我们对各个行业股票的年数据进行了一个统计,如表3-1所示:
表3-1 各行业股票的年数据统计
行业 | 已确认当年财务数据是否造假的数量 | 待确定当年财务数据是否造假的数量 | 每个行业的总年数据的数量 |
制造业 | 9943 | 2344 | 12287 |
信息传输、软件和信息技术服务业 | 1275 | 301 | 1576 |
批发和零售业 | 748 | 158 | 906 |
金融业 | 467 | 106 | 573 |
房地产业 | 486 | 100 | 586 |
电力、热力、燃气及水生产和供应业 | 494 | 103 | 597 |
交通运输、仓储和邮政业 | 444 | 97 | 541 |
建筑业 | 380 | 80 | 460 |
采矿业 | 342 | 70 | 412 |
水利、环境和公共设施管理业 | 245 | 62 | 307 |
科学研究和技术服务业 | 209 | 55 | 264 |
文化、体育和娱乐业 | 260 | 55 | 315 |
租赁和商务服务业 | 241 | 52 | 293 |
农、林、牧、渔业 | 189 | 39 | 228 |
综合 | 75 | 15 | 90 |
卫生和社会工作 | 54 | 11 | 65 |
住宿和餐饮业 | 46 | 10 | 56 |
教育 | 40 | 8 | 48 |
居民服务、修理和其他服务业 | 4 | 1 | 5 |
我们可以发现,已经确定当年是否存在财务造假的总年数据的数量是15942个,需要我们确认第七年是否存在财务数据造假的数量是3667个,相应占比如图3-5所示:
图3-5 财务数据的统计
3.5缺失值处理
根据我们已经进行行业分类的数据,对其进行缺失值处理。因为不同的行业对应标签的数据也可能会不一样,所以我们的缺失值处理要在区分股票行业之后,在相同行业的数据之间进行处理,这样可以提高填充数据的可靠性。
当某个数据标签它的数据缺失情况达到了50%以上的我们直接选择删除该列数据。对于某支股票某年的数据而言,若某支股票该年的数据缺失值情况也达到了50%以上,我们也对其选择删除。因为这些数据的缺失值已经超过了本身全部数据的一半,无论采取各种的缺失值填充方法都会有很大的误差,会直接影响到我们的模型训练以及预测。所以直接选择舍去该部分数据。例如对于制造业行业的标签数据,SETT_PROV、LOAN_TO_OTH_BANK_FI等标签,数据已经严重缺失,我们选择直接删去,并且该部分标签占据总体标签的比例是较小的。其他行业的标签数据处理也采取同样的方法,此处不一一列举。对于数据列表里面的“0”数据,我们将其删除,作为一个缺失值处理。
对于剩下的缺失值填充,我们可有以下多种方法选择。
(1)均值填充:
将信息表中的属性分为数值属性和非数值属性来分别进行处理。如果空值是数值型的,就根据该属性在其他所有对象的取值的平均值来填充该缺失的属性值;类似的还有中数和众数填充等。
(2)人工填写:
由于最了解数据的还是用户自己,因此这个方法产生数据偏离最小,可能是填充效果最好的一种。然而一般来说,该方法很费时,当数据规模很大、空值很多的时候,该方法是不可行的。
(3)回归:
基于完整的数据集,建立回归方程(模型)。对于包含空值的对象,将已知属性值代入方程来估计未知属性值,以此估计值来进行填充。当变量不是线性相关或预测变量高度相关时会导致有偏差的估计。
(4)聚类填充:
最为典型的代表是K最近距离邻法,先根据欧式距离或相关分析来确定距离具有缺失数据样本最近的K个样本,将这K个值加权平均来估计该样本的缺失数据。
(5)期望最大化算法:
期望最大化算法是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐性变量。
在本文中,我们采取的缺失值处理方法是当某个数据标签的数据缺失情况低于50%时,我们选择使用均值填充方法,是期望最大化算法对缺失的数据进行填充。我们使用SPSS数据分析软件当中的期望最大化算法对我们数据的缺失值进行填充,因为每个数据都有自己的独特性,为了得到我们期望最大的缺失值,本次我们不采取均值填充。对于每一个行业我们都采取相同的数据处理方法
3.6数据标准化处理
对于已经缺失值处理过的数据,还不可以直接放入我们的机器学习模型当中去训练与预测,我们还需要对其进行数据标准化处理。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。数据标准化的方法有许多中,其中常用的有“最小-最大标准化”、“Z-score标准化”等
本文对于数据的标准化是通过SPSS数据分析软件进行处理,其中我们对于数据标准化的处理方法使用的是最小-最大标准化方法。Min-Max
标准化方法是对原始数据进行线性变换。我们设MinA
和MaxA
分别为属性A的最小值和最大值,将A的一个原始值x
通过Min-Max
标准化映射成在区间[0,1]中的值y
。首先对于序列x1,x2,…,xn
进行转换:
yi=xi-min{xj}1≤j≤nmaxxj1≤j≤n-min{xj}1≤j≤n
则新的序列y1,y2,…,yn∈[0,1]
且无纲量化,达到了数据标准化的处理。
第4章 基于机器学习的问题研究
4.1模型构建
4.1.1训练集、测试集划分
本文主要对制造业行业进行研究,不对其他的行业一一展开,但是对于其他行业的研究与制造业相同。
对于制造业而言,给出已经确认该股票在当年是否存在财务信息造假的的数据我们选取了9943条,其中已经确认该股票在当年存在行业造假的数据有80条,不存在财务数据造假的数据有9863条,具体如表4-1所示:
表4-1 制造业总财务数据分析
行业 | 当年不存在财务数据造假 | 当年存在财务数据造假 | 总数据 |
制造业 | 9863 | 80 | 9943 |
由上表我们可知,对于财务数据是否造假的数据比例相差太多,会出现们训练于测试的样本不对称问题。如图4-1所示:
图4-1 制造业是否造假的财务数据对比图
对于数据的测试集和训练集的划分,我们采用机器学习模型的数据划分方法,选取全部数据的25%作为一个测试集合。
由于数据样本的不对称问题,所以我们不能直接使用机器学习模型的准确率作为模型的评价, 我们需要选取一个指标来评估我们模型的好坏
4.1.2模型指标的选择
对于机器学习模型,我们有许多种方法去评价,例如使用最多的指标是准确率(Accuracy),还有ROC曲线的曲线下面积等。
准确率可以在某些场合,从某种意义上判断一个分类器是否有效,但它并不总是能有效的评价一个分类器的工作,例如对于数据的正负样本不均衡的情况下,准确率(Accuracy)作为评判标注已经不合适了。在本文中,每个行业的正负样本都不均衡,属于样本不对称的情况,所以本文不选取用准确率(Accuracy)作为我们模型的评价指标。
然而对于ROC曲线的曲线下面积(此处以下本文使用AUC表示),AUC是一个模型评价指标,但是只能用于二分类模型的评价。当测试集中的正负样本分布发生变化了,ROC曲线可以保持不变。在实际的数据集中经常会出现类不平衡现象,即负样本比正样本多很多或者相反,呈现出数据样本不对称的问题,例如本文的数据,我们可以选择使用AUC来评价本文的模型,因为AUC能很好描述模型整体性能的好坏,从一定程度上讲,它可以描述预测结果中正例排在负例前面的概率,不会受到正负样本不平衡的影响。AUC越高,越接近1,则该模型方法越好。当AUC大于80%的时候,可以接受该模型。
4.2模型的训练与调优
4.2.1模型选择
徐延[4]和钱苹[5]的财务造假识别模型进行了深入的研究,所以在本文中,我们使用的机器学习模型有AdaBoost、SVM、Logistic回归、决策树与随机森林、朴素贝叶斯6种机器学习分类算法。我们选取6种机器学习算法模型对本文的数据进行训练以及测试。通过AUC来评价该模型对于本文数据挖掘的合适性,来选取对于本文最优的机器学习模型。选出最优机器学习模型,使用该模型输出对于模型影响比较重要的数据标签,由此问题1得到了解决。
本文使用的全部机器学习模型都是使用Anaconda的jupyter notebook工具实现,对于参数的调优我们选择人工的微调和网格搜索法进行模型参数的选择。
4.2.2 AdaBoost
对于该模型的实现,我们使用的是AdaBoostClassifier()
函数,它的参数主要有base_estimator、algorithm、loss 等。其中base_estimator是用于指定提升树算法的分类器,默认是分类决策树,algorithm是用于指定该分类器的算法,默认为'SAMME.R',loss是指定提升树的损失函数,可以是'linear',也可以是'square'等。经过多次人工调参,对于本文数据训练的模型参数我们全部选择默认,得到最高的AUC,即第一次得到的结果,三次调优结果如表4-2和图4-2所示:
表4-1 调参数据对比
序号 | AUC |
1 | 81% |
2 | 72% |
3 | 79.6% |
图4-2 AUC数据显示图
由于本次模型调优的最高AUC超过80%,我们使用AdaBoost输出对该模型影响比较大的18个数据标签,如表4-3所示:
表4-3 AdaBoost模型输出的影响比较大的18个数据标签
字段名 | 含义 |
MINORITY_GAIN | 少数股东损益 |
ADVANCE_RECEIPTS | 预收款项 |
OTH_PAYABLE | 其他应付款 |
PROC_SELL_INVEST | 收回投资收到的现金 |
C_PAID_FOR_DEBTS | 偿还债务支付的现金 |
TRADING_FL | 交易性金融负债 |
OTH_NCL | 其他非流动负债 |
PAID_IN_CAPITAL | 实收资本(或股本) |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
SURPLUS_RESER | 盈余公积 |
BASIC_EPS | 基本每股收益 |
REVENUE | 营业收入 |
DEFER_REVENUE | 递延收益 |
A_J_INVEST_INCOME | 其中:对联营企业和合营企业的投资收益 |
DILUTED_EPS | 稀释每股收益 |
CAPITAL_RESER | 资本公积 |
C_INF_FR_FINAN_A | 筹资活动现金流入小计 |
RETAINED_EARNINGS | 未分配利润 |
4.2.3 SVM
对于SVM模型的实现,我们使用的是SVC()函数,其函数的参数主要有C、kernel、gamma、class_weight等。其中C:指定该函数中松弛因子的惩罚系数值,默认为1。Kernel:用于指定SVM模型的核函数,例如linear,poly,rbf等,其中linear表示的是线性核函数。gamma是指定多项式核函数或径向基核函数或Sigmoid核函数中的r参数值。class_weight是用于指定因变量类别的权重。本次模型调优使用的是网格搜索法,其中kernel的预选值是rbf、linear、poly和sigmoid,而C的预选值0.1、0.5、1、2、5。得到最佳C的参数是5,最佳kernel的参数是rbf,即选择非线性的核函数,即径向基核函数。得到的AUC以及参数选择如表4-4所示:
表4-4 最优参数与AUC
其他参数 | Kernel参数 | C参数 | AUC |
默认 | rbf | 5 | 76.3% |
由于该模型的AUC较低,低于80%,我们不对SVM进行ROC曲线展示以及数据标签的筛选。
4.2.4 Logistic
参考吕晨[6]的研究可知,我们可以选取多种模型对财务数据造假进行预测。此处我们可以选择使用Logistic模型对财务数据造假进行研究。对于Logistic模型,我们使用的函数是LogisticRegression()函数,其主要参数是tol、fit_intercept、max_iter等。Tol是指定模型跌倒收敛的阈值。fit_intercept是否拟合模型的截距项,默认为True,属于bool类型参数。max_iter是指定模型求解过程中的最大迭代次数,默认是100次。该模型我们使用人工手动调参数,并且也使用KS曲线对模型的好坏做评估。KS用于模型风险区分能力进行评估,指标衡量的是好坏样本累计分部之间的差值,KS指标越大,那么模型的风险区分能力越强。经过多次参数调整,当参数都属于默认值时AUC最大,以下为该模型的三次调优过程,第一次全部参数属于默认值,如表4-5所示:
表4-5 调优过程的AUC对比
序号 | AUC |
1 | 79% |
2 | 76.4% |
3 | 77% |
其中KS曲线如图4-3:
图4-3 KS曲线图
我们可以看到KS的值为0.5,大于0.4,该模型属于基本可以接受的模型,但是,我们发现其ROC曲线(如图4-4),AUC最高为79%,还未达到80%,所以我们也不考虑使用该模型。
图4-4 运用Logistic模型时的ROC曲线
4.2.5决策树与随机森林
对于决策树的实现,我们使用DecisionTreeClassifier()函数,该函数的主要参数有max_leaf_nodes、class_weight等。max_leaf_nodes是用于指定最大的叶节点个数,默认为None。class_weight是指定因变量中类别之间的权重,默认为None。对于该模型,我们使用网格搜索法对参数进行选择。max_depth的预选值是2、3、4、5、6,min_samples_split的预选值是2、4、6、8,min_samples_leaf的预选值是2、4、8、10、12。最终max_depth选取5,min_samples_split选择8,min_samples_leaf选择2时,我们的模型达到最优,此时的AUC如表4-6所示:
表4-6 最优参数与AUC
其他参数 | max_depth | min_samples_split | min_samples_leaf | AUC |
默认 | 5 | 8 | 2 | 79% |
此时的ROC曲线如图4-5所示,我们发现AUC为79%,为达到80%,我们不选择该模型。
图4-5 运用决策树模型时的ROC曲线
此时,我们将使用随机森林对数据样本进行训练以及预测,使用AUC来评估我们选取的随机森林模型。我们使用RandomForestClassifier()函数进行实现随机森林,其主要参数为n_estimators、max_depth、min_samples_leaf、max_leaf_nodes等。n_estimators是指定随机森林所包含的决策树个数,max_depth是指定每棵决策树的最大深度,min_samples_leaf是指定每棵决策树叶节点的最小样本量,max_leaf_nodes是指定每棵决策树最大的叶节点个数。我们对其进行网格搜索法,得到最佳的参数是n_estimators选择100,max_depth选择6,min_samples_leaf选择3,各种参数以及AUC如表4-7所示:
表4-7 最优参数与AUC
其他参数 | n_estimators | max_depth | min_samples_leaf | AUC |
默认 | 100 | 6 | 3 | 88% |
图4-6 运用随机森林时的ROC曲线
根据得到的AUC为88%,表明该模型有较好的拟合结果,并且真实性高,所以我们输出在该随机森林模型中重要性比较大的数据标签,选择18个重要性比较高的数据标签,如表4-8所示:
表4-8 随机森林模型输出的影响比较大的18个数据标签
字段名 | 含义 |
MINORITY_GAIN | 少数股东损益 |
ADVANCE_RECEIPTS | 预收款项 |
OTH_PAYABLE | 其他应付款 |
PROC_SELL_INVEST | 收回投资收到的现金 |
C_PAID_FOR_DEBTS | 偿还债务支付的现金 |
TRADING_FL | 交易性金融负债 |
OTH_NCL | 其他非流动负债 |
PAID_IN_CAPITAL | 实收资本(或股本) |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
SURPLUS_RESER | 盈余公积 |
BASIC_EPS | 基本每股收益 |
REVENUE | 营业收入 |
DEFER_REVENUE | 递延收益 |
A_J_INVEST_INCOME | 其中:对联营企业和合营企业的投资收益 |
DILUTED_EPS | 稀释每股收益 |
CAPITAL_RESER | 资本公积 |
C_INF_FR_FINAN_A | 筹资活动现金流入小计 |
RETAINED_EARNINGS | 未分配利润 |
4.2.6朴素贝叶斯
对于本文使用的贝叶斯决策,我们使用的是高斯朴素贝叶斯分类,其函数为GaussianNB(),其主要参数为alpha、class_prior等,alpha是用于指定平滑系数a的值,class_prior是用于人工指定各类别的先验概率。由于该模型参数较少,我们采用人工调参的方法,下面为三次调参的结果和对应的AUC,其中第一次的调参是全部参数选择默认。由于各种调参之后的AUC都较低,此处不展示该模型的具体选择参数以及ROC曲线,直接舍弃该模型。
表4-9 调优过程的AUC对比
序号 | AUC |
1 | 65% |
2 | 54% |
3 | 43% |
4.3最优模型
对于上述的6个机器学习模型对于制造业数据的训练以及测试的结果和评估,如图4-7所示:
图4-7 6种模型最优AUC对比图
由图4-7可知,随机森林的AUC最高,对本文数据的拟合效果最好,所以经过6种模型的比较,我们选择随机森林算法求出对模型影响比较重的数据标签。所以本文对于各行业数据标签影响比较大的计算和第6年财务数据造假的预测都使用随机森林模型进行计算和预测。
4.4基于机器学习的问题解决
4.4.1问题1:确定重要数据特征与指标
对于制造业行业,我们选择了18个特征数据,如表4-10所示:
表4-10 制造业的18个数据指标
字段名 | 含义 |
BASIC_EPS | 基本每股收益 |
DILUTED_EPS | 稀释每股收益 |
TRADING_FL | 交易性金融负债 |
RETAINED_EARNINGS | 未分配利润 |
INT_PAYABLE | 应付利息 |
INT_RECEIV | 应收利息 |
MINORITY_GAIN | 少数股东损益 |
OTH_NCL | 其他非流动负债 |
PROC_SELL_INVEST | 收回投资收到的现金 |
C_PAID_FOR_DEBTS | 偿还债务支付的现金 |
COMPR_INC_ATTR_M_S | 归属于少数股东的综合收益总额 |
C_PAID_FOR_TAXES | 支付的各项税费 |
DIV_PROF_SUBS_MINO_S OTH_CA | 其中:子公司支付给少数股东的股利、利润 其他流动资产 |
OTH_CA | 其他流动资产 |
LT_PAYABLE | 长期应付款 |
PUR_FIX_ASSETS_OTH | 购建固定资产、无形资产和其他长期资产支付的现金 |
LT_EQUITY_INVEST | 长期股权投资 |
OTH_PAYABLE | 其他应付款 |
通过多次的随机森林模型训练及预测结果对比,我们发现,对于上述的18个特征标签,当其特征重要性累加超过66%时,该财务数据有极大可能存在财务造假。所以我们使用上述18个标签作为重要特征变量,以它们的特征重要性累加值66%作为该行业财务数据造假的指标。
对于其他的行业,也与制造业行业一样使用同样的方法得出影响比较大的18个数据标签,从而求出特征重要性累加值作为该行业的财务数据造假的指标。下表为基于分行业进行多次模型训练及预测,得到各个行业的指标,如表4-11所示:
表4-11 各行业的特征数据和指标
行业 | 重要特征标签个数 | 指标 |
制造业 | 18 | 66% |
信息传输、软件和信息技术服务业 | 18 | 63% |
批发和零售业 | 18 | 67% |
金融业 | 18 | 55% |
房地产业 | 18 | 51% |
电力、热力、燃气及水生产和供应业 | 18 | 56% |
交通运输、仓储和邮政业 | 18 | 51% |
建筑业 | 18 | 44% |
采矿业 | 18 | 41% |
水利、环境和公共设施管理业 | 18 | 47% |
科学研究和技术服务业 | 18 | 39% |
文化、体育和娱乐业 | 18 | 32% |
农、林、牧、渔业 | 18 | 39% |
综合 | 18 | 37% |
教育 | 18 | 31% |
由于数据存在比较大的样本不对称问题,可能会有一定的程度影响到我们选择的指标。也存在部分行业并没有财务数据造假的案例,我们的随机森林模型对其训练以及预测得到的结果无意义,所以我们不对该部分行业进行分析,将这四个行业的数据一律作为财务数据不存在造假处理。
对于其他行业的前18个重要特征标签已在附录给出,不在此处一一展示。
4.4.2问题2:确认第 6 年财务数据造假的制造业上市公司
在本题,我们使用上述对于本文最优的随机森林模型对制造业行业进行第6年财务数据造假的预测。我们对已经进行数据处理的制造业第6年的数据,使用已经在上述部分拟合的随机森林模型进行预测,在2344个待预测数据当中,我们预测到了31个数据属于财务造假行为,2313个数据不存在财务数据造假。如图4-8所示,其中0表示的是不存在财务数据造假,1表示财务数据造假。具体存在财务数据造假的股票代码已在附录给出。
图4-8 制造业第6年财务数据情况
4.4.3问题3:确认第 6 年财务数据造假的其他行业上市公司
本题的对象公司是除了制造业之外的行业,但是我们使用的方法和问题2一致,我们使用本文最优的随机森林模型对其他行业数据进行拟合,以及预测其他行业的第6年财务造假的上市公司。若该行业并无行业的财务数据造假的案例,我们无法使用模型进行预测分类,所以默认该行业的全部数据不存在财务造假。对于其他行业可预测分类的总数据有1347条,我们分别对其使用随机森林模型进行预测,得到16条数据存在财务数据造假的可能,如图4-9所示,具体的股票代码已在附录给出。
图4-9 其他行业第6年财务数据情况
第5章 总结
本文通过结合财务数据造假的实际数据与机器学习算法进行建模预测,主要是通过构建精度较高的分类模型预测第6年财务数据造假的上市公司。最终得出以下结论:
一、本文将各行业的财务数据按照不同行业进行分类,通过数据预处理的方法筛选出特征因子,根据一定的比例行程构建模型的训练集。通过对模型训练集AUC的计算,模型得到了较好的拟合能力。
二、对于问题一,我们选取了拟合效果最好的随机森林模型计算出数据标签的特征重要性前18个因子,并且若该部分因子的特征重要性累加和达到了某个值,我们把该值作为财务数据造假的指标,例如当制造业的前18个特征因子的特征重要性达到了66%,则该数据存在很大概率会出现财务数据造假。
三、对于问题二与问题三,我们都选取拟合效果最好的随机森林模型算法对数据进行拟合,并且预测各个行业第6年存在财务数据造假的上市公司。
参考文献
[1] 邹译萱. 数据挖掘在上市公司财务造假识别中的应用研究[D].山东大学,2018.
[2]胡伟. 基于数据挖掘的上市公司财务数据分析系统的设计[D].苏州大学,2014.
[3]肖志鸿. 数据挖掘在上市公司财务数据分析上的应用[D].华中科技大学,2016.
[4] 徐延. 基于数据挖掘的公司财务造假识别模型研究[D].南京大学,2019.
[5]钱苹,罗玫.中国上市公司财务造假预测模型[J].会计研究,2015(07):18-25+96.
[6]吕晨,程建华.基于Logistic模型的上市公司财务造假识别研究[J].中原工学院学报,2020,31(05):72-77+85.
附录
表1 采矿业的18个数据指标
字段名 | 含义 |
DISP_FIX_ASSETS_OTH | 处置固定资产、无形资产和其他长期资产收回的现金净额 |
TAXES_PAYABLE | 应交税费 |
C_FR_OTH_INVEST_A | 收到其他与投资活动有关的现金 |
LT_AMOR_EXP_TA | 长期待摊费用/总资产 |
ROE_A | 净资产收益率(平均) |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
ADV_R_R | 预收款项/营业收入 |
T_RE | 留存收益 |
ST_BORR | 短期借款 |
OTH_NCA | 其他非流动资产 |
SELL_EXP | 销售费用 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
LT_AMOR_EXP | 长期待摊费用 |
N_INCOME | 净利润(净亏损以“-”号填列) |
CFSGS_R | 销售商品提供劳务收到的现金/营业收入 |
DILUTED_EPS | 稀释每股收益 |
ROE_W | 净资产收益率(加权平均) |
FCFF | 企业自由现金流量 |
表2 电力、热力、燃气及水生产和供应业的18个数据指标
字段名 | 含义 |
RETAINED_EARNINGS | 未分配利润 |
C_INF_FR_INVEST_A | 投资活动现金流入小计 |
NCL_WC | 非流动负债与营运资金比率 |
COMPR_INC_ATTR_P | 归属于母公司所有者(或股东)的综合收益总额 |
AR_R | 应收账款/营业收入 |
DAYS_AR | 应收账款周转天数 |
AR_TA | 应收账款/总资产 |
NOPERATE_EXP | 营业外支出 |
C_PAID_INVEST | 投资支付的现金 |
REV_PS | 每股营业收入 |
T_COMPR_INCOME | 综合收益总额 |
OTH_COMPRE_INCOME | 其他综合收益 |
ASSETS_IMPAIR_LOSS | 资产减值损失 |
ADVANCE_RECEIPTS | 预收款项 |
C_OUTF_FR_INVEST_A | 投资活动现金流出小计 |
SELL_EXP_TR | 销售费用/营业总收入 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
C_FR_OTH_INVEST_A | 收到其他与投资活动有关的现金 |
表3 信息传输、软件和信息技术服务业的18个数据指标
字段名 | 含义 |
IT_TP | 所得税/利润总额 |
INT_FREE_NCL | 无息非流动负债 |
DILUTED_EPS | 稀释每股收益 |
OPER_PROFIT_YOY | 营业利润同比增长 |
NCL_TA | 非流动负债/负债合计 |
ADVANCE_RECEIPTS | 预收款项 |
OPERATE_PROFIT | 营业利润(亏损以“-”号填列) |
TRE_TA | 留存收益/总资产 |
C_PAID_OTH_INVEST_A | 支付其他与投资活动有关的现金 |
DEFER_TAX_ASSETS | 递延所得税资产 |
T_COMPR_INCOME | 综合收益总额 |
ROE_CUT_W | 净资产收益率 |
INT_FREE_CL | 无息流动负债 |
T_COGS | 营业总成本 |
CL_TA | 流动负债/负债合计 |
C_TA | 货币资金/总资产 |
CASH_C_EQUIV | 货币资金 |
C_FR_OTH_OPERATE_A | 收到其他与经营活动有关的现金 |
表4 批发和零售业的18个数据指标
字段名 | 含义 |
SELL_EXP_TR | 销售费用/营业总收入 |
DILUTED_EPS | 稀释每股收益 |
NCL_WC | 非流动负债与营运资金比率 |
REV_PS | 每股营业收入 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
ROE_CUT_W | 净资产收益率 |
T_COMPR_INCOME | 综合收益总额 |
OTH_NCL | 其他非流动负债 |
N_INCOME | 净利润(净亏损以“-”号填列) |
NOPERATE_EXP | 营业外支出 |
RETAINED_EARNINGS | 未分配利润 |
ADV_R_R | 预收款项/营业收入 |
TRE_TA | 留存收益/总资产 |
FINAN_EXP | 财务费用 |
LT_AMOR_EXP_TA | 长期待摊费用/总资产 |
DIV_PROF_SUBS_MINO_S OTH_CA | 其中:子公司支付给少数股东的股利、利润 其他流动资产 |
C_PAID_FOR_DEBTS | 偿还债务支付的现金 |
PROC_SELL_INVEST | 收回投资收到的现金 |
表5 金融业的18个数据指标
字段名 | 含义 |
BASIC_EPS | 基本每股收益 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
INT_PAYABLE | 应付利息 |
INT_RECEIV | 应收利息 |
DILUTED_EPS | 稀释每股收益 |
NCL_TA | 非流动负债/负债合计 |
ROE_A | 净资产收益率(平均) |
CFSGS_R | 销售商品提供劳务收到的现金/营业收入 |
LT_AMOR_EXP | 长期待摊费用 |
RETAINED_EARNINGS | 未分配利润 |
FINAN_EXP | 财务费用 |
LT_PAYABLE | 长期应付款 |
SELL_EXP_TR | 销售费用/营业总收入 |
N_INCOME | 净利润(净亏损以“-”号填列) |
C_PAID_FOR_TAXES | 支付的各项税费 |
COMPR_INC_ATTR_P | 归属于母公司所有者(或股东)的综合收益总额 |
OTH_CA | 其他流动资产 |
OTH_PAYABLE | 其他应付款 |
表6 房地产业的18个数据指标
字段名 | 含义 |
NCL_WC | 非流动负债与营运资金比率 |
IT_TP | 所得税/利润总额 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
CFSGS_R | 销售商品提供劳务收到的现金/营业收入 |
DILUTED_EPS | 稀释每股收益 |
OTH_NCL | 其他非流动负债 |
PAID_IN_CAPITAL | 实收资本(或股本) |
DEFER_TAX_ASSETS | 递延所得税资产 |
TRE_TA | 留存收益/总资产 |
T_COGS | 营业总成本 |
FCFF | 企业自由现金流量 |
SELL_EXP_TR | 销售费用/营业总收入 |
T_COMPR_INCOME | 综合收益总额 |
CAPITAL_RESER C_INF_FR_OPERATE_A | 资本公积 经营活动现金流入小计 |
RETAINED_EARNINGS | 未分配利润 |
TAXES_PAYABLE | 应交税费 |
GOING_CONCERN_NI | 持续经营净利润 |
ADV_R_R | 预收款项/营业收入 |
T_RE | 留存收益 |
表7 交通运输、仓储和邮政业的18个数据指标
字段名 | 含义 |
ROE_W | 净资产收益率(加权平均) |
T_COGS | 营业总成本 |
INT_FREE_CL | 无息流动负债 |
RETAINED_EARNINGS | 未分配利润 |
NCL_WC | 非流动负债与营运资金比率 |
C_OUTF_FR_INVEST_A | 投资活动现金流出小计 |
BASIC_EPS | 基本每股收益 |
ADVANCE_RECEIPTS | 预收款项 |
FCFF | 企业自由现金流量 |
INT_FREE_NCL | 无息非流动负债 |
TRADING_FL | 交易性金融负债 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
C_PAID_FOR_DEBTS | 偿还债务支付的现金 |
DEFER_TAX_ASSETS | 递延所得税资产 |
AR_R | 应收账款/营业收入 |
DAYS_AR | 应收账款周转天数 |
AR_TA | 应收账款/总资产 |
OTH_NCL | 其他非流动负债 |
表8 建筑业的18个数据指标
字段名 | 含义 |
RESER_PS | 每股公积金 |
N_ASSET_PS | 每股净资产 |
ADVANCE_RECEIPTS | 预收款项 |
OTH_COMPRE_INCOME | 其他综合收益 |
OTH_NCL | 其他非流动负债 |
GAIN_INVEST | 取得投资收益收到的现金 |
T_COMPR_INCOME | 综合收益总额 |
C_OUTF_OPERATE_A | 经营活动现金流出小计 |
T_REVENUE | 营业总收入 |
DILUTED_EPS | 稀释每股收益 |
ASSETS_IMPAIR_LOSS | 资产减值损失 |
T_COGS | 营业总成本 |
ROE_CUT_W | 净资产收益率 |
N_TAN_A_TA | 有形净资产/总资产 |
RETAINED_EARNINGS | 未分配利润 |
OPA_P_TP | 经营活动净收益/利润总额 |
OPA_P_TR | 经营活动净收益/营业总收入 |
INCOME_TAX | 所得税费用 |
表9 水利、环境和公共设施管理业的18个数据指标
字段名 | 含义 |
DEFER_TAX_ASSETS | 递延所得税资产 |
RETAINED_EARNINGS | 未分配利润 |
PUR_FIX_ASSETS_OTH | 购建固定资产、无形资产和其他长期资产支付的现金 |
T_RE | 留存收益 |
ADVANCE_RECEIPTS | 预收款项 |
N_CF_FR_INVEST_A | 投资活动产生的现金流量净额 |
SELL_EXP | 销售费用 |
C_PAID_OTH_INVEST_A | 支付其他与投资活动有关的现金 |
OTH_NCL | 其他非流动负债 |
DILUTED_EPS | 稀释每股收益 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
T_COGS | 营业总成本 |
T_NCL | 非流动负债合计 |
N_INCOME | 净利润(净亏损以“-”号填列) |
TAXES_PAYABLE | 应交税费 |
INT_PAYABLE | 应付利息 |
DEFER_REVENUE | 递延收益 |
T_COMPR_INCOME | 综合收益总额 |
表10 科学研究和技术服务业的18个数据指标
字段名 | 含义 |
FCFE | 股权自由现金流量 |
N_CF_OPA_ND | 经营活动现金流量净额/净债 |
SELL_EXP | 销售费用 |
N_TAN_A_TL | 有形净资产/负债合计 |
N_CF_OPA_NCL | 经营活动现金流量净额/非流动负债 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
T_COMPR_INCOME | 综合收益总额 |
OTH_COMPR_INCOME | 其他综合收益 |
ADVANCE_RECEIPTS | 预收款项 |
FINAN_EXP | 财务费用 |
T_COGS | 营业总成本 |
DEFER_TAX_ASSETS | 递延所得税资产 |
TSE_TA | 所有者权益/总资产 |
C_TA | 货币资金/总资产 |
BP_TA | 应付债券/总资产 |
INT_PAYABLE | 应付利息 |
IT_TP | 所得税/利润总额 |
OPA_P_TP | 经营活动净收益/利润总额 |
表11文化、体育和娱乐业的18个数据指标
段名 | 含义 |
N_DEBT | 净债务 |
LT_AMOR_EXP_TA | 长期待摊费用/总资产 |
DILUTED_EPS | 稀释每股收益 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
T_COMPR_INCOME | 综合收益总额 |
VAL_CHG_PROFIT | 价值变动净收益 |
CL_TA | 流动负债/负债合计 |
SELL_EXP | 销售费用 |
RETAINED_EARNINGS | 未分配利润 |
T_FIXED_ASSETS | 固定资产合计 |
N_CF_OPA_R | 经营活动产生的现金流量净额/营业收入 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
CFSGS_R | 销售商品提供劳务收到的现金/营业收入 |
AR_R | 应收账款/营业收入 |
ADV_R_R | 预收款项/营业收入 |
NCL_TA | 非流动负债/负债合计 |
OPER_PROFIT_YOY | 营业利润同比增长 |
表12 农、林、牧、渔业的18个数据指标
字段名 | 含义 |
IFC_CASH_INCR | 收取利息、手续费及佣金的现金 |
T_PROFIT | 利润总额(亏损总额以“-”号填列) |
LT_AMOR_EXP_TA | 长期待摊费用/总资产 |
REVENUE | 营业收入 |
CL_TA | 流动负债/负债合计 |
INT_PAYABLE | 应付利息 |
INT_INCOME | 利息收入 |
INT_EXP | 利息支出 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
SELL_EXP | 销售费用 |
NCL_TA | 非流动负债/负债合计 |
WORK_CAPITA | 营运资本 |
DEFER_TAX_ASSETS | 递延所得税资产 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
COGS | 营业成本 |
MINORITY_GAIN | 少数股东损益 |
RETAINED_EARNINGS | 未分配利润 |
EBIAT | 息前税后利润 |
表13 综合的18个数据指标
字段名 | 含义 |
OTH_NCA | 其他非流动资产 |
DEFER_TAX_ASSETS | 递延所得税资产 |
NOTES_PAYABLE | 应付票据 |
AP | 应付账款 |
OTH_NCL | 其他非流动负债 |
C_FR_OTH_FINAN_A | 收到其他与筹资活动有关的现金 |
PAID_IN_CAPITAL | 实收资本(或股本) |
T_SH_EQUITY | 所有者权益(或股东权益)合计 |
SELL_EXP | 销售费用 |
OTH_COMPRE_INCOME | 其他综合收益 |
C_PAID_OTH_FINAN_A | 支付其他与筹资活动有关的现金 |
INT_PAYABLE | 应付利息 |
C_PAID_FOR_TAXES | 支付的各项税费 |
N_CF_FR_FINAN_A | 筹资活动产生的现金流量净额 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
C_INF_FR_FINAN_A | 筹资活动现金流入小计 |
REVENUE | 营业收入 |
DILUTED_EPS | 稀释每股收益 |
表14 教育的18个数据指标
字段名 | 含义 |
DEFER_TAX_ASSETS | 递延所得税资产 |
N_INCOME | 净利润(净亏损以“-”号填列) |
T_COG | 营业总成本 |
OTH_CA | 其他流动资产 |
RETAINED_EARNINGS | 未分配利润 |
LT_RECEIV | 长期应收款 |
LT_AMOR_EXP_TA | 长期待摊费用/总资产 |
OTH_NCA | 其他非流动资产 |
DILUTED_EPS | 稀释每股收益 |
TRADING_FL | 交易性金融负债 |
CL_TA | 流动负债/负债合计 |
N_INCOME_ATTR_P | 归属于母公司所有者(或股东)的净利润 |
MINORITY_GAIN | 少数股东损益 |
DIV_PROF_SUBS_MINO_S | 其中:子公司支付给少数股东的股利、利润 |
T_COMPR_INCOME | 综合收益总额 |
OTH_PAYABLE | 其他应付款 |
NCL_TA | 非流动负债/负债合计 |
C_PAID_FOR_TAXES | 支付的各项税费 |
这篇关于2021年A题泰迪杯国家级二等奖——上市公司财务数据分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!