分析人:BUPT_LX


研究目的

用某些算法对2014年12月份的16家国内A股上市的商业银行当中11项財务数据(资产总计、负债合计、股本、营业收入、流通股A、少数股东权益、净利润、经营活动的现金流量净额、投资活动的现金流量净额、筹资活动的现金流量净额、汇率变动对现金的影响)提取分析,得出股票价格的財务影响原因。更加清楚地指导银行股价与財务数据指标之间的联系。

研究方法

主要有描写叙述性分析、因子分析、回归法

方法概述:

1. 先对上述的財务数据进行提取。然后用常规的描写叙述方法(平均、最大、最小、方差等)对这些数据进行粗略分析。

2. 然后用因子分析得出对上市银行的股票价格影响较大的几个因子。从而更加详细地了解到上市银行股价的决定性因素(将几个因子进行业务描写叙述);

3. 最后用回归法确定这些因素对股票价格的影响强弱

研究工具

R语言

psych包/library(psych)用于因子分析

lmtest包用于回归检验

算法模型分析过程

1. 数据预处理

列出16家A股上市的银行

工商银行601398

农业银行601288

中国银行601988

建设银行601939

交通银行601328

民生银行600016

浦发银行600000

兴业银行601166

光大银行601818

平安银行000001

中信银行601998

招商银行600036

华夏银行600015

北京银行601169

南京银行601009

宁波银行002142

当中顺序相应于下表行1~16,財务数据相应于列1~11,当中单位为亿元

资产总计

负债合计

股本

营业收入

流通股A

少数股东权益

净利润

经营活动的现金流量净额

投资活动的现金流量净额

筹资活动的现金流量净额

汇率变动对现金的影响

股价

206000

191000

3535

6589

2680

64.5

2763

2015

-1467

1578

84.9

4.33

160000

149000

3248

5209

2842

15.5

1795

346

-1404

308

-5.7

3.05

153000

141000

2887

4563

2051

426

1772

1269

-2006

836

-123

3.7

167000

155000

2500

5705

95

102

2278

3170

-3439

-629

27.3

4.97

62700

57900

743

1774

327

25.5

660

497

-234

437

1.7

6.34

40200

37700

342

1355

225

76.1

456

2292

-2844

305

-1.25

7.03

42000

39300

187

1232

149.22

31.2

474

1912

-3425

729

10.7

13.146

44100

41500

191

1249

161.8

31.6

475

6821

-5662

1143

-1.4

13.54

27400

25600

467

785

398.1

5.08

289

347

-925

388

2.26

3.83

21900

20600

114

734

98.37

0

198

253

-545

312

3.25

11.46

44300

41500

468

1247

319

79.4

111

-311

-238

308

14

5.55

47300

44200

252

1659

206.29

6.56

560

2722

-1760

219

34.5

12.47

18500

17500

89.1

549

64.88

6.41

180

129

-202

111

0.98

11.39

15200

14300

106

369

89.68

0.23

156

1245

-545

130

1.08

9.08

5732

5404

29.7

160

29.69

3.35

56.6

1115

-1250

215

0.09

10.93

5541

5199

32.5

154

28.73

0.73

56.3

228

-626

333

-1144

10.49

