当前位置: 首页 > news >正文

【深度学习量化交易1】一个金融小白尝试量化交易的设想、畅享和遐想

关注我的朋友们可能知道,我经常在信号处理的领域出没,时不时会发一些信号处理、深度学习科普向的文章。

不过算法研究久了,总想做一些更有趣的事情。

比如用深度学习算法赚大钱。。毕竟有什么事情能比暴富更有意思呢。

一、神经网络与彩票梦

那还是在上大学期间的一个午后,宿舍邻座的舍友在捣鼓MATLAB编程,他说他在研究使用神经网络算法做彩票预测,我闻之大惊。当时互联网还未像当今这样发达,神经网络算法还是新兴概念,在一个刚上大学还处于蒙圈阶段的愣头青(也就是我)的理解中,神经网络这种模拟人类生物学特征的算法,这种可以自主学习的算法,这种据说可以拟合一切的算法,预测彩票也不是不可能的吧!

打开知网,搜索“神经网络彩票预测”,还真的找到了佐证!

从论文中的效果来看,这准确率高的很呐[1]。

这要是能复现出来,年纪轻轻的我岂不是可以财务自由了?

不知道是幸还是不幸,论文中的“BP神经网络”像是一座难以逾越的山,十几年前的互联网可没有知乎或者B站这么便捷的学习手段,满腹疑惑也无人能解答,彩票事业就此搁浅。

此后我也逐渐明白,彩票结果都是随机数,每次开奖都是独立事件,是不可被预测的。但是奈何诱惑太大啊:万一成了呢!

直到去年,编程实现类似的预测算法已经不是难事了,再加上爬虫、网页前端后端、服务器搭建这些技术也都掌握了,于是重新拾起封存的暴富梦,把实时彩票自动预测的整个流程终于实现了出来:

首先,选择了一种简单的彩票种类——福彩3D。这个彩票每天(除了周末)都会开奖,有更大的数据量;他开出来的数字只有3位,预测起来更加简单;中奖不需要数字顺序完全一致,中奖概率也更高。只不过奖金也相应低很多。

第二,算法上也鸟枪换炮,都21世纪第3个十年了,肯定不能还用BP神经网络,我选用了LSTM长短时记忆神经网络。

第三,我在不用的服务器上搭建了定时服务,每天凌晨会自动获取当天的开奖号码,核对中奖情况,并将新的数据纳入到训练数据中预测下一次开奖号码。

这个程序一直在运行,今天他的预测结果如下:

程序跑了大半年,单选和组选各预测中了一次,组选的那次买了,小挣了173元。

当然,这个结果基本就是蒙上的了,指望这个办法财务自由终究是不靠谱。

二、深度学习与量化交易

彩票预测从原理上就否定了预测成功的可能性,但是使用深度学习炒股能不能行呢?

毕竟Alpha Go都能在围棋领域打败李世石,那我有没有可能创造出一个Beta GoGoGo打败巴菲特呢?

对此我做了一些准备:

第一,开了一个股票账户,放入了少量资金熟悉交易规则,并体验了一把2700点保卫战。

第二,开通了某证券公司的QMT,因为像米筐这些平台难以实现深度学习的量化交易,而我需要的其实只有行情数据获取以及交易接口,剩下的都可以手动搭建,使用miniQMT自建交易系统是灵活性最大的一种实现方案。

第三,买了一张4090[手动狗头],工欲善其事必先利其器嘛。

2.1 关于交易框架的设想

1.关于交易对象。听说期货市场是量化交易的热门领域,因为T+0的规则更适合量化交易的实施,不过期货开户的门槛比较高,我当前只能开通A股主板权限,创业板都够不到,更不要说期货了。所以后续一段时间的策略都是限制在股票市场中的。

2.关于策略类型。高频交易需要专业的网络和交易设备,所以这个方向基本放弃了。我将采取更加接近传统交易的中低频量化投资方法,以智取胜。

3.关于运行环境。我将程序部署在自建的服务器上,开盘期间自动执行获取大盘数据,自动执行策略运算,自动交易,并进行持仓情况和收益率的可视化展示。

2.2 关于交易策略的畅想

在之前研究信号处理的过程中,本人也积累了一些算法经验,就当前有限的算法理解和股票市场的认识,交易策略考虑从这几个角度切入:

1.多元回归预测。股价是由市场上诸多因素共同影响的结果,将所有数据都纳入考虑和训练的范围是不现实的。我所想到的第一个策略,是利用前一个交易日接近收盘时的数据(如价格、成交量、技术指标等)作为输入,训练一个回归预测模型,以预测第二天的收盘收益率。这种策略的优势在于利用了近邻数据较强的相关性,模型训练起来可能会相对简单,并且可以将交易时段都放到收盘前的一小段时间几种处理。

