15天搭建ETF量化交易系统Day7—全自动化交易系统

news2024/12/29 1:41:55

ff03c4a9eed67db5f6d041a32c1fd4ce.png

搭建过程

b338fec534470b1fd59bdcdde2f21179.png

每个交易者都应该形成一套自己的交易系统。

很多交易者也清楚知道,搭建自己交易系统的重要性。现实中,从0到1往往是最难跨越的一步。
授人鱼不如授人以渔,为了帮助大家跨出搭建量化系统的第一步,我们决定推出这个主题系列。
这个系列中,我们用Python从0开始一步步搭建出一套ETF量化交易系统(选择ETF标的是因为对于普通交易者来说,ETF相对于选强势股难度要小,而且没有退市风险)。大家可以跟随着我们的实现路径来一起学习,从过程中掌握方法。
掌握了方法之后,你可以换成期货系统、比特币系统、美股系统,然后在实战中不断去完善自己的系统了。
搭建一套ETF量化交易系统涉及多个模块和组件的协同工作,包括数据源模块、量化策略模块、可视化模块、数据库模块、回测评估模块、自动交易模块等等。
DAY1链接如下:15天搭建ETF量化交易系统Day1—数据源模块
DAY2链接如下:15天搭建ETF量化交易系统Day2—图形显示模块
DAY3链接如下:15天搭建ETF量化交易系统Day3—上手经典回测框架
DAY4链接如下:15天搭建ETF量化交易系统Day4—玩转海龟交易策略
DAY5链接如下:15天搭建ETF量化交易系统Day5—打造实盘量化机器人
DAY6链接如下:15天搭建ETF量化交易系统Day6—打通同花顺自动交易
DAY7结合前面几天的成果,我们开启完全自动化的一天,让“量化机器人”实时监测ETF品种,当达到条件后自动下单交易。

c5d9edc2efced618ac1808a8dcd42673.png

交易逻辑

db731500c9e712e098b3d0b26f00f769.png

在交易时间段,远程服务器自动运行“量化机器人”。‍‍‍‍

“量化机器人”监测的ETF品种如下:

"上证50ETF": "510050", "深成ETF": "159903", "沪深300ETF": "159919", "中小100ETF": "159902",  
"国企共赢ETF": "159719", "央企能源ETF": "562850", "央企ETF": "510060",  
"中证1000ETF": "159845", "中证2000ETF": "159531", "创业板指": "159915",  "纳指科技ETF": "159509",  
"美国50ETF": "513850", "法国ETF":"513080", "亚太精选":"159687", "纳指生物ETF": "513290",
"日经225ETF": "513000", "德国ETF": "513030", "法国CAC40ETF": "513080", "黄金ETF": "518860"

“量化机器人”采用60分钟级别MACD金叉死叉策略为例。‍‍‍‍

# 计算MACD指标
fast_period = 12 # 快速移动平均线周期
slow_period = 26 # 慢速移动平均线周期
signal_period = 9 # 信号线周期c
dif, dea, hist = talib.MACD(df_index_data['close'], fastperiod=fast_period, slowperiod=slow_period, signalperiod=signal_period)
list_diff = np.sign(dif - dea)
signal_diff = np.sign(list_diff - list_diff.shift(1))

“量化机器人”监测到有ETF符合买入条件时,查询交易账户是否有足够的资金能买入。当账户余额充足时,则立即以当前价格买入。

if self.ths.check_stock_is_av_buy(code, df_index_data['close'][-1], 1000, 5000) == True:
  self.ths.make_buy(code, df_index_data['close'][-1], 1000)

“量化机器人”监测到有ETF符合卖出条件时,查询交易账户是否有仓位要卖出。当账户有持有的仓位时,则立即以当前价格卖出。

if self.ths.check_stock_is_av_sell(code, 100) == True:
  self.ths.make_sell(code, df_index_data['close'][-1], 2000)

同时,“量化机器人”也会发送消息到我手机上,及时通知我。

auto_send_email(sys_para_dict['mailbox']['to_address'],
                '主人!你实时监测的ETF有最新消息!',
                send_cont,
                sys_para_dict['mailbox']['password'],  
                'smtp.qq.com',  # smtp.163.com
                    from_address=sys_para_dict['mailbox']['from_address']) #