data_bank<-read.csv("C:/Users/user/Desktop/bank1.csv")
##假设用summary(data_bank)会看到第一个元素min,第三个元素中位数。第四个元素平均值。第六个元素最大值。 我们对data_bank每一列做上述的操作,使得展现更为清晰。 #求每一个元素(財务指标)的样本数
N1<-length(data_bank[,1])
N2<-length(data_bank[,2])
N3<-length(data_bank[,3])
N4<-length(data_bank[,4])
N5<-length(data_bank[,5])
N6<-length(data_bank[,6])
N7<-length(data_bank[,7])
N8<-length(data_bank[,8])
N9<-length(data_bank[,9])
N10<-length(data_bank[,10])
N11<-length(data_bank[,11])
head<-c("变量名","资产总计","负债合计","股本","营业收入","流通股A","少数股东权益","净利润","经营活动的现金流量净额","投资活动的现金流量净额","筹资活动的现金流量净额","汇率变动对现金的影响")
sum1<-summary(data_bank[,1])
sum2<-summary(data_bank[,2])
sum3<-summary(data_bank[,3])
sum4<-summary(data_bank[,4])
sum5<-summary(data_bank[,5])
sum6<-summary(data_bank[,6])
sum7<-summary(data_bank[,7])
sum8<-summary(data_bank[,8])
sum9<-summary(data_bank[,9])
sum10<-summary(data_bank[,10])
sum11<-summary(data_bank[,11])
row2<-c("全距",sum1[6]-sum1[1],sum2[6]-sum2[1],sum3[6]-sum3[1],sum4[6]-sum4[1],sum5[6]-sum5[1],sum6[6]-sum6[1],sum7[6]-sum7[1],sum8[6]-sum8[1],sum9[6]-sum9[1],sum10[6]-sum10[1],sum11[6]-sum11[1])
row3<-c("最小值",sum1[1],sum2[1],sum3[1],sum4[1],sum5[1],sum6[1],sum7[1],sum8[1],sum9[1],sum10[1],sum11[1])
row4<-c("最大值",sum1[6],sum2[6],sum3[6],sum4[6],sum5[6],sum6[6],sum7[6],sum8[6],sum9[6],sum10[6],sum11[6])
row5<-c("均值",sum1[4],sum2[4],sum3[4],sum4[4],sum5[4],sum6[4],sum7[4],sum8[4],sum9[4],sum10[4],sum11[4])
row6<-c("中位数",sum1[3],sum2[3],sum3[3],sum4[3],sum5[3],sum6[3],sum7[3],sum8[3],sum9[3],sum10[3],sum11[3])
row7<-c("标准差",sd(data_bank[,1]),sd(data_bank[,2]),sd(data_bank[,3]),sd(data_bank[,4]),sd(data_bank[,5]),sd(data_bank[,6]),sd(data_bank[,7]),sd(data_bank[,8]),sd(data_bank[,9]),sd(data_bank[,10]),sd(data_bank[,11]))
result<-matrix(c(head,row1,row2,row3,row4,row5,row6,row7),nrow=8,byrow=T)
print(t(result))

能够看出这

1. 16家A股上市的银行净利润平均值在767亿,最小的56,3亿也是盈利的。说明效益还是比較稳定的;

2. 现金流量净额方面,经营活动收入的现金最多,而投资活动出去的现金最多。汇率变动使得现金有少部分亏损;

3. 资产-负债上整体保持资产高于负债近10个点。

二、以下进行因子分析过程

library(psych)#因子分析须要的库
KMO(data_bank[,-12])#减去股价那一列,做因子检验
#MSA为60%。说明这些变量适合做因子分析
fa.parallel(data_bank[,-12])#依据以下图我们选取主因子数量为2

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

#因子分析的算法
fa(data_bank[,-12],nfactors=2,fm="ml",rotate="varimax",score=T)
##Factor Analysis using method = ml
##Call: fa(r = data_bank[, -12], nfactors = 2, rotate = "varimax", scores = T,
## fm = "ml")
##Standardized loadings (pattern matrix) based upon correlation matrix
## ML1 ML2 h2 u2 com
##资产总计 0.98 0.20 0.998 0.0022 1.1
##负债合计 0.98 0.21 0.998 0.0021 1.1
##股本 0.98 0.07 0.974 0.0263 1.0
##营业收入 0.97 0.21 0.996 0.0041 1.1
##流通股A 0.84 -0.06 0.706 0.2941 1.0
##少数股东权益 0.48 0.08 0.240 0.7602 1.1
##净利润 0.96 0.25 0.981 0.0186 1.1
##经营活动的现金流量净额 -0.05 1.00 0.995 0.0050 1.0
##投资活动的现金流量净额 -0.03 -0.92 0.838 0.1618 1.0
##筹资活动的现金流量净额 0.19 0.29 0.116 0.8842 1.7
##汇率变动对现金的影响 0.21 0.22 0.091 0.9093 2.0
##SS loadings 5.76 2.17
##Proportion Var 0.52 0.20
##Cumulative Var 0.52 0.72
##Proportion Explained 0.73 0.27
##Cumulative Proportion 0.73 1.00
##Mean item complexity = 1.2
##Test of the hypothesis that 2 factors are sufficient. ##The degrees of freedom for the null model are 55 and the objective function was 33.64 with ##Chi Square of 353.17
##The degrees of freedom for the model are 34 and the objective function was 10.91 ##The root mean square of the residuals (RMSR) is 0.06
##The df corrected root mean square of the residuals is 0.07 ##The harmonic number of observations is 16 with the empirical chi square 5.45 with prob < ##1
##The total number of observations was 16 with MLE Chi Square = 99.97 with prob < ##2.1e-08 ##Tucker Lewis Index of factoring reliability = 0.579
##RMSEA index = 0.504 and the 90 % confidence intervals are 0.27 0.428
##BIC = 5.7
##Fit based upon off diagonal values = 0.99
##Measures of factor score adequacy
## ML1 ML2
##Correlation of scores with factors 1 1.00
##Multiple R square of scores with factors 1 1.00
##Minimum correlation of possible factor scores 1 0.99

