常见算法优劣比较

算法没有最好,只有更好。 这个问题的答案取决于许多因素,例如股票市场的条件,数据集的质量和特征工程的有效等。接下来,我们来看看这些算法的优势和劣势:

神经网络:适用于复杂的非线性问题,可以有效地捕捉市场的非线性特征和复杂关系。

决策树:适用于数据量较小、特征维度较少的情况,可以很好地解释模型的决策过程。

随机森林:适用于处理高维度、复杂数据集,具有很好的鲁棒性和准确性。

支持向量机:适用于数据量较小、特征维度较高的情况,可以有效地处理非线性和线性可分问题。

正常情况下,在处理少量的股票量价数据的时候,stockranker排序算法就已经有很好的表现,初步制定策略的时候不妨先考虑从stockranker下手(BigQuant量化交易平台可支持stockranker策略)。

如何选择算法

然而,一般来说,深度学习算法比机器学习算法可能会获得更好的收益和效果。 原因如下:

深度学习算法对于非线性模型的拟合效果更好。在选股策略中,非线性模型更符合实际情况。

深度学习算法可以处理更复杂的数据结构。 对于股票数据,深度学习算法可以更好地挖掘和处理时间序列数据,自然语言处理和图像数据等多种数据结构。

深度学习算法可以进行端到端学习。深度学习算法可以直接从原始数据中进行学习,而不需要进行手动特征工程,这样可以更好地挖掘数据的潜在信息。

但是,在实际场景中,对于某些较为单一的选股条件,或者特征因子,没有经过大量细节优化修正的神经网络模型,效果有可能不及预期。(回测乃至实盘的绩效甚至不如普通的机器学习模型,模型对收益率的可解释性不强,难以验证)

我们来看看一些主流的机器学习算法 对相同的特征因子训练后的收益表现图:

训练集:14-2018年-01-14

测试集: 18-2019-01-10

日频调仓:每天1只股票半仓轮动

StockRanker VS DNN

我们可以看到下面的stockranker回测图,stockranker算法 的回测净值收益达到 1.3 高于 svm算法净值 1.2 。

与此同时,我们同样可以看出在相同的因子和训练数据中,未经过深度调整的DNN神经网络模型表现不佳,回测收益为负数。
StockRanker表现(文末获取源码)

DNN表现

从对比结果上来看:理论上深度学习算法的上限很高,同时下限也很低。如果从稳定性和实用性来讲,我们较多会选用stockranker这样的算法来制作选股策略。

综上所述,深度学习算法可能会获得更好的收益和效果。但是,需要注意的是,深度学习算法的学习过程通常需要较长时间,并且需要更多的计算资源。因此,在实际应用中,需要评估复杂性和可行性,并根据具体情况选择适当的算法。
From:如何给策略选择最佳的算法 - AI量化知识库 ,原地址可以领取源码。

算法那么多,AI量化交易策略如何选择最佳算法?的更多相关文章

  1. 3. 量化交易策略 - https://github.com/3123958139/blog-3123958139/README.md

    3. 量化交易策略 * 输入数据 - 只取最原始可靠的,如 * date * open * high * low * close * volume * 输出数据 - 根据数理统计取权重,把 o, h, ...

  2. 金融量化分析【day112】:量化交易策略基本框架

    摘要 策略编写的基本框架及其实现 回测的含义及其实现 初步学习解决代码错误 周期循环的开始时间 自测与自学 通过前文对量化交易有了一个基本认识之后,我们开始学习做量化交易.毕竟就像学游泳,有些东西讲是 ...

  3. 股票数据获取到了,导入MT4中,是否可以做出很好的量化交易策略呢?

    寻找了很久,看到有tushare这个python的类库,但研究了几个小时都没有研究明白,anaconda安装和pycharm的使用都不是特别顺手,最后也是失败告终.还有就是我的低配的平板suerfac ...

  4. QuantStart量化交易文集

    Over the last seven years more than 200 quantitative finance articles have been written by members o ...

  5. 量化投资学习笔记01——初识Pyalgotrade量化交易回测框架

    年初学习量化投资,一开始想自己从头写,还是受了C/C++的影响.结果困在了计算回测数据那里,结果老也不对,就暂时放下了.最近试了一下python的各个量化投资框架,发现一个能用的——pyalgotra ...

  6. python做量化交易干货分享

    http://www.newsmth.NET/nForum/#!article/Python/128763 最近程序化交易很热,量化也是我很感兴趣的一块. 国内量化交易的平台有几家,我个人比较喜欢用的 ...

  7. Python量化交易

    资料整理: 1.python量化的一个github 代码 2.原理 + python基础 讲解 3.目前发现不错的两个量化交易 学习平台: 聚宽和优矿在量化交易都是在15年线上布局的,聚宽是15年的新 ...

  8. 深入浅出 1 - AI量化策略快速理解

      我们在用AI来编写量化策略过程中,主要用到了机器学习,先来从一张图直观理解什么是机器学习:人类对新问题做出有效决策依靠的是过去积累的许多经验,并对经验进行利用,而对机器来说,“经验”以“数据”方式 ...

  9. 量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python)(转)

    量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python) 原文地址:http://blog.csdn.net/u012234115/article/details/728300 ...

  10. Python进阶量化交易场外篇4——寻找最优化策略参数

    新年伊始,很荣幸笔者的<教你用 Python 进阶量化交易>专栏在慕课专栏板块上线了,欢迎大家订阅!为了能够提供给大家更轻松的学习过程,笔者在专栏内容之外会陆续推出一些手记来辅助同学们学习 ...

