打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
谈谈期货交易中技术分析的参数优化

做技术分析的时候,少不得都要跟参数打交道。比如看均线指标,是看5日均线、10日均线还是看40日,这个“多少日”就是均线指标的参数;使用布林带的时候,中轨周期是一个参数,标准差倍数也是一个参数。如果再进一步对商品价格走势特点有所了解,就会发现,不同的商品价格走势特点会有很大的不同,就像不同的人又不同的性格一样。所以在设计交易系统的时候,针对不同的商品,就需要选择最适合的参数组合了,这一工作流程就是我们常说的“参数优化”了。

但是对参数的优化,一不小心又会陷入到过度拟合的误区。物理学界有句名言,大概意思是说:只要有六个参数,就能拟合出一头大象。过度拟合造成的结果就是:回测结果看起来非常漂亮,但是一用到实盘,结果就惨不忍睹。那是因为参数过度拟合后的系统,只是完美的贴合了过去的价格走势,一旦未来行情出现变化,系统的适应能力就急剧下降。

所以参数优化存在一组矛盾,业内一位做高频量化的高手腾天,对这一矛盾的描述是:没有稳定的最佳。而《海龟交易法则》的作者费斯是这样描述的:对参数进行优化,有助于提高未来的盈利预期,但是未来能够实现这种盈利预期的可能性又会有所降低。

我们在实际的优化操作中,就是要调和这对矛盾,防止走极端。具体来说,经常会用到的一些方法如下:

样本内数据优化,样本外数据检测

这个可以说是最常用也是最有效的一种方法了。具体操作思路是将可以获得的历史数据分成两部分,一部分作为样本内数据,另一部分作为样本外数据。将交易系统的参数在样本内进行优化,取优化的参数组合,在样本外数据上面进行测试,如果测试结果表现符合预期,说明参数组合具有一定的适应性,否则,就有过度拟合的风险。

下面两幅图,左图就是一个典型的过度拟合,对样本内数据进行优化获得的参数组合用在样本外的时间周期上(2010-2014),可以发现结果差了很多。而右图则表现出样本内优化出的参数,在样本外也有很好的适应性。

(注:图片摘自知乎用户名为“教父”的live)

这种方法来源于数据挖掘,应用范围很广,但在量化投资中应用会碰到一个实际问题:In Sample和Out Sample样本大小的确定。而这个样本大小的确定,实际相当于为系统又多引入了一个参数。

第二种方法就是Walk Forward Backtesting,这种方式的作法就像是下面的图所显示的,如果我们有12个星期的历史资料可以用的话,我们先用第1到第4个星期的数据来跑优化,然后将跑出来的参数值套用在第5个星期的资料上。这时候第1-4个星期的数据就是In-Sample-Data,套用在第5个星期的绩效就是Out-Of-Sample的绩效。

然后我们把测试的窗口往后挪一个星期,重新跑第2-5个星期的优化,然后将跑出来的参数值套用在第6个星期上。这样重复8次。然后将所有out-of-sample的结果结合在一起(就是图下面绿色的部分)。同样,这一方法,也面临测试窗口长度的选择,也相当于一个新的参数的引入。

第三种常用的方法是考察最优参数周边参数的表现,如果都有不错的表现,则说明优化的参数组合并非参数孤岛,可以使用。这一手法通常结合前面两个方法使用。而这一方法在实际操作中,又会引入步长这一额外的参数。

有意思的是,我们为了使得系统具备更强的稳定性,避免过拟合,需要选择更强适应性的参数组合以及更少的参数数目,然后为了达到这一目的,往往又需要引入新的参数帮助我们进行决策。

因此,我想,无论是哪种交易模式,交易中想要长久盈利,关键是将策略构建于市场难以撼动的基本特征上。而在参数选择的层面,相较于“寻优”,我觉得“避劣”同样重要。就像,你很难知道是东北虎还是孟加拉虎将来在地球上生存得更久,但大概基因突变的白虎会最先消失(过度拟合的参数就如同白虎)。

编辑:亿杉助理 

 来源:网络 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Python数据分析实战-实现F检验(附源码和实现效果)
大话脑影像之:统计学检验方法总结及R语言实现
经典机器学习算法-第十八章DBSCAN聚类
数据分享|R语言Bootstrap、百分位Bootstrap法抽样参数估计置信区间分析通勤时间和学生锻炼数据
交易策略的过拟合问题 
没有比较就没有伤害,让咱们互相伤害吧,教你4大类统计伤害方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服