写在最前面:目前我想做的是以天为单位的低频策略,后期有条件再开发中频策略和高频策略。此文章可作为目录,项目各部分功能具体实现,我会分多篇展开介绍,其中不足,欢迎大佬指正。
文章目录
一、功能描述
技术路线:使用tushare获取数据,numpy+pandas分析计算数据,pyecharts做可视化,通过wxauto实现股票异动提醒,最后通过schedule模块实现脚本定时运行。
二、异常数据提示
1、如何定义异常数据
(1)连续三天上涨或下跌
三、股票数据分析及可视化
四、基于macd的股票交易系统
量化交易——构建本地股票行情数据库
量化交易——MACD策略
五、股票交易微信提醒系统
1、微信提醒系统问题汇总
(1)踩坑一:wxpy无法使用,微信关闭了网页版。解决办法:使用wxauto,但目前功能单一还需要做二次开发。
(2)关于wxauto的功能测试(以下代码均测试有效 测试时间:20230723)
#向某人发送消息
from wxauto import *
# 获取当前微信客户端
wx = WeChat()
# 获取会话列表
wx.GetSessionList()
# 向某人发送消息(以`文件传输助手`为例)
msg = '你好~'
who = '文件传输助手'
wx.ChatWith(who) # 打开`文件传输助手`聊天窗口
wx.SendMsg(msg) # 向`文件传输助手`发送消息:你好~
## 发送换行消息(最近很多人问换行消息如何发送,新增说明一下)
msg = '''你好
这是第二行
这是第三行
这是第四行'''
who = '文件传输助手'
WxUtils.SetClipboard(msg) # 将内容复制到剪贴板,类似于Ctrl + C
wx.ChatWith(who) # 打开`文件传输助手`聊天窗口
wx.SendClipboard() # 发送剪贴板的内容,类似于Ctrl + V
(3)不兼容jupyter notebook
解决方法:安装原生python环境(基于Windows11)
python下载地址:python官网
2、脚本定时运行
使用schedule模块
import time
#from schedule import *
import schedule
from wxauto import *
def good_morning():
wx=WeChat()
msg='你好'
who='文件传输助手'
wx.ChatWith(who)
wx.SendMsg(msg)
schedule.every(1).minutes.do(good_morning)#每一分钟执行一次
#schedule.every(1).day.at('10:30').do(good_morning)#每一分钟执行一次
while True:
schedule.run_pending()
time.sleep(1)
六、参考文献
Python监控股价并通过微信提醒
wxpy: 用 Python 玩微信
注:wxpy 支持 Python 3.4-3.6,以及 2.7 版本
python脚本定时运行
Windows11关闭屏幕不锁屏
python中定时任务schedule库用法详解