牛熊转换的背后是资金的转换、市场情绪的转换、市场估值水平的理性回归,反映的是经济深层次矛盾变化。

                              ——李晓伟《中国股市20年投资智慧》

上证指数图是全国资金流入流出股市资金流量图,其涨跌是由资金流动推动的。换言之,股市持续走牛是资金在不断加速流入,而股市持续下跌是资金在加速撤退。然而,资金流入流出的动力何在?驱动因素经过心理因素过滤驱使资金面出现波动,而资金面的波动最终体现为股价的波动。驱动因素主要有宏观经济、产业政策、公司业绩、利率、流动性和股票供给(IPO)等,其中,流动性决定了A股市场的估值中枢。下面结合历史事件,利用Python对上证指数走势图进行可视化分析。

一、上证指数可视化

  • 数据获取:使用tushare获取上证综指1998-2018年日收盘价;

  • 数据清洗:使用pandas对原始数据和日期格式进行处理;

  • 数据可视化:结合历史事件,使用matplotlib画出股指走势。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#先引入后面可能用到的包(package)
import pandas as pd
import tushare as ts
import matplotlib.pyplot as plt
%matplotlib inline

#正常显示画图时出现的中文和负号
from pylab import mpl
mpl.rcParams['font.sans-serif']=['SimHei']
mpl.rcParams['axes.unicode_minus']=False
#获取上证综指1998年至今的日交易数据
sh=ts.get_k_data('sh',start='1998-1-1')
sh.index=pd.to_datetime(sh.date)
sh['close'].plot(figsize=(16,8))
# 设置刻度字体大小
plt.xticks(pd.date_range('1998-01-01','2022-1-1',freq='Y'))
plt.yticks(range(1000,6100,420))
plt.xticks(fontsize=12)
plt.yticks(fontsize=12)
plt.xlabel('时间',fontsize=15)
plt.title('上证综指走势与大事记',fontsize=18)
############A股牛市转折大事记
#事件1:
plt.annotate('5.19行情:\n1999年经济通缩\n政策推动股市\n为经济服务',
xy=('1999-1-1',1500),xytext=('1999-3-30',2000),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'yellow', alpha = 0.5),
arrowprops=dict(facecolor='red',
shrink=0.05),fontsize=12)

#事件2:
plt.annotate('股权分置改革\n人民币升值\n基金大规模发行\n流动性过剩\n全民炒股',
xy=('2005-5-1',1400),
xytext=('2005-6-30',2000),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'yellow', alpha = 0.5),
arrowprops=dict(facecolor='red',
shrink=0.05),fontsize=12)

#事件3:
plt.annotate('四万亿刺激计划\n十大产业振兴规划',
xy=('2008-11-1',2200),
xytext=('2009-1-1',3580),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'yellow', alpha = 0.5),
arrowprops=dict(facecolor='red',
shrink=0.05),fontsize=12)

#事件4:
plt.annotate('全面深化改革\n资本洼地\n杠杆资金',
xy=('2014-7-1',2054),
xytext=('2014-3-1',2500),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'yellow', alpha = 0.5),
arrowprops=dict(facecolor='red',
shrink=0.05),fontsize=12)
############A股熊市转折大事记
#事件1:
plt.annotate('国有股市价减持',
xy=('2001-6-1',2260),
xytext=('2001-10-30',3000),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'grey', alpha = 0.5),
arrowprops=dict(facecolor='g',
shrink=0.05),fontsize=12)
#事件2:
plt.annotate('通胀、基金暂停发行\n次贷危机、大小非减持',
xy=('2007-10-1',6100),
xytext=('2008-1-30',5000),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'grey', alpha = 0.5),
arrowprops=dict(facecolor='g',
shrink=0.05),fontsize=12)
#事件3:
plt.annotate('IPO重启、收紧的货币\n地产调控政策、不断解禁的大小非',
xy=('2009-8-1',3500),
xytext=('2010-1-1',1500),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'grey', alpha = 0.5),
arrowprops=dict(facecolor='g',
shrink=0.05),fontsize=12)
#事件4:
plt.annotate('场外配资清理\n场内融资\n分级基金去杠杆',
xy=('2015-8-15',4000),
xytext=('2015-6-15',5200),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'grey', alpha = 0.5),
arrowprops=dict(facecolor='g',
shrink=0.05),fontsize=12)
############未来路在何方?
plt.annotate('金融去杠杆\n严监管\n中美贸易战\n路在何方?',
xy=('2017-12-15',3200),
xytext=('2018-1-1',1600),
bbox = dict(boxstyle = 'round,pad=0.5',
fc = 'blue', alpha = 0.5),
arrowprops=dict(facecolor='k',
shrink=0.05),fontsize=12)
plt.show()

