程序化交易模型的参数优化方法

上传人:新** 文档编号:496879342 上传时间:2023-08-11 格式:DOCX 页数:6 大小:10.75KB
返回 下载 相关 举报
程序化交易模型的参数优化方法_第1页
第1页 / 共6页
程序化交易模型的参数优化方法_第2页
第2页 / 共6页
程序化交易模型的参数优化方法_第3页
第3页 / 共6页
程序化交易模型的参数优化方法_第4页
第4页 / 共6页
程序化交易模型的参数优化方法_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《程序化交易模型的参数优化方法》由会员分享,可在线阅读,更多相关《程序化交易模型的参数优化方法(6页珍藏版)》请在金锄头文库上搜索。

1、程序化交易模型的参数优化方法程序化交易的书籍在市面上层出不穷,大多数打算进行程序化交易的朋友都会去阅 读一两本或者更多。我敢肯定通过阅读大家会发现,这些书里面每一本都会提到交易模 型的参数优化的问题。这是由于现代的计算机处理技术发展的同时也带来了一些困惑, 程序化交易可以说是建立在计算机和通讯技术的基础之上的一种交易手段,如果没有这 些基础设施,那么程序化交易也就不能存在。正是有了可以高速运行的CPU才使我们可 以对参数进行优化。光凭技术手段并不足以解决所有交易的问题,这就是为什么说交易 是一门艺术之所在,而我们使用机械的交易方法是为了尽可能的避免人为的判断和情绪 对交易的不良影响,在我们没有

2、形成自己的一套交易体系之前通过机械的方法来进行交 易无疑可以少走很多弯路,把时间和金钱留给我们用来积累更多的经验,让我们首先确 保在市场中生存,再去追求如何使交易变成艺术。因此作为一个力求以科学和规律的方 法解决交易的问题的人,我试图通过本文来解决大家在程序化交易中参数优化这个矛盾 的问题。什么是参数优化在这里首先我们介绍一下什么是参数优化,以便一些刚刚接触程序化交易的朋 友阅读本文,已经了解这方面知识的朋友可以掠过本段。对于一些模型来说会有一些参数,这些参数设置的主要含义可能是为模型提供 一个周期,举个例子来说象n日均线上穿N日均线(n为短周期均线参数,N为长周期 均线参数,一般短周期的移动

3、平均要比长周期的变化要快,所以我们通过这两个不同周 期的均线来制定交易计划),n和N参数的意义就是指定周期,一般来说参数的意义都 与时间有关系(周期),但也有其他的用途。参数优化实际上就是利用计算机的处理能 力对参数的各个值进行一次测试,找到盈利最大的那次值,如上面函数的n和N,我们 利用系统的参数优化功能就可以把n (110), N (1030)都测试一遍,找到最好的 那个值。参数优化的基本矛盾参数优化的基本矛盾在于,我们选取出的最优的参数数值只是在我们历史数据 上成立的,就是说我们是往回看用这个或这组参数能够获得最大的收益,但行情的发展 却是无法完全预料的,我们可以找到历史上表现最好的参数

4、,但是这个参数未必在未来 是最好的。因为每种系统设置参数的用意不同,更有甚者可能历史上最好的参数在未来 可能就是一组很糟糕的参数。比如一个参数的设置刚好让你抓住了一波大行情,在参数 优化取到这样的值时很有可能对未来没有任何帮助。当然有些参数优化是由于减少了平 均的亏损率使你的系统的效果更好,这种参数优化可能对未来会有一定意义,但也不是 绝对的,因为行情的发展有其不可预知的一方面。所以参数优化的基本矛盾在于历史统计结果和行情未来发展之间的矛盾。我写 本文的主要目的就是为了在这样的问题面前,我们该如何处理,如何辩证的看待参数优 化带来的利与弊,更重要的是提供一个方法让大家面对参数优化的时候知道该怎

