策略自动产生之二:筛选策略_第1页
策略自动产生之二:筛选策略_第2页
策略自动产生之二:筛选策略_第3页
策略自动产生之二:筛选策略_第4页
策略自动产生之二:筛选策略_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、内容目录 HYPERLINK l _TOC_250020 回测与实盘 3 HYPERLINK l _TOC_250019 未来函数 3 HYPERLINK l _TOC_250018 过拟合(幸存者偏差) 3 HYPERLINK l _TOC_250017 策略周期 3 HYPERLINK l _TOC_250016 市场隐含交易成本 3 HYPERLINK l _TOC_250015 未来函数 3 HYPERLINK l _TOC_250014 推进分析 3 HYPERLINK l _TOC_250013 固定起点的推进分析 3 HYPERLINK l _TOC_250012 固定窗口的推进

2、分析 4 HYPERLINK l _TOC_250011 物理隔离下的二次样本外分析 4 HYPERLINK l _TOC_250010 过拟合 5 HYPERLINK l _TOC_250009 参数敏感性分析 5 HYPERLINK l _TOC_250008 主观归因 6 HYPERLINK l _TOC_250007 策略周期 7 HYPERLINK l _TOC_250006 最大回撤 7 HYPERLINK l _TOC_250005 计算预测值和实际值的 IC 是否显著 7 HYPERLINK l _TOC_250004 市场交易成本 7 HYPERLINK l _TOC_250

3、003 佣金 7 HYPERLINK l _TOC_250002 Bid-Ask Spread 7 HYPERLINK l _TOC_250001 冲击成本 7 HYPERLINK l _TOC_250000 滑点 8图表目录图 1:某沪深 300 的二次样本外分析示例 5图 2:某沪深 300 的参数敏感性分析示例 6表 1:固定起点的推进分析示例 4表 2:固定窗口的推进分析示例 4表 3:某沪深 300 的参数敏感性分析示例 6表 4:某沪深 300 的因子分析示例 6回测与实盘量化投资是指通过数量化方式及计算机程序化发出买卖指令,以获取稳定收益为目的的交易方式。量化投资的方式通常是在历

4、史数据上建模和回测,如果模型效果比较好,量化研究员就会把模型投入实际的生产和交易环境中。经常的,我们会发现回测和实盘差异巨大。这些差异可能来自于以下方面:未来函数使用到未来函数也是很常见的一个问题,而且通常都是不知不觉的。自动产生策略的方法使用双保险来避免使用未来函数的问题。过拟合(幸存者偏差)众所周知,金融数据中的信噪比很低。当我们在回测中尝试了大量的参数时、或是在选股时测试了大量的因子后,找出来效果最好的一组参数或者一个因子总能获得非常不错的效果。但这大概率是因为它们仅仅是对回测期内的噪音精准建模了。由于自动产生策略的方法是依赖遗传算法寻找最优的因子组合和对应的参数,天然的可能会存在幸存者

5、偏差的问题。我们需要会使用一系列方法来剔除那些过拟合的策略。策略周期量化投资强调的是,过去历史上的行为模式会在未来持续发生。圣经上说:“已有之事后必再有,已行之事后必再行,日光之下并无新事”,说的就是量化的思维模式。但是实际的金融市场是轮动的,资产配臵随大的金融周期轮动,股票市场随着行业板块轮动。有可能你在回测的时候选对了风口,赶上了趋势,而实盘时候错过风口或者选错了金融资产,那么就会事与愿违了。市场隐含交易成本真实的交易,存在成交的障碍。当你购买流动性不好的金融产品时,模型的信号出来了,但是实际你却买不到,或者卖不出去,当你被迫用对手价来成交时,就会有比较大的滑点。这就是冲击成本,本质原因在

6、于你的交易量过大时影响了市场,而你的模型本身并不会考虑自身的影响。下面,我们逐个介绍在策略自动产生的机制中,如何避免这些问题。未来函数我们使用两大法宝,保证自动产生策略的方法不会出现未来函数这个致命的错误。推进分析推进分析可以具体的分为固定起点的推进分析和固定窗口的推进分析。固定起点的推进分析所述的固定起点的推进分析流程如下:假设有时间序列 t=0,1,2,3,4.T-1,T,和最小训练样本数 n。在时刻 n:用 t=0.n 的样本作为训练集建立模型,产生 t=n+1 时刻的预测值。在时刻 n+1:用 t=0.n+1 的样本作为训练集建立模型,产生 t=n+2 时刻的预测值。在时刻 n+2:用

7、 t=0.n+2 的样本作为训练集建立模型,产生 t=n+3 时刻的预测值。以此类推在时刻 T-1:用 t=0.T-1 的样本作为训练集建立模型,产生t=T 时刻的预测值。收集 t=n+1,n+2T 时刻的预测值样本外样本内样本外样本内样本外样本内样本外样本内样本外样本内表 1:固定起点的推进分析示例T1T2T3T4T5T6时间资料来源: 整理固定窗口的推进分析所述的固定窗口的推进分析流程如下:假设有时间序列 t=0,1,2,3,4.T-1,T,和最小训练样本数 n。在时刻 n:用 t=0.n 的样本作为训练集建立模型,产生 t=n+1 时刻的预测值。在时刻 n+1:用 t=1.n+1 的样本

8、作为训练集建立模型,产生 t=n+2 时刻的预测值。在时刻 n+2:用 t=2.n+2 的样本作为训练集建立模型,产生 t=n+3 时刻的预测值。以此类推在时刻 T-1:用 t=T-1-n.T-1 的样本作为训练集建立模型,产生 t=T 时刻的预测值。收集 t=n+1,n+2T 时刻的预测值样表 2:固定窗口的推进分析示例T1T2T3T4T5 样本外本内样本外 样本外样本内样本内样本外样本内T6时间资料来源: 整理物理隔离下的二次样本外分析我们第二大法宝是物理隔离下的二次样本外分析。所述的物理隔离下的二次样本外分析流程如下:假设有时间序列 t=0,1,2,3,4.T-1,T。研究时,我们取 t

