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

那么机器学习到底要经历哪几个步骤,我们如何用机器学习来构建一个完整的量化策略,下面,我们通过一个生活中的样例,来类比AI量化策略的工作流程,来帮助大家快速理解AI量化策略:

老王挑瓜

我们接到了隔壁老王求助:要我们帮他去瓜田判断一堆西瓜的好坏,并且需要在保证正确率的情况下独自完成。如果我们对此毫无经验,那我们应该如何应对呢?大家可以先思考一下再与下面步骤进行对比。

  • 第一步:明确目标,获取资源
    首先我们应明确目标,就是判断出这堆西瓜好坏,为了达到这个目标,我们应该先去另找来一堆西瓜用来学习,来积累判断西瓜好坏的经验。

  • 第二步:资源划分
    接下来我们要把找来的这些瓜分成两堆,其中第一堆瓜用来练手总结规律,为了确保我们总结的规律是真实可靠的,我们用第二堆瓜来验证我们总结的规律。

  • 第三步:观察学习

    • 针对第一堆瓜,我们首先通过观察和思考,挑选出一些可能影响瓜好坏瓜的特征也可以称为属性,例如颜色、大小、产地、纹理等;
    • 之后,我们不断观察每个瓜的这些特征并切瓜来验证每个瓜的好坏并进行记录;
    • 现在我们获取了每个瓜的特征与其对应的好坏结果,我们需要通过不断总结归纳找到瓜的好坏与瓜的属性之间的关联,最后制定一套标准的判断模型,就是我们的经验。
  • 第四步:预测
    此时我们需来验证我们上面总结的经验是否满足要求,我们拿第二堆瓜来验证,根据第二堆瓜的颜色、大小、产地等特征来预测第二堆瓜的好坏。

  • 第五步:检验
    最后,在预测环节中我们得出了每个西瓜的预测结果,为了检验我们预测结果是否准确,我们需要切瓜来验证我们的预测值是否与真实情况相符。

这一过程我们可以表示为流程图:

image.png828x513 21.5 KB

AI量化策略构建流程

类比上述挑瓜过程,我们可以对AI量化策略流程进行分解:

  • 第一步:明确目标,获取数据
    首先我们要明确我们模型的训练目标,是A股还是港股,就好比是西瓜还是苹果;是预测股票收益率高低还是波动率高低,就好比是预测西瓜好坏还是年份。确定后获取股票或其他数据。

AI量化策略的目标(Label):人为定义的模型预测目标,例如未来N日收益率、未来N日波动率、未来N日的收益率排序等统计量,平台AI量化策略默认使用股票收益率作为目标。

  • 第二步:数据划分
    接着我们把历史数据按时间顺序切分为两部分,类比于分瓜任务中的两堆瓜。

训练集: 第一部分的数据用来训练模型,类比第一堆瓜;
验证集: 第二部分的数据用来验证模型效果,类比第二堆瓜;

  • 第三步:选取特征,进行标注

    • 选择构建可能影响目标的特征,如模板策略中的return_5(5日收益)、return_10(10日收益)等,类比于瓜的产地、大小等特征。
    • 对目标结果进行标注,类比于切瓜后记录每个瓜的好坏,样例模板中,我们用5日收益率高低来定义股票的走势好坏等级,并将每只对应等级标记在每只股票上。

AI量化策略的特征(features): 反映事物在某方面的表现或性质的事项,在AI量化策略中,特征可以是换手率、市盈率、KDJ技术指标等等

AI量化策略的标注: 我们计算训练集数据所在时间阶段的每日目标值,比如按每日的未来N日收益率高低来定义股票的走势好坏等级,计算出每只股票未来N日收益率的好坏等级并标记在每只股票上。

  • 第四步:模型训练
    我们通过“好坏等级”对股票进行标注贴上标签,连同其所对应的特征值一起来构建训练模型,类比于上述我们获取了第一堆瓜的大小、颜色等特征数据以及对应切瓜验证其’“好坏”标签,总结出瓜的分类经验;

  • 第五步:预测
    用验证集数据来检验训练前面构建好的模型,即检验模型根据验证集的特征数据预测出的目标值(股票走势好坏等级)是否准确。这步类比于鉴瓜任务中根据第一堆瓜总结的鉴瓜经验用第二堆西瓜的大小、颜色等特征数据来判断预测瓜的好坏。

  • 第六步:回测
    将验证集的预测结果放入历史真实数据中检测,类比于鉴瓜过程中根据第二堆瓜预测出瓜的好坏最后进行切瓜验证。

因此,AI量化策略的构建过程也可以用流程图的方式表达如下:

认识了机器学习流程和AI量化策略流程,就能够理解BigQuant平台的BigStudio实验工作流。BigStudio实验工作流是AI量化策略在BigStudio上的可视化展示。一个典型的AI可视化量化策略流程图如下:

可视化.png1106x761 52.7 KB

简单划分:

 

具体而言:

  • 策略流程图的左支是训练集特征数据(features)的抽取训练集目标(label)的标注,标注结果和训练集特征数据通过合并和数据缺失值清洗处理,然后传给机器学习模型进行模型训练。

  • 策略流程图的右支是测试集特征数据的抽取,通过缺失值清洗处理,然后传给机器学习模型进行预测,这里机器学习模型采用StockRanker模型,是一个排序模型,预测的结果是每日的股票排名。

  • 这个排名列表即预测结果最后传给回测模块按一定的规则进行买卖模拟交易,进行检测。

