(触手译)4/N_exAHL顶级对冲基金经理:系统化交易

UP主自行翻译,严禁复制用于任何商业用途
已翻译章节回顾:
人的主观认知缺陷;金融行为学;引出系统化交易的必要性;
市场历史数据表现的分布状态;
好的系统必备特征;
系统失效的特征(盈利的来源);
交易风格在历史统计上的表现区别;
可实现的夏普率表现;
提高夏普率的方式;
——————
拟合分类
过拟的风险
当拟合开始走坏
一些有效拟合的规则
如何选择拟合规则
经常白嫖的人会 1产生幻觉 2记忆力差 4不识数 6神志不清 这九点大家记牢
--------------------------------------------------------------------------------------
这个系列是全球顶级CTA对冲基金AHL的基金经理Robert Carver的Systematic Trading书籍(中文译)。
笔者在AHL的十几年里管理了数十亿的全球宏观对冲基金。离开AHL后,运用这一套系统规则超过7年。其本人有Pyton写的开源回测框架及交易系统.https://qoppac.blogspot.com/
我抽空余时间把书籍按照自己的理解翻译出来。因为内容真的很多,所以见谅,更新的会比较慢。
本书作为入门书籍,仍旧有难度,因为有相当多的东西和实盘实战挂钩。框架建立于理论,但其它包括回测等等的很多细节问题都仍旧需要单独解决。
无论是主观交易、半自动交易、程序化交易,都推荐阅读的,从入门到放弃的书籍。
细节的备注和超级链接会在后续添加。
--------------------------------------------------------------------------------------
第二大块——工具
第四章:投资组合配置
坚定的系统化交易者、资产配置投资者
这一章节主要介绍你如何在不同的交易规则和标的品种上配置你的资产。对于资产配置投资者来说处理在不同标的品种上的配置非常重要,而对于坚定的系统化交易者来说,即需要处理标的资产,又需要处理规则。
如果你是半自动交易员,那这篇文章跟你没太大关系,因为你不会使用系统化的交易规则,会根据情况交易不同的标的资产。所以你可以跳过这一章。
如何在资产组合中进行配置是每个投资者都面临的问题。股票、债券、现金各多少?应该在不同国家之间平均分配你的资产、还是全部投在美国市场。
配置决策对系统性投资者和交易员来说同样重要。如果你是一个坚定的系统交易员,运行不止一条交易规则,还包括很多变量,那么你需要决定当你将规则组合在一起来预测每种标的资产的的价格时,使用多大的预测权重。坚定的系统交易员和资产配置投资者也需要决定标的资产的权重,在你的交易系统下投资组合中每一个标的资产配置多少。因为本章中使用的工具用来做这两种决定的,它可以是标的资产,也可以是交易规则。在本书的后面,我将向你展示这两种分配问题的具体例子。就像交易规则一样,投资组合权重可能会被过度组合。优化权重可以让你的投资组合在回测中表现非常好,但在现实中交易时却很糟糕。这类投资组合通常非常极端。在本章中,我将向你展示如何避免这些高度单一投资组合的陷阱。
章节概述
优化变坏——经典的投资组合优化常常会导致过拟合,极端的投资组合权重
节省优化本身——另一种技术,bootstrapping,可以帮助我们了解到底是哪里出了问题
手动调整权重——如何使用简单的手动方法来获得投资组合的权重
合并夏普率——通过使用额外的预期表现数据来增加手动权重
优化变坏
介绍什么是优化
投资组合优化用来找到资产权重,这组资产权重能给出最佳的预期风险调整回报率,通常用夏普比率来衡量。它给出的结果是一些预期平均收益率,收益率的标准差,以及它们之间的相关性。这一标准方法是由哈里·马科维茨在20世纪50年代首次提出的。这是一个解决复杂问题的简洁方案。不幸的是,这一切太容易被形而上学带偏了,而忘记了数学背后的重要假设。正如你将在下面看到的,盲目使用这种方法经常会导致带有极端权重、很差劲的投资组合。仅仅因为一个方程看起来很奇妙,并不意味着你应该盲目地使用它的结果而不考虑后果。在我职业生涯的早期,我被这些搞笑的公式搞得心烦,最终得到的是一些糟糕的投资组合,直到我认识到自己的错误。后来我不得不经常审查那些经验较少的研究人员做出的组合配置的建议,尽管他们无疑比我更聪明,在学术上也更有资格。当我问其中一位火箭科学家,他们对自己发现的极端投资组合权重有何看法时,我经常得到的回答是耸耸肩。“反正这就是优化结果呗。”不用讲,公式肯定是对的。希望读完这一章后,你不会像之前那样那么相信非常吸引人的数学计算。
一些好的信息
投资组合优化很难。但当你用它来设计交易策略时往往是看不到那些很难得点。这是因为你不能直接决定你在各种标的品种上的头寸应该是多少。相反,你要决定应该给交易系统的不同部分赋予什么权重。这些可以是预测权重,告诉对于一个特定得标的品种,交易规则使用怎样得组合变量(trading rule variations),或者是标的品种的权重(instrument weights),决定了你的资本给每个品种上各分配多少。有两个好处。首先,你的投资组合中不能有负权重;你不能做空交易规则,所以最低的可能权重是零。如果一个交易规则预计会赔钱,那你得规则里根本就不应该包含这个赔钱规则;其次,使用我的框架将意味着从你的交易规则中获得的利润具有相同的预期收益标准差。这是因为我在第二章“系统交易规则”中提到的波动性标准化。通过使用这种技术,你可以简化问题,只需要使用预期的夏普比率和相关性来计算出你的权重。
虽然你不会在你的交易系统中优化单个资产(如股票或债券)的潜在头寸,但在本章中,我将使用简单资产的投资组合,以使示例更直观。然而,为了更容易地解释结果,我将在所有计算之前调整资产回报,以便它们具有与你在交易系统回报时相同的标准差。(触手:听起来有些拗口,先看看例子)
投资组合权重的不稳定
让我们举一个在三种资产之间配置资本的简单例子:
纳斯达克(NASDAQ)、标普500 (S&P 500)美国股指,以及美国20年期基准债券。
我使用的数据是从1999年1月到2014年年中,所有的回报都是波动性标准化的,具有相同的预期标准差。从2000年1月开始,我每年都会用以前所有年份的收益来计算一些最佳权重,因为每次优化都使用所有可用数据来创建一组权重,所以我将其称为单周期优化。计算采用经典的马柯维茨优化方法;我通过使用估计的平均值和相关性,以及标准偏差(这些都是相同的,因为我使用了波动率标准化),得到了最大的风险调整回报(例如夏普比率)。我也不允许权重为负,它们的总和必须恰好为100%。图14显示了每年计算的权重。在上世纪90年代末科技热潮的最后阵痛中,我很自然地把所有的钱都投进了快速上涨的纳斯达克(NASDAQ)。然后,这部分资产发生崩盘,并被永久地从投资组合中移除。在剩下的大部分时间里,我把全部资金都投入了债券。最后,我只持有25%的股票,全部都是标普500指数。很明显这是一个非常极端的投资组合,其权重非常不稳定。