从上述结果能够看出

1.ML1与ML2两个因子的累积贡献率有72%,说明两个因子能解释全部变量72%的信息

2.各个因子与两个变量的关系:

资产总计=0.98ML1+0.20ML2

负债合计=0.98ML1+0.21ML2

股本=0.98ML1+0.07ML2

营业收入=0.97ML1+0.21ML2

流通股A =0.84ML1-0.06ML2

少数股东权益=0.48ML1+0.08ML2

净利润=0.96ML1+0.25ML2

经营活动的现金流量净额=-0.05ML1+1.00ML2

投资活动的现金流量净额=-0.03ML1-0.92ML2

筹资活动的现金流量净额=0.19ML1+0.29ML2

汇率变动对现金的影响=0.21ML1+0.22ML2

能够看出ML1主要对资产、负债、权益、利润有影响,ML2主要对经营活动、投资活动、筹资活动的现金流量有影响

称ML1为资产-负债-权益因子,ML2为现金流量因子

三、最后进行回归分析过程

用现有的財务变量探索上市银行股价与其主要財务指标的关系

lm<-lm(股价~.,data=data_bank)#用lm算它的线性回归
lm.aic<-step(lm,trace=FALSE)#用aic的检验法逐步回归
lm.bic<-step(lm,k=log(length(data_bank[,1])),trace=FALSE)#用bic的检验法逐步回归
##看两种方法逐步回归后的结果
summary(lm.aic)
summary(lm.bic)

Call:

lm(formula = 股价 ~ 股本 + 流通股A + 净利润, data = data_bank)

Residuals:

Min     1Q Median     3Q    Max

-4.442 -1.245  0.880  1.516  1.956

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept)  9.159659   0.796650  11.498 7.78e-08 ***

股本        -0.009116   0.002645  -3.447  0.00484 **

流通股A      0.002787   0.001570   1.774  0.10133

净利润       0.007820   0.002813   2.780  0.01665 *

---

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.195 on 12 degrees of freedom

Multiple R-squared: 0.7228,     Adjusted R-squared: 0.6536

F-statistic: 10.43 on 3 and 12 DF,  p-value: 0.00116

--------------------------------------------------------------------------------------------------------------

Call:

lm(formula = 股价 ~ 股本 + 流通股A + 净利润, data = data_bank)

Residuals:

Min     1Q Median     3Q    Max

-4.442 -1.245  0.880  1.516  1.956

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept)  9.159659   0.796650  11.498 7.78e-08 ***

股本        -0.009116   0.002645  -3.447  0.00484 **

流通股A      0.002787   0.001570   1.774  0.10133

净利润       0.007820   0.002813   2.780  0.01665 *

---

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.195 on 12 degrees of freedom

Multiple R-squared: 0.7228,     Adjusted R-squared: 0.6536

F-statistic: 10.43 on 3 and 12 DF,  p-value: 0.00116

通过AIC和BIC准则的检验,股本、流通股A、净利润对股价影响较大。为了保证线性模型的准确率,我们在检查这个模型是否存在多重共线性(自相关性),通过lmtest程序包中的dwtest函数对模型进行Durbin-Watson检验

library(lmtest)
dwtest(lm.aic) ## Durbin-Watson test ##data: lm.aic
##DW = 2.3843, p-value = 0.6526
##alternative hypothesis: true autocorrelation is greater than 0

DW检验仅仅适用于检验误差项是否存在一阶自相关情形。

DW检验过程例如以下。

给出如果

H0: r = 0   (ut 不存在一阶自相关)。

H1: r ¹ 0  (ut 存在一阶自相关)。

能够看出DW统计量为2.3843,p值为0.6526,说明模型不存在多重共线性(自相关性)

因此我们能够得到线性回归方程

股价=( 9159.659 -9.116*股本+ 2.787 *流通股A+ 7.820 *净利润)/1000。当中这三个变量的系数都在显著水平0.01水平下显著

分析结论

1. 通过对上市银行的相关財务数据进行因子分析,能够用两个公共主因子:资产负债权益因子ML1和现金流量因子ML2去影响股票价格72%的信息

2. 通过回归分析得出上市银行股价受股本、流通股、净利润三个变量的影响较大。

