大家在没有阅读本文之前先看下python的基本概念,

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。

本文是小兵使用万能的Python写一个量化股票系统!下面是一个小马的迷你量化系统。

这个小迷小量化系统,麻雀虽小但是五脏俱全,我们今天先从实时提醒这个模块做起,提醒系统分下面几个部分:

实时获取股票数据

连接邮件服务器

预警配置管理

监控数据并发送邮件

希望通过实时提醒,来提高交易的收益率,试试看,万一有用呢,反正写代码对码农来说,so easy!

01.

实时获取股票价格

为了更准确的获取股票的价格,我们这里用比较有名的金融库tushare来获取,里面封装了大量的股票的数据Api,非常好用!

1).首先设计一个stock类,这个类第一件大事:

查询股票的实时价格和k线数据比如(5min,15min),然后把数据返回出来,为了提高效率,我们肯定是用并发出来,所以start_run函数会成为一个线程函数

2).第二件大事:

我们获取的实时的数据,需要传递给外边的模块调用,子线程和主线程间通信的话,最简单的方法用queue来搞定,所以我们stock类会init里面传入一个queue

3).控制线程:

这个stock我们希望外边能控制它的运行和停止,在stock类的入口,我们加入了一个_terminal变量

4).神奇的tushare库

利用tushare这个神奇的API,构造两个类函数分布query_stock_real_price和get_kline_data获取数据:

def query_stock_real_price(self):

df = ts.get_realtime_quotes(self.stock_num)

df=df[['price','time']]

price=df['price'].values[0]

time=df['time'].values[0]

return price,time

def get_kline_data(self, ktype='ma5'):

today=datetime.now().strftime('%Y-%m-%d')

df = ts.get_hist_data(self.stock_num, start='2018-08-08', end=today)

return (df[[ktype]])

02.

邮件系统

简单实时提醒系统,我们用邮件,比如你的qq邮箱,是可以实时的收到一些邮件提醒的信息,我们这里用Python自带的 SMTP和EMAIL模块处理:

1). 连接邮件服务器

为了方便扩展和复用,也用一个类来封装邮件server!构造一些邮件服务器的地址和密码,然后连接就可以了,非常简单。

2).构造邮件内容

服务器连接好了,之后我们需要发送邮件,需要写一个邮件标题和内容,比如 xx股票,现在价格多少之类的。

1).为了更好的封装数据,用类装饰器对titel和content进行封装,这样外边无法直接访问这两块内容。

2).mail类会初始化一些信息,比如要发送到邮件地址,而且要把前面构造好的SMTP服务器对象传进来,方便发送邮件。

3).初始化一个MIMEText对象,填充一些邮件的内容比如from,to,subject等等。为了有时间性,我们在邮件的开头加一个时间戳。

03.

预警系统

我们需要有一个配置文件,里面不停的修改我们对股票的价格的设置, 比如到了你的止损或者止盈的位置,或者到了你的一些量化策略的地方 ,需要提醒你注意等等。这里我们只是简单的说明,只写最大和最小的股价预警,示例一下:

setting 文件:

{

"high_price": 15,

"low_price": 10

}

1).死循环监控数据

我们启动一个线程,用一个死循环来不停的从队列里面获取股票的数据,然后进行一些监听的逻辑判断,先看一下核心代码:

因为股票有交易时间,我们这里简单粗暴的让程序只在交易时间运行,当然如果要把程序放在远端服务器上的话,需要进一步优化,不然每一天都要启动一下!

死循环里面会不停的读区预警 设置里面的股价的涨到多少最高价和最低价 ,一旦触达这个价格,立刻发送邮件提醒!

写了这么久,看一下效果吧:

好了,上面是 一个简单的股票实时提醒程序 ,利用了一些Python自带的邮件库和一个金融库,算是一个综合小练习!

总结

以上所述是小编给大家介绍的使用Python写一个量化股票提醒系统,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

python写一个系统-使用Python写一个量化股票提醒系统相关推荐

  1. 用python读取股票价格_使用Python写一个量化股票提醒系统

    大家在没有阅读本文之前先看下python的基本概念, Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开 ...

  2. python量化股票源码_使用Python写一个量化股票提醒系统

    大家在没有阅读本文之前先看下python的基本概念, Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开 ...

  3. python写炒股软件_使用Python写一个量化股票提醒系统

    大家在没有阅读本文之前先看下python的基本概念, Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开 ...

  4. python股票全套系统_熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的很是甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!可是突然想起年初还有几万块在股市里面 ...

  5. python写一个系统-熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的非常甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!但是突然想起年初还有几万块在股市里面 ...

  6. python股票分析系统_熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的非常甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!但是突然想起年初还有几万块在股市里面 ...

  7. python股票交易系统瘫痪_熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的非常甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!但是突然想起年初还有几万块在股市里面 ...

  8. 基于python食品安全溯源管理系统django框架计算机毕业设计源码+系统+数据库+lw文档+调试部署

    基于python食品安全溯源管理系统django框架计算机毕业设计源码+系统+数据库+lw文档+调试部署 基于python食品安全溯源管理系统django框架计算机毕业设计源码+系统+数据库+lw文档 ...

  9. JAVA计算机毕业设计在线玩具租赁系统Mybatis+源码+数据库+lw文档+系统+调试部署

    JAVA计算机毕业设计在线玩具租赁系统Mybatis+源码+数据库+lw文档+系统+调试部署 JAVA计算机毕业设计在线玩具租赁系统Mybatis+源码+数据库+lw文档+系统+调试部署 本源码技术栈 ...

最新文章

  1. SQL Server 之AdventureWorks 2008 安
  2. linq lambda 分组后排序
  3. 百度Q2日进2.9个亿,新基建推动Apollo上位!李彦宏开招管培生:亲自选亲自带...
  4. 阿德莱德计算机专业排名,阿德莱德大学专业排名第几?2019年榜单揭晓!
  5. python 可变参数
  6. 11--Rails数据交互3
  7. 基于Schema配置的AOP
  8. USB主机是如何检测到设备的插入的呢?
  9. html5 轮询自动刷新数据,后台调用exe,前端定时轮询调用结果
  10. JS 获取浏览器、显示器 窗体等宽度和高度
  11. 网络安全不是奢侈品,而是必需品
  12. c语言编程输入a是输出为a_C ++编程基本输入,输出,数据类型,声明能力倾向问题和解答...
  13. 一次使用duplicate创建测试数据库的过程
  14. linux系统进程类型不包括,linux期末考试练习题
  15. python中bind的用法_Javascript中bind()方法的使用与实现
  16. java多组List所有的排列组合
  17. gitee项目能用SVN拉取吗_基于SpringBoot的车牌识别系统(附项目地址)
  18. 哨兵2号L1C数据下载及预处理
  19. 在Linux下安装QQ
  20. MATLAB Simulink工具箱

热门文章

  1. 开发日记-20190822 关键词 读书笔记《Unix环境高级编程(第二版)》《掌控习惯》DAY 2
  2. 随机森林算法demo python spark
  3. 2017各银行贷款利息表及P2P平台贷款利率比较
  4. lucene搜索之facet查询原理和facet查询实例——TODO
  5. java pom.xml 自定义变量
  6. python 中 if __name__ == '__main__' 判断的作用
  7. ios11,弹出层内的input框光标错位 键盘弹出时,输入信息,光标一直乱跳
  8. WIN7实现多用户远程桌面
  9. ajax异步上传到又拍云的实例教程
  10. ios8 Xcode6 设置Launch Image 启动图片