用 Python 抓取分析股市数据很简单!只用短短几行代码,就能实现策略制定到交易信号生成。
一、数据准备
在分析的最开始,需要获取数据。本文中将以沪深 300 指数为标的进行分析(包含日期、开高低收价、成交量、成交额字段,仅截取 2018 年以后数据)
此外我们也许将后续分析时需要用到的模块也在最开始导入:
二、策略制定
本次所用到的策略是技术分析的常用工具之一——布林线(Boll)指标, 通过计算股价的「标准差」,获取价格的「信赖区间」,以次判断交易信号。
(注:本篇不涉及策略效益、合理性的讨论,仅探讨 Python 的实现。)
布林线策略涉及到上下轨的计算,也正是图中的这条「宽带」↓
三、布林策略规则
我们先来看看日布林线指标的计算规则:
- MA 中轨线=N 日的移动平均线
- UP 上轨线=中轨线+两倍的标准差
- DN 下轨线=中轨线-两倍的标准差
其中,标准差指过去 N 日价格标准差,N 的数值我们采取各大股票交易软件的常用值 20。不难发现,在布林线的计算过程中,主要涉及到的就是移动窗口的选取及计算,这点我们用 Python 可以十分轻松的实现:
四、布林信号判断
在常,即没有大涨和大跌的情形下,布林线的信号判断方法十分简单:
1、当股价穿越上轨线时,卖点信号
2、当股价穿越下轨线时,买点信号
3、当股价由下向上穿越中轨线时,为加码信号
4、当股价由上向下穿越中轨线时,为卖点信号
为了更好的观察效果,我们截取 2019 年 7 月至 12 月的数据,以较为复杂的卖出信号为例,进行实现:
五、生成交易信号图
在根据我们既定的策略,准备好了所有的数据之后,我们可以开始尝试绘制美丽的交易信号啦~
此处,我们所用到的工具是 mplfinance 模块,该模块是金融数据可视化的常用工具,相较于我们的老朋友 matplotlib,它更具有针对性,能够帮助我们快速绘制 K 线图。通过一行代码绘制 K 线、成交量及均线
那么,如何将它绘制成交易信号图呢?这里我们需要引入 make_addplot 函数,用于在原图上叠加新的图片:
至此,我们已经将布林线和卖出信号添加了上去。
再用相同的方式将买入信号也添加上去就可以获得一张完整的布林策略信号图了。
如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
Python全套学习资料
1️⃣零基础入门
① 学习路线
对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
② 路线对应学习视频
还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
③练习题
每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
2️⃣国内外Python书籍、文档
① 文档和书籍资料
3️⃣Python工具包+项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
②Python实战案例
光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
③Python小游戏源码
如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
4️⃣Python面试题
我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