配对交易:基于距离的配对选择(2)
系列文章
1 概述
2.1.1 基于距离的配对选择(1)
2.2.1 基于协整的配对选择(1)
github仓库地址:https://github.com/financialnoob/pairs_trading
在上一篇文章中,我测试了基于距离的配对选择方法(您可以在这里阅读)。我们发现它在寻找交易期间不会太大偏离的股票对方面并不是很有效。在这篇简短的文章中,我想要实施几种可能的改进于距离方法,并在相同的数据集上测试它。
现在,我不再依赖于配对中两只股票的累计回报之间的距离,而是将使用几种其他测试来确定该对是否适合交易。对于每一对可能的配对,我将测试:
- 配对中的股票是否协整(CADF p值<0.01)
- 价差的Hurst指数<0.5
- 价差的均值回归半衰期超过1天且少于30天
- 价差的零交叉次数>每年12次
我将只继续处理满足以上所有标准的配对。
之后,我将测试几种选择最佳交易对的方法:
- 累计回报之间欧几里得距离最小的配对
- 价差零交叉次数最多的配对
- 皮尔逊相关系数最高的配对
我将省略下载和准备数据的步骤,因为我在上一篇文章中已经解释了。
12个月的形成期/6个月的交易期
我已经测试了所有263901个潜在配对,并发现有1703对满足上述标准。下面您可以看到按照两个组成股票的累计回报之间的欧几里得距离排序的选定配对的数据框。
现在,让我们尝试选择零交叉次数最多的前5对配对。
我想尝试的最后一件事是选择皮尔逊相关系数最高的前5对配对。
36个月形成期 / 6个月交易期
当我们将形成期增加到36个月时,只有263901个潜在配对中的236个满足所有四个条件。现在,我将从欧几里得距离开始测试三种配对选择方法。
现在看来我们至少有了一些小的改进:大多数选定的配对在大部分交易期内不会偏离太多,并且保持在2-SD带内。交易机会的数量不大,但无论如何,这是我们迄今为止看到的最好的一组配对。
让我们尝试按零交叉次数排序配对。
只有一对表现得还算不错——TII-TPH。所有其他的都与历史平均值偏离太远。
现在,我将尝试选择皮尔逊相关系数最高的前5对配对。
在这里,我们看到两对在大部分交易期内保持在2-SD带内。其他三对与均值偏离太多。
总结
在这篇文章中,我实施并测试了对配对选择的距离方法的一些改进。虽然我们没有看到在选定的配对质量上有巨大的改进(大多数配对在交易期间仍然偏离太多),但将这些方法与更长的形成期结合使用的结果看起来很有希望。我认为,将这里实施的一些技术与配对选择的协整方法结合测试可能会很有趣。我将在下一篇文章中写关于它的内容。
源代码的Jupyter笔记本可在此处获取。
注意:如果您想在您的笔记本电脑上运行此代码,您可能希望使用更小的股票池;否则可能需要很长时间。
如果您有任何问题、建议或更正,请在评论中发布。感谢阅读。