5、么办。 统计研究为了研究这个问题,首先我对我自己使用的一个很成熟的模型的各个参数值进 行了测试,并把一些关键的数据如收益率,交易次数进行了统计。首先介绍一下我的交 易系统,我的交易系统是属于趋势跟随型的一个交易系统,跟所有趋势跟随型的交易系 统有着同样的特点。就是趋势形成的时候进入头寸,当权益回吐一定程度的时候认为是 是趋势结束了轧平头寸,胜率不高,但在趋势市中能够赚钱来弥补在盘整震荡市中必然 要赔的钱。这个系统只有一个参数,其设置的目的是为了给系统中所使用的计算公式和 技术指标提供周期。这里需要提到的一点是,很多人说模型最好不要设置参数,做好了模型应该把 参数固定在模型内部不再改变,我对这个

6、观点持有不同的看法,我认为市场总是在变化 的,而我们使用模型就是为了抓住这种变化中的规律,当然这种规律也是会变的,我给 我自己的模型留有一个参数就是为了调节这种变化,比如使用均线系统,这几年因为这 个品种总是大起大落,那么我们使用短一点的周期就可以了。因为行情变化的总是比均 线走的快,不会总触发平仓或者开仓条件,但是过了几年发现这个品种不是那么活跃了, 那么我们就应该调整参数把周期调长一些,以适应市场。而不是以一刀切的观点认为没 有参数就不再面对参数优化的问题了。这个观点之所以错误,是他看到了参数优化的矛 盾,而没有意识到我们做交易的最根本目的是什么。我们做交易最根本的目的是在于获 取利润,而

7、不是逃避仅仅一个参数优化的问题。不过这里还需要提醒的是,参数固然要 设置,但是不能设置过多,设置最多两个足矣,自己必须搞清楚设置这个参数的意义是 什么。参数设置过多一方面代表的是你的交易思想的不成熟,因为成熟的交易思想是抓 住市场中本质的东西,而本质的东西并不需要太多的变量来对其进行描述;另一方面, 过多的参数等于说给程序更大的灵活性,以适应更多情况的行情,但你在选择参数的时 候会面对更大的困惑,因为多参数的模型经优化后的一组参数值很有可能是让你灵活的 系统最符合历史行情的情况,这就是所谓的“参数拟合”。下面我提供一个通过统计我的模型参数从1到120各个值的时候,盈利和交易 次数的图表。为了保

8、持数据来源的一致性,这里我们将这些值都在豆粕主力,2003年9 月19日到2008年9月19日这段时间进行测试.首先我们对参数与交易次数的结果进行研究,我们发现随着参数的增大,交易 次数在不断的减小,而且在参数还比较小的时候交易次数减少的幅度比较大,而参数变 得很大的时候如50以上的时候交易次数减小的幅度就变得很小了。这个统计结果有点 像数学中的反比例函数Y=C/X, C为常数。我们可以通过回归分析计算出你的交易系统的这条关系曲线,但是其实没有多 大的必要。这里主要说说为什么会形成这样形状的一条曲线。首先我们使用的系统是趋 势跟随型的系统,我们设定的参数的含义是周期的长短,当我们选取的参数较小

9、的时候, 系统中使用的周期(如移动平均)较短,所以系统也较为灵敏产生的信号也就多,当参 数较大的时候,系统中使用的周期较长,所以系统所产生的信号也少。当系统在周期较 短比较敏感的时候,每调增一些周期所降低的交易次数,要大于在周期较长的时候。这 就是为什么这条曲线是这样的原因。之所以我做了参数与交易次数关系统计,一方面是因为这是我们选取系统的一 个参照,因为交易次数多所带来的交易费用也就多,有些人的性格希望系统能多提供一 些信号,有些人希望系统的信号不要太多;另一方面我发现绝大多数参数为时间周期的 趋势跟随系统的交易次数与参数之间的关系都符合这样的一个规律,所以大家以后在对 自己系统进行研究的时

10、候就不用统计交易次数了,节省了大家的时间。大家只用知道这 种以时间周期为参数的趋势跟随系统的交易次数会随着参数增加而减小,而且在参数比 较小的时候减少幅度大,参数比较大的时候减少幅度小,当你在在考虑选取交易次数大 的参数还是交易次数小的参数的时候就只用比较这两个参数的大小就知道他们交易次 数上的变化了。我们发现,参数值使模型能够盈利的情况大多集中在一段连续的参数范围内, 如我的这个系统的在314之间,8295之间,最优的参数是11。我们管这些能够使 模型盈利并且连续的参数值所构成的一段区间叫做参数有效域,对于豆粕过去5年的数 据来说我们模型的参数有效域是314, 8295。一般来说总是会有一段