2.事件驱动策略。网络上的舆情和热点事件往往对股票价格有显著的影响。通过收集和分析这些舆情数据,可以有效地捕捉市场情绪,制定相应的交易策略。就像在《脱口秀大会5》节目上,脱口秀演员House讲了他投资“600759”股票的经历,引发该股票从开盘便一路涨停。

3.时间序列预测。利用时间序列数据的自相关性,通过分析股票的历史价格数据,建立模型预测未来的价格走势。时间序列预测有着多样的算法工具,例如ARIMA、LSTM等等。

以上策略也可以共同发挥作用。

2.3 关于财务自由的遐想

工程实践不同于学术研究,其中有太多细节和特殊情况需要考虑,为实现上述设想和畅想,必定需要不懈的付出。

为了给自己打打鸡血,做一做白日梦也是有必要的。

前一段时间抖音上刷到了这样一张图:

如果每个时点都能踩对,一年时间财务自由不是梦!

当然咱也没有这么大的野心,能有1000万也就心满意足啦!

结语

今天开始,我将一步步记录后续做量化交易的实现过程,既是对纷繁的思路的归纳梳理,也是为推动这项一个人的赚钱大业增加一些鞭策激励。

读者朋友们如果有好的想法欢迎一起讨论~

参考

  1. ^涂晔, 车文刚. BP 神经网络在福利彩票预测中的应用[J]. 2009 国际信息技术与应用论坛论文集 (上), 2009.

相关文章:

【深度学习量化交易1】一个金融小白尝试量化交易的设想、畅享和遐想

关注我的朋友们可能知道,我经常在信号处理的领域出没,时不时会发一些信号处理、深度学习科普向的文章。 不过算法研究久了,总想做一些更有趣的事情。 比如用深度学习算法赚大钱。。毕竟有什么事情能比暴富更有意思呢。 一、神经网络与彩票…...

【0基础学爬虫】爬虫基础之自动化工具 DrissionPage 的使用

概述 前三期文章中已经介绍到了 Selenium 与 Playwright 、Pyppeteer 的使用方法,它们的功能都非常强大。而本期要讲的 DrissionPage 更为独特,强大,而且使用更为方便,目前检测少,强烈推荐!!&a…...

c++_0基础_讲解7 练习

这一讲我为大家准备了几道题目,大家试着独自做一下(可能来自不同网站) 整数大小比较 - 洛谷 题目描述 输入两个整数,比较它们的大小。若 x>yx>y ,输出 > ;若 xyxy ,输出 &#xff…...

docker一些常用命令以及镜像构建完后部署到K8s上

docker一些常用命令以及镜像构建完后部署到K8s上 1.创建文件夹2.删除文件3.复制现有文件内容到新建文件4.打开某个文件5.查看文件列表6.解压文件(tar格式)7.解压镜像8.查看镜像9.删除镜像10.查看容器11.删除容器12.停止运行容器13.构建镜像14.启动容器15…...

在typora中利用正则表达式,批量处理图片

一,png格式 在 Typora 中批量将 HTML 图片标签转换为简化的 Markdown 图片链接,且忽略 alt 和 style 属性,可以按照以下步骤操作: 打开 Typora 并加载你的文档。按下 Ctrl H(在 Windows/Linux 上)或 Cmd…...

构建LangChain应用程序的示例代码:33、如何在LangChain框架中使用HumanInputChatModel来模拟人工输入的聊天模型教程

除了HumanInputLLM,LangChain还提供了一个伪聊天模型类,可以用于测试、调试或教育目的。这允许您模拟对聊天模型的调用,并模拟如果人类接收到这些消息会如何响应。 在这篇笔记中,我们将介绍如何使用这个模型。 我们首先在代理中…...

虚拟机使用桥接模式网络配置

1、获取本机的网络详细信息 windowr 输入cmd 使用ipconfig -all 一样即可 在自己的虚拟机中设置网络 虚拟机中的ip ---------192.168.36.*,不要跟自己的本机ip冲突 网关-----------192.168.36.254 一样即可 dns -----------一样即可,我多写了几个&am…...

韩顺平0基础学java——第24天

p484-508 System类 常见方法 System.arrycopy(src,0,dest,1,2); 表示从scr的第0个位置拷贝2个,放到目标数组索引为1的地方。 BigInteger和BigDecimal类 保存大整数和高精度浮点数 BigInte…...

leecode N皇后

深度优先遍历,然后回溯 思考得到的技巧: 1.先思考怎么用学过的数据结构解题 2.回溯不只需要知道最后一步,还需要知道之前所走的每一步 3. 棋盘的生成,.join([]),可以变列表为字符串 看题解得到的技巧: 1.妙啊&#xf…...

2024050802-重学 Java 设计模式《实战模板模式》

