首页 > 技术文章 > 国内A股16家上市银行的財务数据与股价的因子分析报告(1)(工具:R)

gccbuaa 2017-08-18 08:47 原文

分析人:BUPT_LX


研究目的

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

研究方法

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

方法概述:

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

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

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

研究工具

R语言

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

lmtest包用于回归检验

算法模型分析过程

1. 数据预处理

列出16A股上市的银行

工商银行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. 16A股上市的银行净利润平均值在767亿,最小的56,3亿也是盈利的。说明效益还是比較稳定的;

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

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

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

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


#因子分析的算法
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.ML1ML2两个因子的累积贡献率有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 ‘ ’ 

 

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 ‘ ’ 

 

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 

 

通过AICBIC准则的检验,股本、流通股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.3843p值为0.6526,说明模型不存在多重共线性(自相关性)

 

 

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

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

 

分析结论

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

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





推荐阅读