并不是所有的统计预估结果都是等权的
面对这样的糟糕结果,一个自然的反应是放弃任何优化的想法。也许我们应该平均分配我们所有的资产。许多学术研究人员也得出了这个结论,而且有大量的证据表明等权重是很难被打败。
什么时候等权重有意义
1:相同的波动率:如果所有资产的预期收益率标准差相同。因为我们使用了波动性标准化,所以会一直保持这种情况。
2:相同的夏普比率:如果所有资产的预期夏普比率(SR)相同。
3:同样的相关性:如果所有资产的预期收益变化都相同。
如果这些假设不正确,那么你的投资组合应该是什么样的呢?我们应该有怎样的投资组合……
1: 相同的夏普比率和相关性:等权。
2:显著不同的夏普比率(SR):预期具有较高SR的资产的权重较大,低SR的资产的权重较小。
3:显著不同的相关性:给那些与其它资产相关性较低同时也高度分散化的资产较大的权重,分散程度较低的资产较小的权重。
我们在下面这个简单例子中看看这些假设是否正确。图15显示了这三种资产的夏普比率分布。注意,这些线大部分是重叠的;这意味着我们无法区分每种资产的历史表现。虽然债券确实有较高的平均收益率,但这种优势在统计上并不显著。如果你阅读了前一章,并记住表6,就会发现15年的数据不足以说明哪一种资产拥有最佳的SR。

