技术分析和基因算法相结合构建商品交易策略(2)

本文通过基因算法编程演化出24种期货行情的技术交易规则,评估了这些规则在样本外数据上的表现。结果显示,仅有两种商品的交易策略显示出了显著的盈利能力。此外,基于这些规则构建的商品期货组合的回报率低于同期股票指数。

交易策略评估

净利润是度量交易策略时最简单最常用的方法。期货合约的杠杆特性使用简单地基于回 报的绩效度量方法难度更大,因为计算回报要用到的分母不清楚。可以假设没有杠杆因素,但这一假设看起来是一种非常不实际,因为杠杆化经常被认为是期货的优 势。还有一种方式,就是使用边际条件作为分母,但这也是有问题的,例如美国长期国债期货可能抵押为担保资产,并向期货持有人支付相应的利息,这一假设情况 下,期货持有者的应得利息为0

考虑到这些原因,使用简单概率度量拟合性,而不是使用回报。拟合性度量公式:

(2) - caspar - 青山

其中,(2) - caspar - 青山是有三个状态的信号变量,表明在时间t时的交易头寸,phi是交易成本。按照Neely,Weller和Dittmar的观点,交易成本越高,就越加抑制规则发生过度交易,这可以是过度拟合的征兆。他们建议使用相比而言更高的交易成本,对于训练和选择数据是现实的,对于样本外数据测试也是更现实。Lukac、Brorsen和Irwin提出每完成一笔交易的佣金为100美元,这一数字包括佣金和流动性成本,尽管他们认为这一数值一般情况下看都太高。因此,对于训练和旋数据来说,完成每笔交易的交易成本设定为200美元;对于样本外测试而言,完成每笔交易的交易成本设定为50美元。

模拟结果

为了测试基因算法编程在各种不同大小的样本的能力,对这一方法进行模拟研究。图1中的技术交易规则可以被看作是有三种取值的阈值自回归模型的描述,如下:


(2) - caspar - 青山(3)

 
 在这一模拟研究中,a=-0.5, b=0.5, n=10, k=0.02, (2) - caspar - 青山=1。使用等式中的模型,数据观察期采用750150022503000,生成3100个数据序列,约为3年、6年、9年和12年的期货价格数据。每个模拟数据组分成3个长度相等的子样本数据组,称为训练数据、选择数据和测试数据。按照AKNWD提出的过程,生成每条规则都使用训练数据进化或评估。把这一代中的最佳规则应用到 选择数据,并保留下来。然后,使用训练数据进化并评价下一代规则;最佳规则应用于选择数据,若这一规则比前一代最佳规则的拟合性更好,那就就保留新规则, 否则就保留前一代规则。对于每一次模拟而言,若25代规则或者已进化了200次都没有改进已保留的规则,则终止这一过程。然后使用测试数据评估结果最佳的规则,以便度量其相对于样本外数据的拟合性。

3:用模拟价格数据评估模型的结果


(2) - caspar - 青山

 
(2) - caspar - 青山

3:按照模拟数据的时间长度比较交易规则的绩效

 

结果

4中列出了针对24种商品期货对可选的交易规则所做的评估。使用前月(Front-month)期货价格创建滚动价格序列。不包括在交割月发生的价格数据。使用的期货价格数据都来自CRB的期货价格数据库,时间从1980.1.22000.12.29。提取4年的数据作为训练和选择数据,其余204个月的数据都可以作为样本外测试数据。原油、无铅汽油、燃料油于1983年开始交易,因此使用这些数据是从19316日开始,创建156个数据期的数据。S&P 500期货于1982年开始交易,所以使用的时间从198313日开始,生成168个月数据期的样本外数据。

4:基因算法编程技术交易规则基于样本外数据的回报

(2) - caspar - 青山
 

注:r为平均月回报;(2) - caspar - 青山r的标准差,tStudent’s t检验,r>0的月份N>0

*****表示在5%1%的水平,r<=0时,拒绝空假设。