ec5b4a0c29cddee2d1a29888962a7b31.png

效果展示

a35b1b300bb6e9fa2329cfe0567171bb.png

在今天实盘过程中,“量化机器人”下午2点15左右自动买入了1000股“深成ETF”:

45aacf8b8b41280a07a54e7962b54d28.png

e4c70272e21dd526081a5392ee347c68.jpeg

25f1cd5d404e2d5ff4d7ef8697612ba4.png

总结

7db5665aa9918cd8757d0a1cad184922.png

今天我们完成了闭环的全自动化的交易系统之后,接下去我们就可以来优化交易策略,打造一个可以赚钱的交易系统。

说明

此系列为连载专栏,完整代码会上传知识星球《玩转股票量化交易》!作为会员们的学习资料。

想要加入知识星球《玩转股票量化交易》的小伙伴记得先微信call我获取福利!

非星球会员需要的话,需要单独联系我购买!

知识星球介绍点击:知识星球《玩转股票量化交易》精华内容概览

24f8fdc1dc8f9e21c2bdff61241bd9fe.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1798139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

热搜爆了!AI秒写3篇湖南高考作文,邀你来打分!

今天上午 全国高考语文科目结束 作文题目成为焦点 相关话题立刻冲上热搜 今年湖南高考采用的是新课标 I 卷 作文题涉及到了人工智能 引发大量网友讨论 ↓↓↓ 随着互联网的普及、人工智能的应用,越来越多的问题能很快得到答案。那么,我们的问题是…

零基础入门学用Arduino 第一部分(一)

重要的内容写在前面: 该系列是以up主太极创客的零基础入门学用Arduino教程为基础制作的学习笔记。个人把这个教程学完之后,整体感觉是很好的,如果有条件的可以先学习一些相关课程,学起来会更加轻松,相关课程有数字电路…

编程规范-代码检测-格式化-规范化提交

适用于vue项目的编程规范 – 在多人开发时统一编程规范至关重要 1、代码检测 --Eslint Eslint:一个插件化的 javascript 代码检测工具 在 .eslintrc.js 文件中进行配置 // ESLint 配置文件遵循 commonJS 的导出规则,所导出的对象就是 ESLint 的配置对…

SG3225EEN贴片差分晶振可实现高频高精度的要求

在高速通信和高性能电子设备的发展中,高频高精度时钟源的需求日益增加。SG3225EEN贴片差分晶振以其出色的性能,满足了这一需求,成为这些应用领域的理想选择。SG3225EEN贴片差分晶振采用先进的制造工艺,提供高精度和低抖动的时钟信…

005.FashionMNIST数据集简介

一、FashionMNIST数据集简介 FashionMNIST数据集,作为经典的MNIST数据集的现代替代品的数据集,是衣物分类数据集,由Zalando(一家德国的在线时尚零售商)发布。 FashionMNIST数据集和MNIST相比。图片尺寸相同&#xff0c…

超声波风速仪—快速捕捉气象变化

TH-WQX2超声波风速仪,特别是在风力发电中作为风速风向仪的应用,是一种基于超声波原理测量风速和风向的设备。以下是对其特点、技术参数和应用的详细介绍: 特点 高精度测量:超声波风速风向仪利用超声波在空气中的传播速度随风速变化…

2024下《系统集成项目管理工程师》50个高频考点汇总!值得收藏