相反,我们常常可以区分不同的相关性。图16显示了我的简单示例中的相关性分布。你应该能够很容易地将相关股票和多元化债券资产区分开来。所以在这个简单的例子中,我应该能够比等权做得更好,因为有关于相关性的重要数据。一个好的投资组合应该拥有更多多元化的债券资产,而不是股票,但不会过多地考虑到差异并不大的夏普比率。然而,经典优化不是这样做的,因为它不能看到图15和图16中的所有信息。它只粗暴的使用了平均SR和平均相关性,不知道也不关心每个给到的估计结果中存在多少不确定性。

节省优化本身
我们如何解决这个问题?我有两个技巧。第一个是相当困难的工作,叫做bootstraping自举(触手:机器学习也在使用类似的方式)。这涉及到对数据的不同部分重复多次优化,获取结果权重,并将其平均。所以权重是多次优化的平均值,而不是根据所有数据的平均值做的优化。自举的理由很简单。我相信过去是对未来的很好的指引,但我不知道过去的哪一部分会重演。为了对冲风险,我假设任何一个特定的历史时期重复出现的可能性都是均等的。所以用所有在前一时期表现最好的投资组合的平均值是合理的。与经典的优化相比,Bootstrapping有一些很好的优势。大多数个体优化都有极端权重。然而,有了足够多的个体优化,平均水平就不太可能达到极端。如果我的数据噪音比较多,而过去的数据又包含了非常多不同的时期,那么最优投资组合的权重将接近等权。但如果夏普比率或相关性存在显著差异,类似的投资组合将反复出现,而平均值将反映这一点。平均权重自然反映了数据的不确定性。让我们看看在我们简单的三个资产组合上运行扩展窗口自举优化的结果。图17显示了一段时间后的结果,而表7将最终权重与经典单周期优化和等权重进行了比较。第一年之后,权重相对稳定,所有时期的权重都没有单时期方法那么极端。然而,分散投资于债券的比重要大于等权比重,所以这种投资组合应该会有更好的表现。