4中的前四列为月回报均值、月回报标准差、r<=0的单尾学生T检验和回报为正值的月数。表中的回报为月平均毛回报利润减去交易成本,再除以交易边际量的初始最小值。

         与商品期货行情中已有的许多研究相反,这些规则几乎没有发现技术交易策略在概率上有优势的证据。所研究的24中商品中,是由两个品种,基因编程所产生的规则其交易盈利稳定在5%以上。检查其他商品,也没有发现具体的成功或失败的形态;其中5个金融期货中有3个是正回报,只有一个比较显著;13个农产品和食品期货中有8个是正回报,有一个比较显著;还有6个金属和能源期货品种,4个是正回报,但回报都不显著。

      5列是生成的交易规则每个月的平均交易次数。CocoaS&P500产生的规则交易频率最高,但平均也是每个月交易一次;其他商品产生的规则平均只有三个月一次。这表明在规则训练和选择中采用200美元的交易成本是成功的,抑制了过度拟合与频繁交易规则的进化。

     最后两列中交易规则正确的天数的比例符合持有多单或空单的条件。如果价格和头寸是随机生成的,那么这些统计数字要达到近50%,表中的各项数据基本都达到这一要求。从统计数字看,获得正回报的有两种商品,Lean hogS&P500,其正确率都是最低的。

      各个规则的结果表明,从样本外测试的技术分析看,并没有获得稳定的盈利。一代规则其回报统计数字显著的有两种商品,给出了24中商品做测试,得到这样的结果并不惊奇。

为了比较技术分析交易期货基金的结果,创建的期货组合中30%的资产都具体给出了初始边际,这和LukacBrorsenIwin的观点一样。这类组合的回报等于T-bill率加上各商品回报平均值的30%

      4中给出了这类投资组合的回报,还有时间期限差不多相同的三个上市股票指数的回报。期货组合的回报高于Russell2000指数的回报,但低于S&P500和道指的回报。另外,期货组合的标准差远大于股票的标准差。

5:期货组合和股票指数回报的相关性


(2) - caspar - 青山
 

5是期货组合和股票指数之间的相关性,和预想的一样,期货组合的确表现出语股票指数回报的相关度低,在1.5%1.6%之间。

    这样的结果并没有为基数分析在商品市场的使用提供更多的支持。以前在商品市场方面的研究表明,能产生高于交易费用的利润,在选择并使用事先可选的交易规则的情况下,这样的规则不能稳定的获得高于交易成本的利润。

总结与结论

     技术分析在商品交易中的使用有着很长的历史。尽管咩有理论基础,但仍然在普遍的使用。这是因为技术分析方面的资料和资源很丰富,绝大多数研究没有发现技术交易策略的概率。

    正如NWDAK所提出的那样,以前的研究都数据迁就偏差的困扰,这是长期以来流行的交易规则在历史数据方面的应用而引发的,即使是样板数据,也是如此。修正数据迁就偏差的一种方法是从最原始的运算符中获得事先可选的技术交易规则,这与NWDAK所阐述的方法一样。本文中使用的基因算法编程是一种算法设计的演化方法,演化出24种期货行情的技术交易规则。当使用无效数据凭空优化过程时,24个行情中只有2个行情的交易统计结果有显著的盈利能力。

    所构建的这些商品的组合所获得的回报率都比研究期限内股票指数的回报率低。期货组合的回报率与股票指数的回报率之间相关度低,同时期货组合的标准差比股票指数的标准差大23倍。

     本文的结论首先受到基因算法编程条件本身的限制。像基因算法编程这样的演化方法并不能保证找到全局的或局部的优选规则。正如CooperGulen所说的那样,数据迁就偏差可能是使用了所选择的数据长度对于运算是否可行,或者优化过程的任何其他参数引发的。

本文的研究结果并不是反对存在可盈利的技术交易策略,但这些解雇的确否定了技术分析在商品交易中一定会盈利的说法。很显然,本文给出了扩张的方法,把各种交易规则(如动量、RSI、或者表2中列出的任何规则)整合到函数节点的聚合中,这样可以直接检验当前实践中所使用的规则,从而使用对于基因算法编程方法可行的、更大的规则聚合。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值