大家都知道,美国西德克萨斯轻质原油期货(以下简称原油)和英国北海布伦特原油期货(以下简称布油)的价格走势非常接近,两者几乎是同时上涨或者同时下跌,那么今天就给大家介绍一个基于两个具备内在相关性的品种的套利策略。

         首先我们来看一下原油和布油这几年的走势图吧:

         如果把两油的图放在一起,则是下面这张图的样子,其中红色是原油的走势,蓝色是布油的走势:

可以看出两者的走势非常的接近,涨跌的时间和幅度也几乎一样。经常交易UKOIL和USOIL的人内心一定会有一些疑问,那就是两油价格背后是否有一些内在逻辑,或者说一种内在规律让它们维持这样的相关性?以及能否依据这样的相关性设计一些交易策略?带着这样的疑问,我们开始深入研究。

         首先我们还是先来看一下两油价格的散点图:图中横坐标(x轴)表示原油的价格,纵坐标(y轴)表示布油的价格。具体意思我再解释一下,比如2019年1月2日00:00,原油价格为45.66,布油价格为53.92,那么就把(45.66, 53.92)这个点点在图上,这里我们使用了从2015年1月1日到2019年2月1日的所有5分钟的数据,总共有40多万个数据,也就是下图是由40多万个散点共同构成的。

         上图中这些散点构成的图形很像一根巨粗的直线,通过计算可以得出原油和布油的相关系数是0.98(注:相关系数的取值范围为是-1到1之间,越接近1说明两者之间的关联程度越大),那么我们就可以尝试来找到一个线性方程y = a*x + b来表示他们之间的关系。

         这里我们使用R语言里的一个“线性回归”的函数来帮助我们找到这个回归方程的系数a和b,“线性回归”是统计学中的一个非常有用的方法,也是机器学习的基础,其中的内容比较复杂,有兴趣的同学可以自行去找相关书籍学习。

         这里我们依然是使用2015年1月1日到2019年2月1日这些数据,以UKOUSD为自变量x,USOUSD为因变量y得到结果:USOUSD = a0 + a1 * UKOUSD。那么他俩的关系就变得很明确了,当布油的价格是40块的时候,原油的价格就应该是a0 + a1 * 40,或者在这个价格附近,当布油价格在60块的时候,原油价格应该是a0 + a1 * 60,或者在这个价格附近。

         下面我们来看一下回归之后的走势图:红色的线是原油真实的价格,蓝色的线是使用布油价格回归出来的原油的预测值。经过处理之后两条线在大部分的时间都是重合在一起的,说明回归的效果非常不错。

         下面这个图是原油的回归残差图,也就是上图中红色线的值减去蓝色线的值得到的结果,表示的是预测值和真实值之间的差值。

         可以看出残差的值总是在零轴上下来回波动。那么我们基于此设计一个原油和布油的投资组合。通过在残差处于偏离值较大的位置去建立头寸,在回归到偏离值较小的位置平掉头寸来进行套利了。

         这里再多说一句,两个品种之间的关系肯定不止y = a*x + b这一种,如果两个品种的散点图如下图所示,那么我们可能会认为y满足x的一个一元二次方程,即y = a*x^2 + b*x + c。这时候我们就需要用到非线性回归来解决这个问题;再或者因变量y不止受到一个x1的影响,还可能受到x2、x3、x4…等多个因素共同影响,这时可能需要用到多元线性回归来解决更为复杂的问题。

         在两油的套利模型中由于两者的相关性非常高,而且从散点图来看也不会存在更高阶的回归项,故没有考虑更为复杂的模型,以免造成过度拟合的尴尬处境。

         为了验证我们的统计结果,我们把这套逻辑做成了EA,放在MT5内进行测试(因为MT4不支持多品种的回测)。具体的做法是当残差大于2时做空USOUSD、做多UKOUSD,当残差大于4、6、8时分别加一次仓,当残差大于10的时候止损;反过来当残差小于2时做多USOUSD、做空UKOUSD,当残差小于-4、-6、-8时分别加一次仓,当残差小于-10的时候止损。当残差的绝对值小于0.3的时候获利平仓。

测试结果的资金曲线如下,基本上是可以稳定盈利的,点击这里查看网页版回测报告。

下图是具体的下单情况,基本上每一组交易整体都是获利的。如上图可以看到,在两年半的时间里(20160905-20190301),整个模型在最大净值回撤14.06%的情况下,最终实现133.69%的收益率。当然还有其他可以获得比这个收益率好得多的参数,我们只是通过此文讲解一下整个策略的思路,就不过多赘述参数优化方面的东西了。

详细的回测报告可以点击这里查看

那么这么好的策略还有哪些缺点?在实际运行的过程当中又还有哪些需要注意的地方呢?

         ① 由于是套利策略,策略本身成功率级高,但是盈利能力相比于传统的趋势策略要差一些,如果开仓的手数比较小的话,盈利能力可能比较差。所以更适合大资金,不太适合小资金去做。

         ② 从残差图上我们可以看出虽然残差总是会回归到零轴附近,但是有的时候回归的周期非常的大,也就是我们的持仓周期可能会很长,所积累的库存费也是我们需要考虑的因素之一,如果平台的库存费比较高的话,很有可能策略赚的钱都亏在库存费上面了。所以建议优先在没有仓息的期货合约上执行。

         ③ 这个策略的开仓条件还是比较苛刻的,必须要残差的绝对值大于2才会开仓,假如这段时间这两个油都比较“乖”,没有出现太大的“分歧”的话,策略也很有可能出现一个月甚至几个月都不开仓的情况,这个策略本身也属于低频对冲的策略,不适合给性子比较“急”的人来做。

         ④ 市场的变化。我们上面提到的回归方程: USOUSD = a0 + a1 * UKOUSD,是基于前面4年的历史数据统计得到的,他并不代表将来也会满足这个规律,如果因为什么根本性的地缘政治因素导致两油的价差加大或者缩小的话,这个回归方程也会失效,策略就赚不到钱了,这个时候就需要重新做一次回归来调整这个方程的系数,更新回归方程来适应市场。

关于OilHedging两油对冲策略的更多金融工程学解释,您也可以点击下方链接:

如果您对我们的策略感兴趣,也可以点击联系我们与站长进行更多交流。

分享到