bootstraping需要一个合适的软件包,编写自己的优化代码的能力,如果你对这项技术感兴趣,附录c中有更多的细节。同时,我将向你展示我用来获得稳健投资组合权重的第二种更简单的方法。
手动计算权重
如果你请一位经验丰富、技术娴熟的投资组合优化专家(而不是使用自举法的专家)为你做一些工作,就会发生奇怪的事情。在你的注视下,他们会拿出他们的优化软件,很娴熟地给出一些权重建议。正如我们所看到的,这些资产不可避免地很糟糕,许多资产的权重为零,而一两个资产的权重却很大。然后专业会建议你先去喝杯咖啡,他们要开始施法了。等你回去了发现,权重发生了可疑的变化,他们现在好多了,也不那么极端了。询问一番,专家会承认他们用各种神秘的手段折磨软件,直到它产生正确的结果。专家们只需要粗略地看一下问题,就知道一个好的答案应该是什么样的,他们的技能在于从计算机中提取答案。我记得曾经有人告诉我:“优化与其说是一门科学,不如说是一门艺术。”这似乎从来没有特别令人满意。我更喜欢无论谁在操作,对相同的数据集总是产生完全相同的结果的这类过程。
离开金融业后,我给自己设定了创建自己交易系统的任务,自然意味着进行一些优化。而写我认为我应该第一次尝试使用的更简单的单周期方法需要一些时间。我很快就发现自己得到了自己不喜欢的权重,于是我就像往常一样,开始优化他们。在玩了几分钟优化器后,我很快意识到最好是完全扔掉这种形而上学的伪优化过程。为什么不先写下正确的权重呢?要想准确定义一个给定投资组合的“好”权重是什么样子,难度就大一些了。我从小的投资组合开始。对于权重相等的简单情况,这很容易。为了处理比较困难的情况,我使用了bootstrapping方法在模拟数据上得到的实验结果。为了应对更大的投资组合,我将问题模块化。所以,我首先研究投资组合的子集,然后把它们分成若干组,然后计算每个组相对于其他组的权重。如果有必要,我会根据问题的复杂程度使用多个级别的分组。手工制作的方法诞生了。我们来更详细地看看它是如何工作的。
手动调试的方法
这个过程包括以一种自下而上的方式构建投资组合,首先组合相似的资产组合。在组内和组间,你可以使用一个类似投资组合的最佳权重表来设置分配。这些权重来自于我自己的自举实验。正如你所期望的那样,该方法假设所有资产都有相同的预期收益率标准差。现在,我还假设它们的夏普比率(SR)相同。我稍后会放宽这个假设,但正如你在上面看到的,也许在上一章中看到的,在夏普资产比率之间找不到统计上的显著差异是很常见的。所以你只需要知道相关性可能是什么。正如你将看到的,这些并不需要很精确,你可以用历史数据来估计它们,也可以根据投资组合中的资产性质来进行有根据的猜测。如果你不想自己猜测,那么附录C中的表50 - 57显示了不同工具的收益之间的一些粗略的相关性,以及同一工具的不同交易规则。一旦你有了相关性,你只需要将相关性最高的资产组合在一起。除了一些不寻常的投资组合,这些组合通常非常明显;例如,在日经股票投资组合中,你可能会把所有日本公用事业股票,所有银行股票放在一起,等等。理想情况下,一个资产组合应该只包含一、两或三种资产,但如果它们的相关性足够高,更多资产也可以。
这种模式的正确权重如表8所示。如果没有显示确切的相关值,那么你应该四舍五入到最接近的相关数字。负值应取零为下限。三种资产相关性分别为A与B、A与C、B与C。这些分别给出了资产A、B和C的权重。

请注意,这里没有显示这些相关性的其他排列,它们只是对表中包含的一组值进行重新排序。举个例子,假设你的投资组合有三种资产:美国债券(D)、标准普尔500指数(E)和纳斯达克指数(F);相关系数为-0.3 (DE)、-0.2 (DF)和0.8 (EF);你会四舍五入哪一个0.0 (DE), 0.0 (DF), 还是0.9 (EF)。
重新排序后映射到ABC表中相应的行号6 = 0.0 (DE映射AB),0.9 (EF映射到AC), 0.0(DF映射到BC),给A的权重为27%,B为46%,C为27%,回过头看最初的问题(E = A, D = B, F = C),各自的权重为美国国债(D)46%,标准普尔500指数27% (E)和纳斯达克 27% (F)。让我们直观地想一下这些权值是从哪里来的。股票并不是很多样化,因为它们之间的相关性为0.90。但债券与这两个股票指数不相关,因此要增加投资组合的多样化。因此,它们获得了更高的权重,而股票的权重给的少是很合情合理的。
一旦处理完每个组,然后根据对组之间相关性的猜测或估计,为每个组分配权重。最后,每项标的资产在整个投资组合中的权重就是其所属组的总权重乘以其在组内的权重。
根据投资组合的规模和结构,这个过程可以在两个级别上完成,就像这里解释的那样,如果所有资产都很容易地归入表8,而不需要子组,那么在一个级别上,当然你需要的话,可以搞三个或三个以上的级别。
要了解这种组合是如何起作用的,请再次考虑美国债券的三种资产组合:标普500 (S&P 500)和纳斯达克(NASDAQ)。根据常识和上面估计的相关性,我应该为单一债券资产创建一个组,为两个股票指数创建第二个组。我是这样计算权重的。显示的行号参考表8中的相关行。

每个股票指数取50%(组内权重)乘以50%(组内权重)即25%。一种债券资产得到另外50%权重如图9所示。它们非常接近未分组的手工加权,也接近完整的bootstrap方法在最后一次迭代中给我们的结果——尽管两种手工方法只需要几秒钟,而且不需要计算能力。因为我没有使用夏普比率,所以债券和标准普尔500指数不会有轻微的超重,就像我们在bootstrap结果中看到的那样。这个缺点我会在接下来解决它。