二、历史回顾

从1998年至今,A股沉浮将近二十载,有四次大起大落(牛熊转换)值得深入探究和总结,以史为鉴,知兴替与得失,以洞悉未来。

1、

牛气冲天: 1999.5-2001.6:1047-2245

驱动因素:人民日报社论、二级市场配售新股、资金充裕、网络概念股爆发

背景:5月19日(5.19行情),人民日报发表社论,指出中国股市会有很大发展,投资者踊跃入市,网络概念股盛极一时。监管层容许三类企业入市,一批批困难企业开始纷纷上市“脱困”,弄虚作假企业越来越多。

熊途漫漫:2001.6-2005.5 :2245-998点

驱动因素:国有股减持

背景:6月14日,国有股减持办法出台的消息冲击下,2000点很快成为中国股票市场的险峰,此后经历了长达4年多的调整,指数拦腰一斩。

2、

牛气冲天:2005.5-2007.10 :998-6124

驱动因素:股权分置改革、人民币升值、基金大规模发行、流动性过剩、全民炒股

背景:2005年5月股权分置改革启动展开,开放式基金大量发行,人名币升值预期,带来的境内资金流动性过剩,资金全面杀入市场。

2006年起,沪深股市走出一轮爆发式的波澜壮阔的大牛市行情,力度之大、时间之短、涨幅之大,创下中国股市种种历史之最。在经济高速发展,股权分置改革,人民币升值等利好烘托下,上证指数持续上扬,不断创出历史新高,年线拉出了一根近乎光头光脚。

2007年中国股市继续全年单边上扬直奔6000点,涨到出乎意料,百元股遍地皆是,成交量单日达几千亿元,市场陷入疯狂。直到,2007年5月29日,财政部宣布印花税30日起上调为千分之三,股市闻声大跌,5日最大跌幅达21.49%,之后强势反弹,一路攀高至6124点。

熊途漫漫: 2007.10-2008.11: 6124-1664

驱动因素:通胀、基金暂停发行、次贷危机、大小非减持

背景:2007年10月16日,指数站在6124历史高点,在基金暂停发行、美国次贷危机和大小非减持等因素影响下,股市一路狂跌,直到1664点止跌。

2007年11月5日,两市第一权重股-中国石油挂牌上市,募集资金668亿元。发行价16.7元,首日开盘48.6元,此后便再也回不到起点。
2008年1月21日,平安传出欲再融资1600亿元, 平安跌停, 沪指暴跌5.14%。上证指数跌破5000点。
2008年6月20日,南航认股权证终止交易,分文不值。
2008年9月14日,美国雷曼公司宣布破产。
A股一地鸡毛……

3、

牛气冲天:2008.11-2009.7:1664-3478

驱动因素:四万亿投资、十大产业振兴规划

背景:2008年11月11日,中国政府宣布4万亿投资计划。件随着四万亿投资政策和十大产业振兴规划,A股市场掀起了新一轮牛市。股价从1664点涨至3478点,在不到十个月的时间里股价大涨109%。

熊途漫漫:2009.7-2010.7:3478-231

驱动因素:IPO重启、紧缩的宏观政策、欧洲债务危机

4、

牛气冲天:2014.7-2015.6:2054-5178

驱动因素:全面深化改革、价值洼地、杠杆资金

背景:2014年,中国深化体制改革全面启动,美国宽松货币政策全面退出,监管层放松企业再融资,场外配资盛行。

熊途漫漫:2015年6月股灾,开启熊途漫漫

驱动因素:场外配资清理、场内融资、分级基金去杠杆形成连锁反应

2016年1月1日熔断机制(包括实行和暂停)、1月9日减持新规(针对大股东和董监高等)、人民币贬值和推行注册制。

三、结语

以铜为鉴,可以正衣冠;以人为鉴,可以知得失;以史为鉴,可以知兴替。

                                      ——《旧唐书·魏徵传》