基于Python的股票数据可视化分析
——以新能源汽车行业为例
2021-10-13李思佳
李思佳
(北京信息职业技术学院 人工智能学院,北京100018)
0 引言
近年来,随着环境污染问题得到高度关注,新型能源主打“绿色节能、低碳环保”[1]更受人们青睐。为推动我国生态文明建设,国家不断加大对新能源行业,特别是新能源汽车行业的支持力度。通过利好政策、购车补贴等方式,促进新能源汽车及相关产业链的发展,将传统汽车消费者的购买视线拉向新能源汽车[2]。同时,加强新能源汽车配套充电设施建设也被列入国家“新基建”七大领域之一[3],这也将进一步推动新能源汽车行业的发展。
分析发展势头强劲行业的股票价格及趋势对于广大投资者、股票交易员等具有重要的价值和意义,便于其择机择优地进行投资或交易。目前用于分析股票的商用软件定制化程度相对较低,且大部分数据信息不开源。利用Python进行数据分析应用比较普遍,丁传炜基于Python数据可视化方法,针对上海市城市通勤特征进行分析研究,对城市智能交通系统优化具有重要意义。[4]丁家雄等基于Python pandas针对成都市垃圾处理情况进行了数据分析。[5]
本文主要选取新能源汽车行业国内外的龙头企业——比亚迪和特斯拉的股票数据,采用Python的pandas和Matplotlib[6]进行股票价格数据可视化分析。本文采用的数据来源于雅虎财经①https://hk.finance.yahoo.com/.的股票开源数据。
1 可视化分析
1.1 比亚迪、特斯拉股票数据
本文使用比亚迪、特斯拉近5年(2015年7月14日-2020年7月13日)的股票数据信息,包含的数据字段有:开盘价(Open)、最高价(High)、最低价(Low)、收盘价(Close)、复权收盘价(Adj Close)、成交量(Volume)。数据完整性及数据质量良好,在这里不需要进行数据清洗。
1.2 在Python中引入原始数据
1.3 采用plot函数绘制可视化图
图1 比亚迪股票价格波动图
图2 特斯拉股票价格波动图
1.4 时间序列数据切片
为更清晰地了解2020年上半年股票价格波动情况,本文针对两只股票进行时间切片,重点输出了2020年1月至6月的股票价格波动可视化图,核心代码如下:
#通过时间序列数据切片构建2020年上半年比亚迪股票价格波动可视化图(见图4),并将可视化图保存到文件
图4 2020年上半年比亚迪股票价格波动图
#通过时间序列数据切片构建2020年上半年特斯拉股票价格波动可视化图(见图5),并将可视化图保存到文件
图3 比亚迪和特斯拉股票成交量对比图
图5 2020年上半年特斯拉股票价格波动图
2 股票波动相关性分析
图6 2020年上半年比亚迪和特斯拉股票价格波动相关性图
3 结语
本文通过对比亚迪和特斯拉近5年的股票数据分析,可以看出,比亚迪的股票价格近5年来波动明显,并于2020年7月大幅上涨;特斯拉的股票价格2015-2019年波动较小,2020年有较明显涨幅。从5年间两支股票的成交量来看,比亚迪的波动幅度较特斯拉更大。根据2020年上半年股票价格波动相关性,比亚迪和特斯拉股票的相关程度不强。同时,利用Python针对数据进行切片,在股票价格波动上可更加灵活地选择时间维度进行可视化分析。