以上就是一个AI量化策略构建大体流程,初学者可先尝试修改特征值来寻找有效因子,往往好的因子组合是策略成功的关键。

快来新建一个人工智能量化策略检测一下你的学习成果吧,在新建策略过程中,回想一下每一步操作对应我们上述的第几步,掌握后,你已经可以超越60%的传统交易员啦,快快行动起来!

深入浅出 1 - AI量化策略快速理解的更多相关文章

  1. 数字货币期货与现货JavaScript量化策略代码详解汇总

    1.动态平衡策略 按照当前的 BTC 的价值,账户余额保留¥5000 现金和 0.1个 BTC,即现金和BTC 市值的初始比例是 1:1. 如果 BTC 的价格上涨至¥6000,即 BTC 市值大于账 ...

  2. 快速理解高性能HTTP服务端的负载均衡技术原理(转)

    1.前言 在一个典型的高并发.大用户量的Web互联网系统的架构设计中,对HTTP集群的负载均衡设计是作为高性能系统优化环节中必不可少的方案.HTTP负载均衡的本质上是将Web用户流量进行均衡减压,因此 ...

  3. 三分钟玩转微软AI量化投资开源库QLib

    更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流. 微软QLib简介 微软亚洲研究院发布了 AI 量化投资开源平台"微矿 Qlib".Q ...

  4. Beam Search快速理解及代码解析

    目录 Beam Search快速理解及代码解析(上) Beam Search 贪心搜索 Beam Search Beam Search代码解析 准备初始输入 序列扩展 准备输出 总结 Beam Sea ...

  5. 【转】快速理解Kafka分布式消息队列框架

     from:http://blog.csdn.net/colorant/article/details/12081909 快速理解Kafka分布式消息队列框架 标签: kafkamessage que ...

  6. Spark机器学习 Day2 快速理解机器学习

    Spark机器学习 Day2 快速理解机器学习 有两个问题: 机器学习到底是什么. 大数据机器学习到底是什么. 机器学习到底是什么 人正常思维的过程是根据历史经验得出一定的规律,然后在当前情况下根据这 ...

  7. 快速理解web语义化

    什么是Web语义化 Web语义化是指使用恰当语义的html标签.class类名等内容,让页面具有良好的结构与含义,从而让人和机器都能快速理解网页内容.语义化的web页面一方面可以让机器在更少的人类干预 ...

  8. 脑残式网络编程入门(四):快速理解HTTP/2的服务器推送(Server Push)

    本文原作者阮一峰,作者博客:ruanyifeng.com. 1.前言 新一代HTTP/2 协议的主要目的是为了提高网页性能(有关HTTP/2的介绍,请见<从HTTP/0.9到HTTP/2:一文读 ...

  9. 字符编码那点事:快速理解ASCII、Unicode、GBK和UTF-8

    原作者:阮一峰(ruanyifeng.com),现重新整理发布,感谢原作者的无私分享. 1.引言 今天中午,我突然想搞清楚 Unicode 和 UTF-8 之间的关系,就开始查资料. 这个问题比我想象 ...

随机推荐

  1. BZOJ1439 : YY的问题

    考虑容斥,枚举哪些不存在的边选中了,剩下的不管,则可以用组合数计算方案数. 时间复杂度$O(m2^m+nm)$. #include<cstdio> const int N=550,B=10 ...

  2. BZOJ3945 : 无聊的邮递员

    因为两个人方案的对称性,可以将$k$除以$2$,转化为在$n-1$个间隔中设置若干断点,求第$k$小的增量. 对于选中的相邻的断点$(a,a+1)$和$(b,b+1)$,增量为$|x_a-x_{b+1 ...

  3. C# Web API Modify Post Data Size Limit

    在Web.config中增加下面两个配置后,重启IIS即可. 1.修改http请求数据大小限制 <system.web>  <httpRuntime maxRequestLength ...

  4. phpExcel导入大数据量情况下内存溢出解决方案

    PHPExcel版本:1.7.6+ 在不进行特殊设置的情况下,phpExcel将读取的单元格信息保存在内存中,我们可以通过 PHPExcel_Settings::setCacheStorageMeth ...

  5. goland 中国 caisy qq Czx123456

    goland 中国 caisy  qq  Czx123456

  6. db2报错 Operation not allowed for reason

    1.DB2数据库表操作错误SQL0668N Operation not allowed for reason code "1" on table "XXXX". ...

  7. 【倍增】Tak and Hotels II @ABC044&ARC060/upcexam6463

    6463: Tak and Hotels II 时间限制: 1 Sec  内存限制: 128 MB 题目描述 N hotels are located on a straight line. The ...

  8. 大神们都在用的两个国外的免费离线下载:Rain&amp; LoadBT

    大神们都在用的两个国外的免费离线下载:Rain& LoadBT 最近QQ离线和迅雷离线也都挂了,115还死贵,所以分享两个国外免费的网站.希望可以为大家提供一些帮助,同时也借此机会同大家相互交 ...

  9. 硬件工程师必会电路模块之MOS管应用

    实际工程应用中常用的MOS管电路(以笔记本主板经典电路为例): 学到实际系统中用到的开关电路模块以及MOS管非常重要的隔离电路(结合IIC的数据手册和笔记本主板应用电路): MOS管寄生体二极管,极性 ...

  10. 对Faster R-CNN的理解(2)

    2. 区域建议网络 区域建议网络(Regional Proposal Network, RPN),根据特征图上每一个点的向量,为这个点生成k个矩形建议框.每一个点输出的内容包括:reg层4个输出x.y ...