重学 Java 设计模式:实战模版模式「模拟爬虫各类电商商品,生成营销推广海报场景」 一、前言 黎明前的坚守,的住吗? 有人举过这样一个例子,先给你张北大的录取通知书,但要求你每天5点起床,12点…...

UNIAPP-ADB无线调试

ADB下载 SDK 平台工具版本说明 | Android Studio | Android Developers (google.cn) 环境变量配置 ADB版本查看 adb version 手机使用数据线连接到电脑 手机需要授权adb调试(开发人员选项里面) CMD输入命令 adb tcpip 5555 到了这一步你手机已经启动了adb服务了&…...

【stm32-新建工程】

stm32-新建工程 ■ 下载相关STM32Cube官方固件包(F1,F4,F7,H7)■ 1. ST官方搜索STM32Cube■ 2. 搜索 STM32Cube■ 3. 点击获取软件■ 4. 选择对应的版本下载■ 5. 输入账号信息■ 6. 出现下载弹框,等待下载…...

写点什么吧,作为STM32系列的开篇……

自从本科毕业后,就再也没碰过单片机…… 自从研究生毕业后,就再也没碰过硬件…… 自以为以前单片机玩的熟得很,特别是ATMEGA系列的AVR单片机,由于老师的推荐,本科时花了好多精力在这个系列单片机上面…… 本科时STM…...

代码随想录算法训练营第十天| 232.用栈实现队列|225. 用队列实现栈|20. 有效的括号|1047. 删除字符串中的所有相邻重复项

232.用栈实现队列 文档讲解:代码随想录 视频讲解:栈的基本操作! | LeetCode:232.用栈实现队列_哔哩哔哩_bilibili 知道要用两个栈实现,具体咋做忘了。队列的特性是先进先出,栈是先进后出,入队操…...

Pulsar 社区周报 | No.2024-06-07 | Apache Pulsar 新分支 3.3 版本发布