9、=0,1,2,3,4.M-1,M,作为我们的研究样本。第一步:我们使用推进分析在 t=0,1,2,3,4.M-1,M 上回测策略,并选取其中最优的策略。第二步:我们对第一步选出的策略在 t=M+1,.,T-1,T 上做回测,检验第一步的回测结果是否和第二步的回测结果有着显著的区别。从我们的物理隔离下的二次样本外分析流程中可以看出,实质上,这个方法就相当于模拟盘。我们使用研究的数据是 t=0,1,2,3,4.M-1,M。而 t=M+1,.,T-1,T 就是我们的模拟盘。这种方法的好处是我们可以不用在等待几个月的时间去做模拟盘来验证策略。我们以某沪深 300 二次样本外分析为例图 1:某沪深 30

10、0 的二次样本外分析示例资料来源: 整理可以看到,这个策略模拟盘的表现和回测阶段表现类似,所以这个策略过拟合的概率不大。一般地,我们在第一步使用推进分析来产生策略,然后使用二次样本外分析来验证策略是否过度拟合。过拟合我们同样使用两种不同的方法来解决过拟合的问题。参数敏感性分析参数敏感性分析流程如下:第一步:将模型中某个因子的参数改变一些第二步:将该模型在历史数据上重新回测,得到新的回测结果第三步:将改变前后的回测结果相比较如果改变指标前后,回测结果差距不大,那么说明模型相对稳健,过度拟合的概率不大。我们以某沪深 300 为例子做参数敏感性分析,图 2:某沪深 300 的参数敏感性分析示例资料来

11、源:天软、 整理表 3:某沪深 300 的参数敏感性分析示例年化收益最大回撤夏普比率最大值29%58.5%1.23平均值27%52%1.12最小值25%46.8%1.05基准值27%55.9%1.14资料来源: 整理可以看到,当 MAXINDEX 从 21 变成 39 的时候,策略表现变得略微变差;当 MAXINDEX从 21 变成 39 的时候,策略表现变得略微变差;当 MAXINDEX 从 13 变成 12 的时候,策略表现变得略微变好。总体来说,该策略的参数敏感性并不高。主观归因主观归因是指量化策略研究员通过查看策略的因子,参数,模型对自动产生的策略进行主观的归因。主观归因没有具体的流程

12、,事实上较为依赖量化策略研究员。例如,如果某标的是反转为主,策略用到了 RSI 和线性回归模型。如果在线性回归模型中,RSI 前面系数是负数,那么量化策略研究员就有一定信心该自动产生的策略可能是有效的。我们同样以某沪深 300 策略为例,表 4:某沪深 300 的因子分析示例因子含义作用rolling_n_day_return_y(close, timeperiod=21)MAXINDEX(am ount, timeperiod=21)未来 n 根 K 线的 return预测目标过去 n 期最高价所在的时间位臵影响因子HT_DCPHASE(volum e)希尔伯特变换-主导循环阶段影响因子AT

13、AN(close)ATAN影响因子该指标是通过计算自价格达到近期最高值和最低AROON(high, low , timeperiod=13)值以来所经过的期间数,阿隆指标帮助你预测价格趋势到趋势区域(或者反过来,从趋势区域到趋势)的变化。影响因子资料来源: 整理注:使用数据为 30 分钟线模型:rolling_n_day_return_y = 截距项 + HT_DCPHASE +MAXINDEX + ATAN + AROON交易法则:如果 rolling_n_day_return_y 的估计值大于历史估计值的 75 百分位,则做多;如果 rolling_n_day_return_y 的估计值大

14、于历史估计值的 25 百分位,则做空;如果 rolling_n_day_return_y 的估计值介于历史估计值的 25-75 百分位,则不做交易;策略研究员可以根据模型本身的信息,对模型进行评估,看模型是否过度拟合。策略周期所有的策略都有自己的生命周期,量化策略也不例外。要是过去历史上的行为模式不在未来持续发生,策略就失效了。在自动产生量化策略的体系当中,判断策略失效有两个方法。最大回撤策略实盘(模拟盘)最大回撤大于最大回撤,或者大于最大回撤的 n 倍计算预测值和实际值的 IC 是否显著通常对于机器学习类的交易策略来说,实盘中的预测值是否准确,是影响实盘表现的重要因素。该方法的流程如下,第一

15、步:取最近 t=N 时间长度的预测值和实际值。第二步:根据r = Cor(y, )计算出 IC,y 代表实际值, 代表预测值第三步:计算出 t 值,并且与2进行比较,看是否显著。T 值的计算方法如下,t = 21 2t 不显著说明该策略对未来的预测能力在最近一段时间不佳,说明策略可能已经失效了。市场交易成本市场的交易成本有下面几类佣金证券交易佣金是指在证券交易时需要支付的款项,又称为手续费。Bid-Ask SpreadBid-Ask Spread 是指买一价和卖一价之间的价差。价差越大,说明标的流动性越差。有时候由于急切成交,我们会被迫以对手价成交,那么这个时候我们就会付出 Bid-Ask Spread。冲击成本交易指令下达后形成的市场价格与交易没有下达情况下市场可能价格之间的差额就是冲击成本。通常在回测中,我们假设我们的交易对市场是没有影响的。但是事实情况并不是如此,由于我们的交易,市场的价格会因此发生变化。比如在流动性不好的股

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论