官方微信 手机客户端
查看: 336|回复: 0

用遗传算法开发高绩效交易策略

[复制链接]

419

主题

422

帖子

1800

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1800
发表于 2019-5-9 19:25 | 显示全部楼层 |阅读模式
     研究和开发交易系统令人沮丧的一个方面是,没有足够的时间来研究所有想要探索的有趣的交易思想。在20世纪70年代早期,当移动平均交叉系统被认为是最先进的时候,使用简单的技术指标开发有利可图的策略相对容易。实际上,研究表明,简单交易规则的盈利能力在外汇和其他市场中持续了数十年。但是,与20世纪80年代后期PC的出现相吻合,这种简单的策略开始失败。可以说,数据,分析工具和计算能力的广泛普及有助于提高金融市场的效率,并使寻找有利可图的交易思想变得复杂。我们现在处于一个可以由5-6名研究人员/开发人员组成的团队,使用先进的研究技术和计算技术,长达12-18个月,数十万美元,来制定原型战略。并且无法保证最终结果将产生所需的投资回报。


遗传编程的早期经历
我在20世纪90年代末开始与投资策略的GP方法相遇,当时我开始与纽约Yeshiva大学的神经科学负责人Haftan Eckholdt合作。Haftan提出通过应用广泛用于分析遗传研究中大量和高度复杂数据集的技术来创建交易策略。我对这个想法非常怀疑,并且代表一个有兴趣的投资者,在接下来的18个月里确实非常努力地踢了轮胎。虽然Haftan的结果似乎很有希望,但我相当确定它们是随机机会的产物,并着手设计可以证明这一点的测试。



我设计的挑战之一是创建数据集,其中真实和合成的股票系列混合在一起并给予系统评估。对于人眼(或分析师的电子表格),合成系列与真实的系列无法区分。但事实上,我已经在合成股票的过程中“种植”了一些模式,这使得它们的表现与现实生活中的不同。我创建的一些模式非常简单,例如引入漂移组件。但是其他模式更加细微,例如,使用分形布朗运动发生器在股票波动过程中诱导长记忆。
当我看到系统检测并利用埋藏在合成系列深处的模式来创建合理的,有利可图的策略时,我开始关注。在此之后不久,Haftan和我联手创建了Proteom Fund。
Proteom的成功完全证明了Haftan作为研究人员的聪明才智,也证明了他作为程序员和技术人员的能力。当时处理如此大量的数据是一项巨大的挑战,需要将50个cpu的网络组合在一起,并使用相当数量的跳线和胶水进行维护。我们把这个集群安置在布鲁克林的一个老鼠出没的仓库里,那里有一个非常宜人的曼哈顿景色,但没有a / c。从群集中散发的热量是巨大的,当与邻近的音乐工作室在墙壁上爆炸的非常响亮的说唱音乐相结合时,效果使人衰弱。正如您可能想象的那样,与投资者的会面是一种非常难以预测的体验。幸好,
构建交易模型的遗传规划方法
遗传编程是一种基于进化的算法方法,可以非常通用的方式用于识别数据结构中的模式或规则。GP系统被给予一组指令(通常是简单的运算符,如加法和减法),一些数据观察和适应度函数,以评估系统能够将功能和数据组合以实现特定目标的程度。
在交易策略背景下,数据观察可能不仅包括价格数据,还包括价格波动,移动平均线和各种其他技术指标。适应度函数可以像净利润一样简单,但可能代表盈利能力或风险的替代指标,包括每笔交易PL,赢率或最大亏损等因素。为了减少过度拟合的危险,通常将系统可以使用的函数类型限制为简单的运算符(+, - ,/,*),指数和trig函数。程序的长度也可能受到允许的最大代码行数的限制。
我们可以使用树形图表示正在发生的事情:
用遗传算法开发高绩效交易策略 遗传算法,开发,高绩效,交易策略,策略, 4592