随机推荐

  1. # 简明快速配置 Rust 工具链

    以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/dBzL9WZ8P1L1X9j_XkmNQg 你可能会为不同版本的工具 ...

  2. mpi转以太网连接300PLC在气动系统中的应用

    mpi转以太网连接300PLC在气动系统中的应用 某企业装备有限公司 摘要 工业通讯迅速发展的今天,MPI转以太网通讯已经发展为成熟,稳定,高效通讯 方式,兴达易控自主研发的MPI转以太网模块MPI- ...

  3. SQL函数union,union all整理

    SQL集合函数--并集union,union all 本次整理从4个方面展示union函数,union all函数的风采: 1.集合函数使用规则 2.集合函数作用 3.数据准备及函数效果展示 首先1. ...

  4. 10.4 认识Capstone反汇编引擎

    Capstone 是一款开源的反汇编框架,目前该引擎支持的CPU架构包括x86.x64.ARM.MIPS.POWERPC.SPARC等,Capstone 的特点是快速.轻量级.易于使用,它可以良好地处 ...

  5. 一套基于 .NET Core 开发的支付SDK集 - paylink

    前言 在我们的日常工作开发中对接一些第三方支付是比较常见的,如最常见的就是支付宝.微信支付的对接.今天给大家推荐一个基于.NET Core开发的支付SDK集:paylink,它极大简化了API调用及通 ...

  6. 04-Shell字符串变量

    1. 字符串变量的三种方式 字符串(String)就是一系列字符的组合.字符串是 Shell 编程中最常用的数据类型之一(除了数字和字符串,也没有其他类型了) 单引号方式 双引号方式, 推荐 不用引号 ...

  7. 使用VSCode新建解决方案,添加ClassLib类库工程

    最近准备全面转向VSCode开发C#代码,所以第一件事就是使用VSCode新建解决方案,添加工程. 通过ChatGPT找到的大致的实现方案: 首先,打开VS Code的终端,然后导航到您想要创建解决方 ...

  8. 文心一言 VS 讯飞星火 VS chatgpt (118)-- 算法导论10.3 3题

    三.用go语言,在ALLOCATE-OBJECT和 FREE-OBJECT过程的实现中,为什么不需要设置或重置对象的 prev 属性呢? 文心一言: 在 Go 语言中,ALLOCATE-OBJECT ...

  9. VK Cup 2016 - Round 1 (CF639)

    A. Bear and Displayed Friends Div2 的题,不写. B. Bear and Forgotten Tree 3 这种东西怎么评蓝的? Description 给定 \(n ...

  10. My Code Style

    大家都在写,跟风. 头文件 万能头.因为我刚学 OI 的时候怎么都背不住 algorithm 怎么拼( 变量 数组开全局,一些前后重名/只在某一部分用的变量开局部. 尽量不使用指针/ stl 迭代器等 ...