在上一篇文章中(https://www.fmz.com/digest-topic/4187),咱们介绍了配对交易策略,并演示了如何利用数据和数学分析来建立和自动化交易策略。多空均衡权益策略是适用于一篮子交易标的的配对交易策略的天然延伸。其特别适用于品种众多且有相互关联性的交易市场,好比数字货币市场和商品期货市场。算法
基本原则
多空均衡权益策略是同时作多和作空一篮子交易标的。就像配对交易同样,肯定哪一种投资标的价格便宜,哪一种投资标的价格昂贵.不一样的是,多空均衡权益策略会将全部投资标的排在一个选股池中,以肯定哪些投资标的相对便宜或者昂贵。而后,它将基于排名作多头部前n个投资标的,而且以等金额作空底部n个投资标的(多头头寸的总值=空头头寸的总值)。
还记得咱们以前说配对交易是一个市场中立的策略吗?多空均衡权益策略也是如此,由于多头和空头头寸等额确保策略将保持市场中性(不受市场波动影响)。该策略在统计上也很稳健;经过对投资标的进行排名并持有多个头寸,你能够对你的排名模型进行屡次开仓,而不只仅是一次性风险开仓。你纯粹押注的只有你排名方案的质量。
什么是排名方案?
排名方案是能够根据预期的表现为每一个投资标的分配优先级的模型。其中的因子能够是价值因子,技术指标,订价模型或上述全部因子的组合。例如,你可使用动量指标对一系列趋势跟踪投资标的进行排名:预计具备最高势头的投资标的将继续表现良好并得到最高排名; 动量最小的投资标的表现最差,收益率最低。
该策略的成功几乎彻底在于所使用的排名方案,即你的排名方案可以将高绩效投资标的与低绩效投资标的分开,更好地实现多空投资标的策略的回报。所以,制定排名方案很是重要。
怎样制定排名方案?
一旦咱们肯定了排名方案,咱们显然但愿可以从中获利。咱们这样作是经过投入相同数量的资金来作多排名靠前的投资标的,并作空排名底部的投资标的。这确保了策略只会按照排名的质量按比例赚钱,而且将是"市场中立"的。
假设你正在对全部投资标的m进行排名,有n美圆投资,并但愿持有总共2p(其中m> 2p)的仓位。若是排名rank 1的投资标的预计会表现最差,那么排名为m的投资标的预计将表现最佳:
- 你将投资标的排列为:1,......,p这样的位置,作空2/2p美圆的投资标的
- 你将投资标的排列为:m-p,......,m这样的位置,作多n/2p美圆的投资标的
注意:因为价格跳动致使的投资标的价格不会老是均匀地划分n/2p,而且必须以整数购买某些投资标的,因此会有一些不精确的算法,算法应尽量接近这个数字。对于运行n = 100000和p = 500的策略,咱们看到:
n/2p = 100000/1000 = 100
这对于价格大于100的分数会形成很大的问题(如商品期货市场),由于你不能开仓分数价格的仓位(数字货币市场这个问题不存在)。咱们经过减小分数价格交易或增长资原本缓解这种状况。
让咱们来看一个假设的例子吧
首先,为了工做的顺利进行,咱们须要搭建咱们的研究环境,本文咱们使用发明者量化平台(FMZ.COM)进行研究环境的搭建,主要是为了后期可使用此平台的方便快捷的API接口和封装完善的Docker系统。在发明者量化平台的官方称呼中,这个Docker系统被称为托管者系统。
- 关于如何部署托管者和机器人,请参考我以前的文章:https://www.fmz.com/bbs-topic/4140
- 想购买本身云计算服务器部署托管者的读者,能够参考这篇文章:https://www.fmz.com/bbs-topic/2848
在成功部署好云计算服务与托管者系统后,接下来,咱们要安装Python目前最大的神器:Anaconda。为了实现本文所需的全部相关程序环境(依赖库,版本管理等),最简单的办法就是用Anaconda。它是一个打包的Python数据科学生态系统和依赖库管理器。
- 关于Anaconda的安装方法,请查看Anaconda官方指南:https://www.anaconda.com/distribution/
- 本文还将用到numpy和pandas这两个目前在Python科学计算方面十分流行且重要的库。以上这些基础工做也可参考我以前的文章,里面有关于如何设置Anaconda环境和numpy和pandas这两个库的介绍,详情请见: https://www.fmz.com/digest-topic/4169
咱们生成随机投资标的和随机因子,对其进行排名。让咱们假设咱们将来的回报实际上取决于这些因子值。
如今咱们有因子价值和收益了,咱们能够看到若是咱们根据因子价值对投资标的进行排名,而后开仓多头和空头头寸会发生什么。
咱们的策略是在一篮子投资标的池中作多排名第一的;作空排名第10的。这个策略的回报是:
其结果为:4.172。把钱放在咱们的排名模型上,以让其可以从低绩效投资标的中分离高绩效投资标的。在本文接下来的内容中,咱们将讨论如何评估排名方案。基于排名的套利赚钱的好处在于它不受市场无序的影响,反而能够利用它。
让咱们考虑一个现实世界的例子
咱们为标准普尔500指数中不一样行业的32只股票加载数据并尝试对它们进行排名。
让咱们以一个月时间周期的标准化动量指标做为排名依据
如今咱们将分析咱们股票的行为,看看咱们的股票在市场中如何在咱们选择的排名因子中运做。
分析数据
股票行为
咱们看看咱们选择的一篮子股票在咱们的排名模型中是如何表现的。为此,让咱们计算全部股票的一周远期回报。而后咱们能够看看每一个股票的1周前向回报与以前30天动量的相关性。表现出正相关的股票是趋势跟随,表现出负相关的股票是均值回归。
咱们全部的股票都在必定程度上均值回归!(显然咱们选择的宇宙就是这样运做的)这告诉咱们,若是股票在动量分析中得分排名很高,咱们应该预计其下周表现不佳。
动量分析得分排序与收益之间的相关性
接下来,咱们须要看看咱们的排名得分和市场整体的前向回报之间的相关性,即预计回报率的预测与咱们的排名因子的关系,较高的相关性等级是否能够预测较差的相对回报,又或者反之亦然?为此,咱们计算全部股票的30天的动量和1周远期回报之间的每日相关性。
每日相关性表现的很是嘈杂,但很是轻微(这是预期到的,由于咱们说过全部的股票都会均值回归)。咱们还要看看1个月前向回报的平均每个月相关性。
咱们能够看到平均相关性再次略微为负,但每月也会变化很大。
平均一篮子股票回报率
咱们已经计算了从咱们的排名中取出的一篮子股票的回报。若是咱们对全部股票进行排名而后将它们分红nn组,那么每组的平均收益是多少?第一步是建立一个函数,该函数将给出每个月给定的每一个篮子的平均回报和排名因子。
咱们根据此分数对股票进行排名时计算每一个篮子的平均回报。这应该让咱们能够了解很长一段时间内他们的关系。
彷佛咱们可以将高绩效者与低绩效者分开了。
利差(基差)一致性
固然,这些只是平均关系。为了了解这关系是多么一致,以及咱们是否愿意进行交易,咱们应该随着时间的推移来改变看待它的方法和态度。接下来,咱们将查看它们前两年的月度利差(基差)。咱们能够看到更多变化,进行进一步的分析以肯定这个动量分数是否能够交易。
年回报率:5.03%
咱们看到,咱们有一个很是微弱的排名方案,只能温和地将高绩效股票与低绩效股票区分开来。 此外,这个排名方案没有一致性,每个月变化很大。
找到正确的排名方案
要实现多空均衡权益策略,你实际上只须要肯定排名方案。以后的一切都是机械的。一旦你有一个多空均衡权益策略,你能够交换不一样的排名因子,别的都不用太大的改动。这是一种很是方便的方法,能够快速迭代你的想法,而无需担忧每次调整所有代码。
排名方案也能够来自几乎任何模型。它不必定是基于价值的因子模型,它能够是一种机器学习技术,能够提早一个月预测回报并根据该等级进行排名。
排名方案的选择与评估
排名方案是多空均衡权益策略的优点所在,也是最重要的组成部分。选择一个好的排名方案是一个系统的工程,并无简单的答案。一个很好的起点是选择现有的已知技术,看看你是否能够稍微修改它们以得到更高的回报。 咱们将在这里讨论几个起点:
- 克隆和调整:选择一个常常讨论的内容,看看是否能够稍微修改它以得到优点。一般状况下,公开的因子将再也不有交易信号,由于它们已彻底套利出市场。可是,有时它们会引导你朝着正确的方向前进。
- 订价模型:任何预测将来回报的模型均可能是一个因子,都有潜在的可能用于对你的一篮子交易标的进行排名。你能够采用任何复杂的订价模型并将其转换为排名方案。
- 基于价格的因子(技术指标):基于价格的因子,如咱们今天所讨论的,获取有关每种权益的历史价格的信息,并使用它来生成因子价值。例子多是移动平均指标,动量指标或波动率指标。
- 回归与动量:值得注意的是,有些因子认为价格一旦朝着一个方向发展,就会继续这样作。有些因子偏偏相反。二者都是关于不一样时间范围和资产的有效模型,而且研究基础行为是基于动量仍是基于回归是很重要的。
- 基本因子(基于价值):这是使用基本价值的组合,如PE,股息等。基本价值包含与公司的现实世界事实相关的信息,所以在许多方面能够比价格更强大。
最终,发展预测因子是一场军备竞赛,你正试图保持领先一步。因子会从市场中被套利而且具备使用寿命,所以你必须不断地开展工做以肯定你的因子经历了多少衰退,以及可使用哪些新因子来取代它们。
其余考虑因素
从新平衡频率
每一个排名系统都会在稍微不一样的时间范围内预测回报。基于价格的均值回归可能在几天内可预测,而基于价值的因子模型可能在几个月内具备预测性。肯定模型应该预测的时间范围很是重要,并在执行策略以前进行统计验证。你固然不但愿经过尝试优化从新平衡频率来过分拟合,你将不可避免地找到一个随机优于其余频率.一旦肯定了排名方案预测的时间范围,尝试以大约该频率进行从新平衡,以便充分利用你的模型。
资本能力和交易成本
每种策略都有最小和最大的资本容积,最低门槛一般由交易成本决定。交易太多股票将致使高交易成本。假设你想购买1000股,那么每次从新平衡将产生几千美圆的成本。你的资本基础必须足够高,以使交易成本占你的策略产生的回报的一小部分。例如,若是你的资本为100,000美圆且你的策略每个月赚取1%(1000美圆),则全部这些回报将被交易成本占用。你须要以数百万美圆的资本运行该策略获利超过1000股。
最低的资产门槛,主要取决于交易的股票数量。然而,最大容量也很是高,多空均衡权益策略可以交易数亿美圆而不会失去优点。这是事实,由于该策略相对不常常从新平衡.总资产数量除以交易的股票数量,每股的美圆价值会很是低,你没必要担忧你的交易量会影响市场。假设你交易1000股,也就是100,000,000美圆。若是你每月从新平衡整个投资组合,那么每一个股票每个月会只交易100,000美圆,这对于大多数证券而言不足以成为重要的市场份额。