“ 各位热爱 Pulsar 的小伙伴们,Pulsar 社区周报更新啦!这里将记录 Pulsar 社区每周的重要更新,每周发布。 ” 本期主题:Apache Pulsar 新分支 3.3 版本发布 Apache Pulsar 新分支 3.3 版本发布:Apache Pulsar 3.3.0[1…...

Go源码--sync库(3):sync.Pool(2)

回收 回收其实就是将 pool.local 置为空 可以让垃圾回收器回收 我们来看下 源码 func init() {// 将 poolCleanup 注册到 gc开始前的准备工作处理器中在 STW时执行runtime_registerPoolCleanup(poolCleanup) }这里注册了清理程序到GC前准备工作 也就是发生GC前需要执行这段代…...

Go如何在本地引用以及发布并引用自定义工具包

如何引用本地自定义工具包 我们首先要准备两个项目,分别为需要引入的工具包和当前项目。 myutils、myproject1. myutils为我们的项目1-工具包 package mypakgeimport "strings"func IsContains(s string) bool {if strings.Contains(s, "a")…...

使用了代理IP怎么还会被封?代理IP到底有没有效果

代理IP作为一种网络工具,被广泛应用于各种场景,例如网络爬虫、海外购物、规避地区限制等。然而,很多用户在使用代理IP的过程中却发现自己的账号被封禁,这让他们不禁产生疑问:使用了代理IP怎么还会被封?代理…...

在WSL2的Ubuntu中安装和使用Docker/Podman

在WSL2的Ubuntu中安装和使用Docker/Podman 0. 目的 当网络环境良好(例如在公司,能直接访问Google等)时, Docker/Podman 安装和使用不是问题。 当网络环境不佳(例如在家里),要把 WSL2 的 Ubun…...

【WEEK16】Learning Objectives and Summaries【Spring Boot】【English Version】

Learning Objectives: Learning SpringBoot Learning Content: Reference video tutorials【狂神说Java】SpringBoot最新教程IDEA版通俗易懂Dubbo and Zookeeper Integration Learning time and outputs: Week16 TUE~FRI 2024.6.11【WEEK16】 【DAY2】Dubbo和Zookeeper集成第…...

AI大模型会让搜索引擎成为历史吗?

AI大模型会让搜索引擎成为历史吗? 随着人工智能技术的不断发展,AI大模型已经在许多领域展现出了强大的能力。从自然语言处理到图像识别,AI大模型的应用越来越广泛。在这种背景下,有人开始提出一个问题:AI大模型是否可…...

SpringSecurity6从入门到实战之SpringSecurity6自定义认证规则

SpringSecurity6从入门到实战之SpringSecurity6自定义认证规则 Spring Security 中默认所有的 http 请求都需要先认证通过后,才能访问。那么, 如何指定不需要认证就可以直接访问的资源呢?比如 用户的登录页面和注册页面,都是不需要…...

Java IO:byte[]、char[]、String三种对象的转换

String与byte[]对象进行转换时应指定编码格式,否则有潜在的乱码问题。byte[] b s.getBytes(“utf-8”); String s new String(b,“utf-8”); Java的IO库提供了专门的管道来对这3个对象进行读写,他们是StringReader/Writer CharArrayReader/Writer Byt…...

Elasticsearch:简化数据流的数据生命周期管理

作者:来自 Elastic Andrei Dan 今天,我们将探索 Elasticsearch 针对数据流的新数据管理系统:数据流生命周期,从版本 8.14 开始提供。凭借其简单而强大的执行模型,数据流生命周期可让n 你专注于数据生命周期的业务相关方…...

Verilog综合出来的图

Verilog写代码时需要清楚自己综合出来的是组合逻辑、锁存器还是寄存器。 甚至,有时写的代码有误,vivado不能识别出来,这时打开综合后的schematic简单查看一下是否综合出想要的结果。 比如:误将一个always模块重复一遍,…...

KT-H6测距模块标品,测距范围1500m,demo报价1000RMB,批量报价500RMB

激光测距传感器是一种用于测量距离的模块,通常由传感器和相关电子设备组成,测距模块可以集成到各种设备和系统中,以实现准确的测距和定位功能。KT-H6系列激光测距模块,为自主研发,激光波长905nm的激光器,专为热成像、夜视仪、无人机、安防、瞄具等产品定身打造,其优点是…...

C数据结构:排序

目录 冒泡排序 选择排序 堆排序 插入排序 希尔排序 快速排序 hoare版本 挖坑法 前后指针法 快速排序优化 三数取中法 小区间优化 快速排序非递归 栈版本 队列版本 归并排序 归并排序非递归 ​编辑 计数排序 各排序时间、空间、稳定汇总 冒泡排序 void Bub…...

【Python】在 Pandas 中使用 AdaBoost 进行分类

我们都找到天使了 说好了 心事不能偷藏着 什么都 一起做 幸福得 没话说 把坏脾气变成了好沟通 我们都找到天使了 约好了 负责对方的快乐 阳光下 的山坡 你素描 的以后 怎么抄袭我脑袋 想的 🎵 薛凯琪《找到天使了》 在数据科学和机器学习的工作…...

持续总结中!2024年面试必问 20 道并发编程面试题(九)

上一篇地址:持续总结中!2024年面试必问 20 道并发编程面试题(八)-CSDN博客 十七、请解释什么是Callable和FutureTask。 Callable和FutureTask是Java并发API中的重要组成部分,它们用于处理可能产生结果的异步任务。 …...

Linux:线程池

Linux:线程池 线程池概念封装线程基本结构构造函数相关接口线程类总代码 封装线程池基本结构构造与析构初始化启动与回收主线程放任务其他线程读取任务终止线程池测试线程池总代码 线程池概念 线程池是一种线程使用模式。线程过多会带来调度开销,进而影…...

wap网页编写/seo新人怎么发外链

1. 创建版本库 1.1 创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: 1.2通过git init命令把这个目录变成Git可以管理的仓库(git进入空目录的路径) $ git init Initialized empty Git repo…...

济南网站建设公司有哪些/百度seo快速见效方法

OpenVAS漏洞扫描基础教程之创建用户 OpenVAS管理服务 默认情况下,OpenVAS服务仅创建了一个名为admin的用户,而且是管理员用户(拥有最高的权限)。如果想要其它客户端登陆的话,不可能都以管理员身份访问,否则…...

天津做网站的公司排名/好用的磁力搜索引擎

数据结构复习题(绪论)绪论选择题填空题简答题判断题绪论 选择题 线性结构中数据元素的位置之间存在( A )的关系 A.一对多 B.一对一 C.多对多 D.每一个元素都有一个直接前驱和一个直…...

网上购物网站开发的目的/网站优化网站

《完整版MM1排队系统仿真matlab实验报告》由会员分享,可在线阅读,更多相关《完整版MM1排队系统仿真matlab实验报告(9页珍藏版)》请在人人文库网上搜索。1、M/M/1排队系统实验报告一、实验目的本次实验要求实现M/M/1单窗口无限排队系统的系统仿真&#xf…...

济宁教育平台网站建设/公司建网站需要多少钱

1.字符串用引号括起来的就是字符串,包括单双引号name "what is your name?"print(name.title()) //title函数输出字符串首字母大写print(name.upper()) //全部大写print(name.lower()) //全部小写 2.合并(链接)字符串 first_name…...

学网站建设 赚钱/女装标题优化关键词

我们来看看未来区块链技术会怎样影响我们的生活。20年后的某一天,M国总统大选正在如火如荼地进行,你把智能手表调到投票界面,看了下选举人:今年好像没什么有特色的竞选人啊。李查得?没意思,一个中规中矩的政…...