宝子们!5月软考考完了,终于可以考系统集成了! 整理了50个高频考点,涵盖全书90%考点,先把这个存下!再慢慢看书,边看书边背这个 1、信息安全的基本要素有: (1&#xff09…

爬取股票数据python

最近在搜集数据要做分析,一般的数据来源是一手数据(生产的)和二手数据(来自其他地方的)。 今天我们爬取同花顺这个网站的数据。url为:https://data.10jqka.com.cn/ipo/xgsgyzq/ 话不多说直接上代码。有帮…

前端框架前置知识之Node.js:fs模块、path模块、http模块、端口号介绍

什么是模块? 类似插件,封装了方法 / 属性 fs 模块- 读写文件 代码示例 // 1. 加载 fs 模块对象 const fs require(fs) // 2. 写入文件内容 fs.writeFile(./test.txt, hello, Node.js, (err) > {if (err) console.log(err) //若 err不为空&#xf…

26-LINUX--I/O复用-select

一.I/O复用概述 /O复用使得多个程序能够同时监听多个文件描述符,对提高程序的性能有很大帮助。以下情况适用于I/O复用技术: ◼ TCP 服务器同时要处理监听套接字和连接套接字。 ◼ 服务器要同时处理 TCP 请求和 UDP 请求。 ◼ 程序要同时处理多个套接…

工业无线通信解决方案,企业在进行智能化升级改造

某大型制造企业在进行智能化升级改造,需要将分布在各个车间的数控机床、自动化生产线、AGV小车等设备连接到云端,实现设备的远程监控、数据采集分析等功能。之前工厂内部是用工业以太网连接,存在布线难、成本高、灵活性差等问题。 在了解客户需求后,我司星创易联的工程师建议客…

png怎么变成jpg?教你3种方法一键批量转换

png怎么变成jpg?PNG转JPG在图像处理中扮演着重要的角色。除了能够显著减小文件大小,使图像更易于分享和传输外,这种转换还能确保图像在各种平台和设备上都能得到良好的展示效果。无论是网站加载速度的优化,还是移动设备上的流畅浏…

教师常用小程序分享

和大家分享几款超级实用的教学小程序,不仅能够提高我们的办公效率,还能让我们的教学生活变得更加轻松有趣。 腾讯文档:云端协作的利器 教学协作是必不可少的。腾讯文档小程序,就是云端协作的利器。支持多人在线编辑文档&#xff…

在Obsidian中插入目录的解决方案

常见的方案有floating toc插件。但是这个插件与另一个用于给导出pdf添加书签的插件Better Export PDF不兼容。 因此推荐另一个解决方案:Dynamic Table of Contents 此插件没有上架到社区插件市场,需要手动去github下载安装 GitHub - Aidurber/obsidia…

Stable diffusion采样器详解

在我们使用SD web UI的过程中,有很多采样器可以选择,那么什么是采样器?它们是如何工作的?它们之间有什么区别?你应该使用哪一个?这篇文章将会给你想要的答案。 什么是采样? Stable Diffusion模…

加密软件好用的是哪个?为什么这么多人说迅软DSE加密软件好用?

加密软件顾名思义就是用来对机密文件进行加密保护的,防止未经授权的人查看和篡改,保护公司的重要信息,预防泄露的事件发生,由此可见运用加密软件是有用的。那么,问题又来了哪款加密软件好呢?请看一下介绍。…

MySQL学习十:常用函数与常见题型总结(持续更新中)

目录 一、常用函数1.1 left 和 right 函数1.2 first_value 函数1.3 timestampdiff 函数1.4 datediff 函数1.4 date_sub 和 date_add 函数 二、常见题型2.1 查询新登录用户总体的次日留存率(第一天新登录的总体用户,第二天再次登录的总体用户)…

Docker部署深度学习模型

基础概念 Docker Docker是一个打包、分发和运行应用程序的平台,允许将你的应用程序和应用程序所依赖的整个环境打包在一起。比如我有一个目标检测的项目,我想分享给朋友,那么他首先需要在自己的电脑上配置好显卡驱动、CUDA、CuDNN&#xff…

NC56 入库失败提示负库存解决方法

前言 公司的 NC ERP 接入了第三方系统进行出入库单据管理。用户反馈提交入库单据时、NC ERP 报错【负库存或辅数量方向不一致】。于是进行排查和解决。 操作环境 NC ERP V56 。操作系统 Windows 11 ,数据库 Oracle DB 。 操作步骤 1、查询 NC “收发存汇总表”…

前端 | 燃尽图绘制

文章目录 &#x1f4da;实现效果&#x1f4da;模块实现解析&#x1f407;html&#x1f407;css&#x1f407;javascript &#x1f4da;实现效果 &#x1f4da;模块实现解析 &#x1f407;html 搭框架<div id"LINE2"><div id"cloudtitle">TED…