Python爬虫BI分析我做了一份酷炫的A股牛市可视化

自打15年一波牛市,这几年里,股票市场的表现可谓是令广大股民心力交瘁,股价一路走低。

我几次入场,都不一而同当成韭菜,割了一茬又一茬,致富发财的梦绝望到谷底。

但是仍然有一部分股民们毅然坚守着信念,继续奋战在持续走低的股票市场。终于,在2019年开春之后,中国的股票市场迎来了开门红,上周大盘一度突破3000点,2019年牛市真的要来临了吗?

然而,就在各位同事纷纷入场,赚的钵满体满的时候,我又怂了,犹豫着进或不进,出或不出的时候,冒出一个念想:何不对股市做一个可视化分析?

也是出于好奇,为了对当前的股市场进行一探究竟,通过Python爬取了2018年到目前的股票历史数据,大展身手进行一波数据可视化操作,结合数据和市场分析2019年A股牛市的走势和行情。

之前看过某大神用Excel做了股市分析,今天我就尝试用FineBI做个可视化练练手!

以下还原分析及可视化过程。

工具介绍

数据采集:Python爬虫

分析及可视化:FineBI

对于股票相关数据,想必对于Python大家应该都比较熟悉了,网站爬数据神器。我从东方财经网和网易财经爬取相关股票的历史数据。(私信回复“股票”可获得)

但是数据可视化分析方面,虽然Python有numpy、pandas、matplotlib等第三方库来辅助进行数据处理和数据可视化,或者也可以借助echart等图表开源接口,但是通过各类代码进行图表属性设置等方面还是比较繁琐的,而且只能生成静态的图表,无法进行动态和深入的多维分析,主要生成我想要的可视化分析报告比较麻烦。于是这里就决定用BI可视化分析工具FineBI来进行可视化分析展示。之前也介绍过很多遍。

Python股票数据爬取

由于需要相关的历史数据,经过对比东方财经网和网易财经网的相关网站页面,网易财经网对于我收集相关历史数据更加方便。

这边直接贴出来网易财经网获取股票历史数据的接口:

http://quotes.money.163.com/service/chddata.html?code=[code]&start=[yyyyMMdd]&end=[yyyyMMdd]&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP

接口中有三个核心参数,code表示股票编码,start表示开始时间,end表示结束时间,用python自动填充即可,调用起来非常方便。

通过Python调用网易财经的股票数据接口,获取上海/深圳A、B股近期成交量前10的共40家股票的历史数据,包含相关股票的开收盘情况、跌涨数据、换手率、成交数据、总市值、流通市值等关键数据指标。

直接贴出来代码:

import urllib.request import re import glob import time # 上海、深圳A/B股票,近期成交量前40支股票代码 allCodelist=[ ‘601099’,’601258′,’600010′,’600050′,’601668′,’601288′,’600604′,’600157′,’601519′,’600030′,#上海A股 ‘900902’,’900941′,’900948′,’900938′,’900947′,’900932′,’900907′,’900906′,’900903′,’900919′,#上海B股 ‘000725’,’300059′,’002131′,’300116′,’002195′,’002526′,’002477′,’000536′,’300104′,’000793′,#深圳A股 ‘200725’,’200160′,’200018′,’200037′,’200488′,’200168′,’200468′,’200058′,’200012′,’200625′ #深圳B股 ] for code in allCodelist: print(‘正在获取%s股票数据…’ % code) if (code[0] == ‘6’ or code[0]==’9′):#A股 url = ‘http://quotes.money.163.com/service/chddata.html?code=0’ code ‘&start=20180101&end=20190228&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP’ print(url) else:#B股 url = ‘http://quotes.money.163.com/service/chddata.html?code=1’ code ‘&start=20180101&end=20190228&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP’ print(url) urllib.request.urlretrieve(url, ‘d:股票’ code ‘.csv’)#需要提前新建好D盘的“股票”目录,将数据写入csv文件 csvx_list = glob.glob(‘d:股票*.csv’) print(‘总共发现%s个CSV文件’ % len(csvx_list)) time.sleep(2) print(‘正在处理…………’) for i in csvx_list: fr = open(i, ‘r’).read() with open(‘csv_to_csv.csv’, ‘a’) as f:#合并csv文件 f.write(fr) print(‘写入完毕!’)