该表显示了等权重的投资组合经过单周期优化、bootstrap、不带分组、带分组手工优化后,各自的最终投资组合权重
我们是在作弊吗?
手工制作的方法不容易在多年内自动重复,因此不适合扩展或滚动样本的回测。你用对历史数据的了解,在投资组合权重的样本集中拟合一个,可以说由此产生的投资组合存在过拟合的危险。如果你使用的是估计的相关性,那么这种情况更有可能发生,不过,基于有根据的猜测的相关性也存在问题,因为这两者都意味着你在回测开始时就已经知道了未来。
放松,你会使用未来的数据,你得到的权重也比单个周期内优化产生的样本权重要小得多。此外,相关性通常不会发生太大的变化以至于手工制作的权重随着时间的推移会产生很大的不同。因此你使用所有数据做出的权重和你早前一些时间使用历史数据回测得到的权重很可能是非常相似的。此外,目前该方法忽略夏普比率(SR)的差异,这也确保了权值不会出现极端,而是相对稳定的。
为了解释这一点,我在第十五章为坚定的系统化交易者拟合了一个交易系统。我在样本中使用手工制作,没有用boostraping,得到了一个比较细微的优势(夏普率0.54,而不是0.52)。相比之下,样本内单周期优化产生的夏普率0.84但是非常的不切实际;在我使用单周期方法执行样本外拟合的时候,表现得很差,夏普率只有0.3。
尽管如此,相比bootstraping这种真正得样本外测试方法,对手工制作得投资组合进行回测得结果肯定是要多一些怀疑。
结合夏普率
基本手工制作方法假定所有的标的资产都有一样的夏普率。通常情况下你都不会有足够的历史数据来证明他们在历史样本种的夏普率有显著差异。不过有时候你可能会对资产相关的夏普率有一些可行的想法。
一个我稍后会提到的例子是当一些标的品种比其它品种的交易手续费要高(泛指交易损耗),交易手续费相比资产表现等等的东西有更明确的确定性,所以你可以在统计上得到它们对资产收益影响的观点。
另一种情况是当你正在按照我在前一章节中推荐的选择交易规则的推荐步骤,在我推荐的方法中,你不会在决定权重之前就删掉那些无利可图的交易规则。事实上如果一个交易规则在回测中非常糟糕的话,你自然就会想要减少它的权重。最终它还是得有一些权重,因为你很难找到足够的证据来证明某一个规则肯定比另一个规则更好或者更差(如上一章描述得)
通过对随机数据进行实验,我计算了在一组真实夏普率不同的标的资产中,bootstrap得到的权重是如何变化的。这些调整可以应用于手工制作的权重。这些结果见表12。为了避免出现无限排列,结果都是相对的,所以夏普率相对于平均夏普率比较重要。


该表显示了在给定标的资产夏普率与投资组合平均夏普率的差值下、用于调整手工制作权重的调整因子,一些确定的夏普率估计和用于估计的一些数据(列)。A列;夏普率差异是非常明确的,例如不同的交易成本。B列:使用超过十年的数据估计夏普率。C列:使用不到十年的数据估算夏普率。

初始权重:给出投资组合里标的各自的权重。加起来是100%。
计算夏普率:在投资组合里,使用历史数据,交易成本预计,或者其它方法,计算出每一个标的品种的预期夏普率。
夏普率与平均夏普率:计算整个投资组合的平均夏普率,然后计算出每个标的夏普率与平均夏普率的差值。
得到乘数:根据你对SR估算的确定程度,以及使用了多少数据(如果相关的话),从表12中的A、B或C列中为每个标的品种找到权重乘数。
相乘:用相关乘数与投资组合中的每个权重相乘。
正常化:投资组合中的权重和相加可能不是100%,如果必要的话,把权重正常化使得最后权重和是100%。
组合配置相关的内容具体看原文吧,也有例子。感觉翻译起来有点吃力。先这样了