量化交易——股票异动提醒

写在最前面:目前我想做的是以天为单位的低频策略,后期有条件再开发中频策略和高频策略。此文章可作为目录,项目各部分功能具体实现,我会分多篇展开介绍,其中不足,欢迎大佬指正。

一、功能描述

技术路线:使用tushare获取数据,numpy+pandas分析计算数据,pyecharts做可视化,通过wxauto实现股票异动提醒,最后通过schedule模块实现脚本定时运行。
量化交易——股票异动提醒_第1张图片

1、异常数据提示

(一)如何定义异常数据

(1)连续三天上涨或下跌

2、做出买入卖出信号判断

(1)基于MACD的交易系统

3、发送微信提醒信息

(一)踩坑一:wxpy无法使用,微信关闭了网页版。解决办法:使用wxauto,但目前功能单一还需要做二次开发。

(二)关于wxauto的功能测试(以下代码均测试有效 测试时间:20230723)

(1)向某人发送消息

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

(三)不兼容jupyter notebook

解决方法:安装原生python环境(基于Windows11)
python下载地址:python官网

4、脚本定时运行

使用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 版本

wxauto官方文档
wxauto后台调用版本

python脚本定时运行
Windows11关闭屏幕不锁屏
python中定时任务schedule库用法详解

持续更新中。。。

你可能感兴趣的:(量化交易,量化交易,tushare,pyecharts,wxauto,numpy,pandas,schedule)