Pyhton完美运行,爬取时间不到15秒~

成功获取到上海/深圳A、B股近期成交量前10的共40家股票,2018年1月1日到2019年2月28日的所有历史交易数据。

相关股票数据excel文件也给大家双手奉上,方便大家分析使用。(私心回复“股票”获得)

FineBI数据可视化

关于FineBI,前面已经简单介绍过,它的特点就是操作简单上手快,无须任何代码,直接在浏览器端通过FineBI工具的鼠标拖拽和点击操作即可生成色彩绚丽的可视化图表效果。

下面我们可以通过FineBI官网获取软件激活码,下载并按照向导安装好软件:

出现这个界面就代表已经安装成功。接下来我们就可以开始在FineBI中将之前爬取到的数据进行可视化。

FineBI的操作很简单,但还是建议上手前看一下他的帮助文档或基础视频,会有邮件告知学习资料。

把数据表上传导入到FineBI中,然后就可以在仪表板中进行相关数据的可视化分析了。

经过大概半个小时的操作,我这边将相关股票的开收盘情况、跌涨数据、换手率、成交数据、总市值、流通市值等关键数据指标制作成了一个数据可视化报告,方便从多个维度观察和分析股票的各个指标。

数据可视化分析结果

1.从股票的日线走势可以看出,自2018年以来,股票市场处于一路震荡走低的大趋势,2018年10月份出现触底,2018年11月份又一波小的上涨行情,但是随后12月份又迅速回调。到2019年1月份,开始出现小幅上涨,2月份春节之后,股票市场迅速拉升,一路飘红,换手率也是一路飙升。今年年初经过小幅调整后,立即放量拉升,2月份呈现“价量齐升”的态势,颇有一番从过往低迷熊市转向高昂牛市的势头。

2.通过FineBI联动对比分析深圳、上海A/B股的市场情况可以看出,A股的市场行情总体提升较B股明显,A股占据主体成交量。

3.分析股票的移动平均线,5日、10日、30日、60日均线呈发散向上趋势,在股市术语来说这个叫做”金叉“,这些都是牛市可能来临的信号。

4.未来趋势预测方面,采用FineBI的时序预测法,按周开盘价、周成交量预测未来走势,根据预测结果未来5周仍然势态良好,进入3月份后,大盘行情持续走高,截止目前(3月6日),沪市A股已站上3100点,深市A股已站上9700点。

近期股市总结

自2015年以来,长久的股市低迷状态被2019年开春之后的市场所打破,政策红利持续释放以及券商业绩需要改善。从近期来看,券商行情有望持续推进,阻力A股持续倒逼推进,从数据体现来看也就是涨幅、交易量、换手率君大幅攀升。2月中旬各股呈”金叉“态势,随后开启急速攀升模式。

从股票热点来看,最大的热点可能是金融板块,周末大篇幅的政策也随之出台,可以重点关注。另外,创业板块、证券板块或许也都将有不俗表现。大消费,蓝筹股可以重点跟踪,对于中长期股民来说更为利好,擅长长线投资者可以重点关注其市场走势。

整体来看,上股/深股两市放量创新高说明市场运行还是相对健康的,对于近期或出现的关口震荡休整也属于正常现象。在国家政策的大力引导之下,特别是沪指未来应该具备突破3000点大关的能力,未来总体股票市场行情看好。

再来分享一张别的小伙伴制作的FineBI数据可视化作品~欢迎大家多多交流。

后要说的是,无论现有的股票市场趋势如何,作为散民的大多数投资群体,都应当持续关注最新市场行情,了解最新动向。毕竟股市有风险,入市需谨慎!

对可视化感兴趣的同学,不妨拿了数据,自己尝试分析!

未经允许不得转载:股市行情网 » Python爬虫BI分析我做了一份酷炫的A股牛市可视化

相关文章

评论 (0)