在过去的 2018 年这一年时间里, 股票市场的表现可谓是令广大股民心力交瘁, 股价一路走低. 不少股民们也是因此对股票丧失了信心, 纷纷撤出市场.
但是仍然有一部分股民们仍然坚守着信念, 继续奋战在持续走低的股票市场 -- 终于, 在 2019 年开春之后, 中国的股票市场迎来了开门红, 告别了数年低迷的熊市, 一度突破 3000 大点, 2019 年牛市真的要来临了吗?
先放一张股神巴菲特镇楼, 希望 2019 年牛市继续保持态势, 我只想看到红涨, 红涨, 红涨...
也是出于好奇, 为了对当前的股市场进行一探究竟, 小编通过 Python 爬取了 2018 年度到目前的股票历史数据, 大展身手进行一波数据可视化操作, 结合数据和市场分析 2019 年 A 股牛市的走势和行情.
以下就来分享一些我的分析及可视化过程.
工具介绍 (Python+FineBI)
对于股票相关数据, 想必对于 Python 大家应该都比较熟悉了, 网站爬数据神器. 由于小编还算有些 Python 基础, 从东方财经网和网易财经爬取相关股票的历史数据这并不是难事.
但是数据可视化分析方面, 虽然 Python 有 numpy,pandas,matplotlib 等第三方库来辅助进行数据处理和数据可视化, 或者也可以借助 echart 等图表开源接口, 但是通过各类代码进行图表属性设置等方面还是比较繁琐的, 而且只能生成静态的图表, 无法进行动态和深入的多维分析, 主要生成我想要的可视化分析报告比较麻烦.
经过一番研究和对比, 决定用 BI 可视化分析工具 FineBI 来进行可视化分析, 对爬取到的相关数据进行可视化分析展示.
上手简单, 拖拽字段即出图表, 有点像升级版的数据透视表, 强烈推荐!!
Python 股票数据爬取
由于需要相关的历史数据, 经过对比东方财经网和网易财经网的相关网站页面, 网易财经网对于我收集相关历史数据更加方便.
这边直接贴出来网易财经网获取股票历史数据的接口:
- http://quotes.money.163.com/service/chddata.html?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 中, 然后就可以在仪表板中进行相关数据的可视化分析了.
具体的操作参考这篇文章《教你 10 分钟搞定一份可视化报告!》, 操作部分写得详细!
经过大概半个小时的操作, 我这边将相关股票的开收盘情况, 跌涨数据, 换手率, 成交数据, 总市值, 流通市值等关键数据指标制作成了一个数据可视化报告, 方便从多个维度观察和分析股票的各个指标.
数据可视化分析结果
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 数据可视化作品~ 欢迎大家多多交流.
后要说的是, 无论现有的股票市场趋势如何, 作为散民的大多数投资群体, 都应当持续关注最新市场行情, 了解最新动向. 毕竟股市有风险, 入市需谨慎!
对可视化感兴趣的同学, 不妨拿了数据, 结合 FineBI 可视化工具自己尝试分析!
来源: http://www.jianshu.com/p/bc45e9a163da