国内A股16家上市银行的財务数据与股价的因子分析报告(1)(工具:R)的更多相关文章

  1. 译:Dataiku 白皮书之《在银行和保险行业应用数据科学》

    原文链接:Data Science For Banking & Insurance 如果不能正常访问,请点击备份获取. 在银行和保险行业应用数据科学 互联网巨头和金融技术创业时代的求生和发展 ...

  2. 2019年逾期率上升_24家头部P2P平台最新运营数据解读:8家近一年逾期率走势曝光

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  3. php 将16进制数串转换为二进制数据的函数

    /**     * 将16进制数串转换为二进制数据的函数     * @param $hexdata     * @return string bindata     */     function ...

  4. 读书笔记 - 《梦想与浮沉:A股十年上市博弈》

    拿到这本书是个很偶然的事件.有几本软件业书由于太老已经绝版,偶然想到小区的图书馆自动借阅机和读者证的预借功能,就兴冲冲的跑去尝试.没想到预借只能在网页上进行,就随手从机器里借了这本书.没想到细观之下让 ...

  5. java编程如何实现2017-01-16 22:28:26.0这样的时间数据,转换成2017:01:16:22:28:26这样的时间数据

    不多说,直接上干货! timereplace.java package zhouls.bigdata.DataFeatureSelection.util; /* * 这个程序,是用来做补充的 */ p ...

  6. 创新能力加速产业发展,SphereEx 荣获“中关村银行杯”『大数据与云计算』领域 TOP1

    8 月 9 日下午,2022 中关村国际前沿科技创新大赛"中关村银行杯"大数据与云计算领域决赛在北京市门头沟区中关村(京西)人工智能科技园·智能文创园落下了帷幕.SphereEx ...

  7. 16.Spark Streaming源码解读之数据清理机制解析

    原创文章,转载请注明:转载自 听风居士博客(http://www.cnblogs.com/zhouyf/) 本期内容: 一.Spark Streaming 数据清理总览 二.Spark Streami ...

  8. Ubuntu 16.04安装网络流量监控工具Netspeed(附带10款最佳的指示器工具)

    安装: sudo add-apt-repository ppa:ferramroberto/linuxfreedomlucid sudo apt-get update sudo apt-get ins ...

  9. C#开发BIMFACE系列16 服务端API之获取模型数据1:查询满足条件的构件ID列表

    系列目录     [已更新最新开发文章,点击查看详细] 源文件/模型转换完成之后,可以获取模型的具体数据.本篇介绍根据文件ID查询满足条件的构件ID列表. 请求地址:GET https://api.b ...

随机推荐

  1. HDU 4751 Divide Groups (2013南京网络赛1004题,判断二分图)

    Divide Groups Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  2. STM32 microcontroller system memory boot mode

    The bootloader is stored in the internal boot ROM memory (system memory) of STM32 devices. It is pro ...

  3. layer.confirm 询问框 的层遮盖

    function admin_del(obj) { layer.confirm('确认要重启吗?', { btn : [ '确定', '取消' ]//按钮 }, function(index) { l ...

  4. 《Go语言实战》摘录:6.1 并发 - 并行 与 并发

    6.1 并行 与 并发

  5. Programming 2D Games 读书笔记(第六章)

      http://www.programming2dgames.com/chapter6.htm 示例一:Bounce 边界碰撞测试 velocity为移动的速度, 超过右边界,velocity.x为 ...

  6. AIX 与Linux 中crontab 介绍

    AIX 与Linux 中crontab 用法相似,先介绍Linux 中的Crontab 用法,再后介绍AIX 与Linux 的不同之处.   一.Crontab 介绍 crontab命令的功能是在一定 ...

  7. Git 的 WindowsXP安装

    文章1: http://blog.sina.com.cn/s/blog_5063e4c80100sqzq.html 一.安装必要客户端 1. TortoiseGit http://tortoisegi ...

  8. delphi udp文件传输

    客户端: unit UnitClient; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Contr ...

  9. Kubernetes中Pod的健康检查

    本文介绍 Pod 中容器健康检查相关的内容.配置方法以及实验测试,实验环境为 Kubernetes 1.11,搭建方法参考kubeadm安装kubernetes V1.11.1 集群 0. 什么是 C ...

  10. 解决tensorflow在训练的时候权重是nan问题

    搭建普通的卷积CNN网络. nan表示的是无穷或者是非数值,比如说你在tensorflow中使用一个数除以0,那么得到的结果就是nan. 在一个matrix中,如果其中的值都为nan很有可能是因为采用 ...