如何应对程序化交易中的过度拟合

在建立量化交易模型的过程中,很多人都会经历过度拟合的情况。过度拟合其实是机器学习领域和统计学领域的一个概念。一般被用作表示一个模型在测试时表现的非常好,但是在实践过程却成绩却不如预期。
对于传统的机器学习来说过度拟合的影响不是很明显,但金融数据时间序列特征和数据的高噪音特性则决定了过度拟合会带来的巨大影响。所以,我们在进行建模时一定要严谨避免过度拟合的情况发生。

01

过度拟合产生的原因
程序化交易系统的设计过程包括两个部分,这两个部分都有可能造成过度拟合。
交易系统设计的第一部分是形成一个完整的交易规则体系。形成交易规则一般有自上而下和自下而上两种方法:自上而下的方法是基于对市场行情的长期观察总结出来规律,再在规律的基础之上形成数量化的交易策略,这一过程需要长时间交易经验的积累;
自下而上的方法是从市场数据出发,进行统计分析得出市场特征而形成的交易策略。
交易者在将交易系统用历史数据进行回测时,往往会根据测试结果对交易规则进行重新训练形成新的交易规则,或者对这些规则进行组合,这样产生的交易系统很容易是对市场数据的拟合。
同时在数量化实现交易系统的过程中,一般会采用参数来描述系统。设计者会通过增加参数个数和优化这些参数,寻找出最佳的交易系统。
如果参数个数较多或过度优化参数,往往就会产生对历史行情的完美过度拟合,而未来的绩效却大打折扣。

02

如何避免过度拟合
设计交易系统的目标是在未来实盘的行情中可以产生利润,而不是为了追求一条漂亮的历史测试曲线,过度拟合的交易系统是一个“美丽的陷阱”。如何逃离这个陷阱呢?我们认为可以从交易规则的形成和交易系统开发两大方面着手。

现代数学对金融市场的数据分析表明,时间价格序列包括两个部分:

第一部分是确定项,可以从中找出一定的规律;
第二部分是随机项,没有确定性的规律可言,出现某一现象只是概率性的。
当我们从市场历史行情中提取交易规则时,需要分析规则的逻辑性和规律性,交易规则需要能够反映市场的规律性,具有一定的合理性。
当交易者通过各种途径形成交易规则后,在具体的交易系统设计过程中,需要注意如下问题:

第一,增加历史测试数据样本容量,避免交易次数过少。

做商品期货的朋友都知道,如果通过分类品种的方式进行回测的话,不活跃的品种可能一年之内都没有多少次交易,即便是几年的时间下来也交易不到100次。这样少的交易量所作出的结果是没有意义的并且非常容易造成过度拟合。特别是套利类策略持仓的策略就会更加的长,一年也就几次的交易量,这样就更不可靠了。
所以我们在进行策略的回测时就要增加交易策略的次数,一般来说300次以上的交易次数才能证明策略是有效的。
第二,在测试时,将测试的数据样本分为样本内和样本外。
设计系统的时候采用样本内数据,然后用样本外数据测试得出的系统,如果效果大大降低,那么这种系统极有可能是拟合的。

第三,核心参数不宜过多。

参数过多的系统是一个多自由度系统,在优化多个参数之后总会得出一个漂亮的系统,但这种系统的可靠性是令人怀疑的。

第四,在对交易系统的参数进行优化时,我们需要对最优参数附近的参数进行考察。

如果附近参数系统的性能远差于最优参数的性能,那这个最优参数有可能是一个过度拟和的结果,数学上称为奇点解,是不稳定的。如果市场的特征稍微发生变化,最优参数可能会成为最差参数。
第五、保证一定的平均利润。
有些策略我们在验证之后会发现交易的次数比较多,业绩表现也不错,但是平均利润过低。有些朋友可能会觉得,平均利润低有什么关系呢,只要盈利就可以了。但是除了要注意盈利外还要有滑点的意识,如果平均盈利过低,那么就非常有可能受到滑点的影响。稳定盈利的量化交易策略最终也会变成稳定亏损的策略。
(0)

相关推荐

  • 资金管理在赢利模式中的探索[完]

    古人说,技之上为之道,技之下为之器,如果理论是道,策略是技,那么一个具体的模型就是器了.我已在<资金管理在赢利模式中的探索>及<资...续>分别探讨了"道" ...

  • 全体枫粉跟上吃肉,F10组合调仓!!!11月份组合

    前言 11 /02 2020 最原始的那一批读者都知道,我本来就是做价值与成长的.中途做过一段时间短线,吃了很多苦,但是收获也不小,做超短线让我的资金急剧增大.但是,随着资金体量的增大,面临的麻烦也越 ...

  • 程序化交易必看语录

    程序化交易在操作中的最大优势是可以克服人性弱点,不求绩效第一.不求夸张利润,只求长期稳健获利,于市场中成长并达到财富累积的复利效果.虽然,比较欧美以及其他发达地区市场来说,国内程序化交易的发展还有很长 ...

  • 如何避免程序化交易中的过度拟合

    在建立量化交易模型的过程中,很多人都会经历过度拟合的情况.过度拟合其实是机器学习领域和统计学领域的一个概念.一般被用作表示一个模型在测试时表现的非常好,但是在实践过程却成绩却不如预期. 对于传统的机器 ...

  • 程序化交易中的数学模型与交易应用

    金融数学,又称数理金融学等,是利用数学工具研究金融现象,通过数学模型进行定量分析,以求找到金融活动中潜在的规律,并用以指导实践.金融数学是现代数学与计算机技术在金融领域中的结合应用.目前,金融数学发展 ...

  • 干货 | 程序化交易中的数学模型与交易应用

    金融数学,又称数理金融学等,是利用数学工具研究金融现象,通过数学模型进行定量分析,以求找到金融活动中潜在的规律,并用以指导实践.金融数学是现代数学与计算机技术在金融领域中的结合应用.目前,金融数学发展 ...

  • 看完萃弈的喜剧短片,秒懂程序化交易中的关键概念

    相信很多广告人都有过从零开始学习和理解程序化广告技术的经历,晦涩难懂的术语.技术公司的专业解释简直分分钟把小白们逼疯. 在数字化转型的洪流中,身在职场中的每个人都在快速地学习和掌握这些复杂的技术名词, ...

  • 考夫曼自适应均线广泛用于双边市场程序化交易中

    考夫曼均线广泛用于期货.外汇等双边市场的程序化交易中,本文发的是通达信版,仅供投资者学习和研究使用,并不适合个人投资者人工操作,风险自负.另外代码亲测都没有问题,谢谢大家关注. N:=10; M:=3 ...

  • 如何利用考夫曼均线程序化交易优势,在A股市场中获得好的收益

    如何利用考夫曼均线程序化交易优势,在A股市场中获得好的收益

  • 交易中如何寻找那些“关键K线”,做跑赢市场的王者

    K线是组成市场的基本符号,也是技术分析的基本工具.可是面对浩如烟海的杂乱K线,特别是市场盘整时,经常使人们的判断发生混乱.支撑之下有支撑,阻力之上有阻力. 回顾一下一天的走势,无论趋势状态还是盘整状态 ...

  • 优秀的交易者应该是一个悲观主义者,交易中的9个认识和基本功

    认识1:每一次下单你都可能会输,所以止损是最基本最重要的生存第一步.  基本功1:因为忘记了这句话,无数的投机者离开了这个市场,它们尸骨未寒,你想成为其中一员吗?很简单,忘了这句话,你很快就可以做到. ...

  • 【十大经典日内程序化交易的模型思路(一)】

    【十大经典日内程序化交易的模型思路(一)】