在这个例子中,GP系统将几个简单的运算符与Sin和Cos trig函数组合在一起,创建一个包含两个变量X和Y的表达式的信号,例如,可以是股票价格,移动平均线或技术指标。动量或均值回归。
GP过程的“进化”方面源于这样的想法:现有的信号或模型可以通过替换树的分支中的节点或甚至整个分支中的节点来变异。使用适应度函数重新评估系统性能,并保留最有利可图的突变以进一步生成。
得到的模型通常是高度非线性的,并且在形式上可以非常通用。
GP日间交易策略
在理论和实践方面,过去十五年在遗传规划领域取得了巨大进步。使用单个超线程CPU,现在GP系统可以以比Proteom的50个网络CPU集群更快的速率生成信号。研究人员可以用几个小时的时间开发和评估数千万种可能的交易算法。现在可以在几周内实施彻底研究和测试的策略。毫无疑问,GP有可能大幅缩短研发前置时间和成本。但它有效吗?
为了解决这个问题,我在下面总结了GP开发的日间交易系统的表现结果,该系统交易了九个不同的期货市场:原油(CL),欧元(EC),E-Mini(ES),黄金(GC),取暖油(HO),咖啡(KC),天然气(NG),十年债券(TY)和债券(美国)。该系统单独在每个市场交易单一合约,每天多次交易。只交易每个市场中最具流动性的期间,这通常与公开喊价会议一致,任何未平仓头寸在会议结束时使用市场订单退出。除使用止损订单输入的NG和HO市场外,所有市场均使用标准限价订单进入和退出,价格由系统确定
该系统使用2006年1月至2011年12月的15分钟条形数据构建,并测试了2012年1月至2014年5月的数据样本。样本范围内的数据被选择用于覆盖极端市场压力期,如以及不稳定的市场条件。为了评估系统的稳健性,选择了一个冗长的样本外时间,几乎是样本内周期的一半。
样本外测试是“双盲”的,这意味着数据不用于模型的构建,也没有在选择任何模型之前由系统评估的样本外性能。
绩效结果扣除了每轮回合6美元的交易佣金,而在HO和NG的情况下,每轮回合额外下滑2个tike。

该策略最引人注目的特征是风险调整后的回报率很高,以夏普比率衡量,在样本内和样本外时期均超过5。这种一致性反映了这样一个事实:虽然净回报率从样本的年平均值超过29%下降到2012年的20%左右,但战略波动率也从5.35%下降到3.86%。各个时期。样本外期间风险的降低也反映在较低的风险价值和提取水平。
每笔交易的平均PL从25美元下降到16美元,在某种程度上抵消了交易率的轻微上升,平均每天42到44次交易,而每日赢率和百分比盈利交易保持在一致分别为65%和56%。
总的来说,该系统似乎不仅利润丰厚,而且非常强大。这是令人印象深刻的,因为模型在2011年之后没有更新数据,在一段时间内保持静态,几乎是其构造中使用的数据范围的一半。可以合理地预期,通过允许使用更新的数据更新模型,可以提高样本外的性能。
交易系统开发的GP方法的好处和风险交易系统开发
的GP方法的潜在好处包括开发速度,设计灵活性,跨市场应用的一般性以及快速测试和部署。
缺点是什么?最明显的担忧是过度拟合的风险。通过允许系统开发和测试数百万个模型,存在明显的风险,即由此产生的系统可能过于紧密地依赖于样本内数据,并且在面对新的市场条件时将无法保持性能。这就是为什么我们保留了大量的样本外数据,以评估交易系统的稳健性。即便如此,鉴于评估的模型数量众多,仍然存在过度拟合的重大风险。
另一个缺点是,由于建模过程的性质,可能很难理解或向潜在投资者解释支撑任何特定模型的“市场假设”。“我们对它进行了测试并且它的工作原理”对投资者来说并不是一个特别启发性的解释,他们习惯于被提出一个更明确的理论框架或投资理论。在经济繁荣时期,无法准确解释系统如何赚钱是令人不安的; 但在经济困难时期,如果没有解释,投资者很可能会很快变得焦躁不安。不幸的是,评估一个表现不佳的时期是暂时的,还是模型中断的结果,这个问题可能是一个复杂的过程。
最后,与其他建模技术相比,GP模型在新数据可用时无法轻易更新模型参数。通常,由于GP模型将从头开始重建,因此每次都会产生非常不同的结果。
结论
尽管GP方法存在许多局限性,但研究和开发原始交易信号和策略的速度和成本方面的优势已变得越来越引人注目。

鉴于GP方法在遗传学和物理学等多种领域取得了很好的成功,我认为在金融市场研究中应用的合适位置将是谨慎的乐观主义之一。



回复

举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精选推荐

联系客服 关注微信 下载APP 返回顶部 返回列表