11、连续的参数构 成有效域,这是由于有效的系统是必须能够抓住某个特定市场的本质特性,而这个特性 是一个比较稳定的状态,不是经常发生变化的。而如果出现参数设为3能盈利,4就是 亏损,5又能盈利,6就得亏损这样的情况,要么说明市场不稳定,要么就更加可 能是你的系统有问题。我们定义了参数有效域了之后,下面就要来解决最重要的问题,如何选择参数, 如何对待最优化的参数。通过我上面的统计我们发现11是这个系统在豆粕过去5年中 最优的参数,那么,现在的问题就是11这个最优的参数我们到底可不可以用呢?我们观察发现11是在我们的参数有效域中的,这说明如果我们选择11作为我 们的参数,虽然以后11可能不是能够使我们获

12、得最大收益的参数,但是至少它肯定还 是会落到参数有效域中间的。因为参数有效域代表的是这个系统是如何抓住某一个特定 市场的特性的,而市场的特性变动是需要很长的时间,相对稳定的,所以对于一个模型 的参数有效域来说也是相对稳定的,不会说今年我们模型测试的参数有效域是1020, 明年就会变成2030 了,即使变动,其变化幅度也不会很大,可能象今年参数有效域 是1020,明年可能是919。参数有效域代表的是这个模型对这个市场盈利概率的分 布的把握,跟这个市场的本身属性有关,它只会随着市场本身属性的变动而变动。所以 这就是说参数有效域中的参数是这个市场的普遍特性的代表。所以我们可以选取11为参数,因为即使

13、其不能在以后是最优的参数,这个是 我们决定不了的问题,但11在参数有效域中的事实也证明其还是一个能够抓住这个市 场规律能够带来利润的参数。我们选取11可以即享受它成为未来最优参数的很大可能 性,又不至于因为设置个别参数可能导致的系统亏损的情况,因为我们知道在这个区间 中的参数值大部分都可以抓住市场的主要脉搏,而市场要变化是很漫长的过程,我们有 充足的时间去反应这个变化,当然这是在你意识到程序化交易并不是一劳永逸的时候。假如说上面我们测试的结果最优的参数值不是11而是23的话,那么我们就不 能选取这个值,可以把这个值作为一个偶然,刚好参数为某个值的时候使系统抓住了几 次行情,而不具有普遍意义。对

14、于这种不在参数有效域中的最优化的结果,我们坚决不 能选取。另外在有效域边界的最优化结果也不能选取,如上面有效域是314,如果14 是最优值,我们也尽可能的不选择它,因为参数值抓住市场规律的过程也是逐渐增加到 达最佳再慢慢减小到亏损的过程,在有效域两边的盈利状况应该小于在中间的那些参数 值。如果出现了在参数有效值边界的最优参数,很有可能也是因为刚好抓住了过去的几 次大行情,在选用的时候除非你确定知道它的意义,否则还是选择次优的在参数有效值 中间的那些参数比较可靠。总结以上就是我根据实践和研究发现的关于参数优化的以及该如何处理参数优化 普遍性与偶然矛盾的方法,还有很多问题有待于进一步研究和推敲,欢

15、迎有想法的朋友 来跟我切磋交流,或者指正本文中的不足之处。总结一下本文,参数优化并不是一无是 处,正确的用好参数优化可以给你带来额外的收益,并且可以让你更加了解市场的本质 把握市场本质的变化。在趋势跟随型模型中如果参数代表的是周期长短,那么参数与交 易次数的关系为反比例关系,即参数值增大交易次数减少,并且在参数较小的时候,参 数变化所引起的交易次数变化幅度要比参数较大时候要大。我们在决定是否选取最优参 数之前,先应该确定参数有效域,哪些连续在一起的参数都能够盈利,有效域才是代表 的是市场的本质特性的标志。之后我们再看最优的那个参数是否在有效域中,如果不在 那么应该果断舍弃,如果在有效域的边界,那么根据情况考虑,如果在有效域中那么可 以选用。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号