当前位置: 华文世界 > 股票

读书笔记——【趋势交易】[作者]安德烈亚斯F.克列诺

2024-01-31股票

一、趋势跟踪策略的特性

准确地讲,趋势跟踪者并不是简单地「低买高卖」,而是追求在高位买进后能以更高的价格卖出,或低位卖空后能以更低的价格平仓。使用这类策略会让我们的入场动作经常显得比别人晚半拍,而退出的时机似乎又总是姗姗来迟,但会尽可能地享受到从顶部到底部之间的大部分收益。从理论上讲,所有趋势跟踪策略都是一样的,它们最重要的核心假设是「金融市场总是倾向于相当长的一段时间里按照同一方向运动」。

趋势跟踪的方法若是仅应用在任何单一的投资工具或资产上,很可能在相当长的一段时间里都不会有盈利的能力,而投资人只好接受一笔又一笔的亏损,眼睁睁地看着总资产不断缩水。这不仅仅是财产上的损失,而且心里也会感到很不愉快。分散化趋势跟踪策略的长期稳定表现,取决于是否包含了足够广泛的资产类别!无论是策略的模拟还是实盘的操作,我们不仅要关心整体回报的绝对数值,还应该注意产生的回撤和波动率。

事实上,就其重要性而言,开仓和平仓的作用远远不如行之有效的仓位控制和投资的分散化原则。对于任何一种趋势跟踪策略,有缺陷的开仓、平仓方法加上行之有效的投资分散化和风险控制方法,还是有很大的希望会赚到钱。若反其道而行之,则灾祸必然就不远了。

二、解密趋势跟踪策略的魔盒

确实还是有几个方面的因素会对结果产生较大的影响,因此我们要对这几处提起特别的关注。相对于运行上千次的模拟去寻找突破点或者尝试不同的均线方法等,在以下几个因素上多花一些心思可以极大地提高我们的工作效率。

(1)投资组合的分散化程度:实现高度的分散化是取得较好的长期投资结果的最关键的一个因素。改变投资的品种以及调整在不同板块上配置的权重都会对投资业绩产生巨大的影响。

(2)持仓限额:我们需要找到有效的方法,根据每个品种的波动性正确地算出相应的持仓限额。能够做到这一点至关重要,但幸运的是这类方法并不一定很复杂。

(3)投资的期限:我们需要首先考虑到底要追踪多长期限的趋势,比如到底是一两周的趋势,还是5~8周的趋势。选择不同时间跨度的趋势可能会导致投资结果出现巨大的差异。

(4)风险水平:我们总是要在风险与收益之间选择一个平衡点。承担的风险越高,就可能会获得更多的回报,但是我们所承受的风险水平应该让自己和投资人都感觉合适。

(5)单一策略还是多策略:虽然这两种方式下的长期收益会非常接近,但将同一种策略应用到不同的投资期限上或者同时使用多个相似的趋势跟踪策略,将有助于平滑短期上的业绩波动。

三、真实波动幅度均值(ATR)

目的在于测量各个品种正常情况下的日均波动幅度,并将结果作为调整仓位大小的依据。真实波动幅度的数值是根据每个交易日的最高价、最低价和收盘价计算出的价格变化区间。任一交易日的真实波动幅度的计算公式为:

TRt=max(Ht,Ct-1)-min(Lt,Ct-1)

式中,Ht和Lt分别是该交易日的最高价和最低价,Ct-1为前一个交易日的收盘价。用当天的最高价与前一日的收盘价之中的较高者减去当天的最低价与前一日的收盘价之中的较低者,最后得到的就是这一交易日全部成交价格的波动范围。而真实波动幅度均值(average true range, ATR)则是多个交易日价格波幅的数学平均值。我在计算每个品种在一段时间里的ATR时,采用指数移动平均化的方法进行处理。我们可能会在其他书中见到过用于平滑ATR数值的其他方法,但无论采用哪种方法,通常对最终结果的影响不大。

用ATR作为对波动率的估算的意义在于,ATR不但可用于在不同品种间横向比较并决定单个品种持仓限额的数值,而且也可用于估算单个品种在未来某个正常交易日内的价格变动范围。我们可以利用这个信息来设定单个头寸对整个投资组合的目标贡献。这种目标贡献度的具体量化数值即为本策略的风险因子,我们可以通过改变风险因子的大小来调节策略的杠杆程度,从而改变投资组合的整体风险水平。

四、持仓限额

在最初的策略中,我们先将单个品种的风险因子设置为20个基点,即理论上任何一个品种平均在一个交易日之内的变动对投资组合整体价值的最大影响应该为0.2%。假设当前整个投资组合的价值为100万美元,而每个品种20个基点的风险因子在理论上相当于2000美元的价值变动。如果在黄金上出现了买入的信号,而且黄金当时的ATR恰好为10美元,那么点价为100的纽约商品交易所的一手黄金期货合约(COMEX Gold)在理论上单日产生正常盈亏幅度为1000美元。因此,在当前的投资组合中,我们只需要买入两手黄金期货合约就足够了。

之所以反复使用「在理论上的影响」这一说法,是因为我们需要牢记任何品种的波动率都不是一个稳定的数值,它在头寸的持有期间可能会出现非常大的变动。而以上持仓限额的计算方法并不依赖于波动率的稳定性,因为我们用建仓时点的品种ATR值作为未来价格波动的合理近似。在整个持仓期间的合约数量会保持不变,不会随时间变化而有所增减。

用于计算持仓合约数的公式具体如下:

资产价值指的是交易账户中全部资产的总价值,或者在当前策略中所配置的资金总额;ATR值和点价的详细解释我们在前面已经讲过了(点价的概念在第2章有详细叙述)。如果波动率保持不变的话,上述公式的分母代表了该品种的正常日均波幅。还要注意以下三点:一是如果我们持有的期货合约涉及多种货币,一定要将每个公式分母上的结果都换算成与相应账户本币相同的币种;二是不同的合约对应的标的物的数量有所不同,所以每种合约的点价也会有所不同;三是由于我们只能以「手」为单位买卖期货合约,所以还应本着「宁错过,不做错」的保守原则,对合约数量的计算结果进行取整的处理。

这个数字0.002或者0.2%就是我们手中的指挥棒,我称之为风险因子。对于风险因子的具体数值,我们或多或少带有主观的因素,而调整风险因子的大小可以迅速改变整个策略的风险水平。我强烈建议在进入实盘操作之前要通过细致的模拟结果来确定风险因子的大小,以保证自己能够接受可能出现的波动情况。总之,较低的风险因子会产生较低的收益水平和较低的风险,而较高的风险因子对应着较高的收益水平和较高的风险。

五、两种趋势跟踪交易系统

1、均线买入法

一种方法是使用那些经典的趋势指标,比如利用移动平均线的交叉位置来决定买卖的点位(见下图)。当前这个版本的策略会用到两条天数不同的移动平均线,因此将会出现一条变化较快的移动平均线和一条变化较慢的移动平均线。这种策略的规则非常简单,如果一个品种移动平均的快线在慢线之上,我们则认定它正处于上升的趋势中。既然趋势是向上的,那么我们就应该根据趋势跟踪的交易原则开仓买入:如果价格继续向上,则理论上我们的收益可以无限大;如果价格在这时候发生反转,那么在触及止损后,我们就会以小亏出局。

2、突破买入法

另外一种策略是进入刚刚形成的趋势,并尽可能长地留在趋势中。该策略的规则也非常简单:如果当日的收盘价大于或者等于过去50天中的最高价,我们就在下一个交易日开仓买入;如果收盘价小于或等于过去50天中的最低价,我们就在下一个交易日开始开仓卖空。平仓的原则也相同,收盘价达到25天内的最低价则卖出平多,收盘价达到25天内的最高价则买入平空(见下图)。

3、参量稳定性

从表中我们可以看到,全部的模拟结果都是正收益。除了最短期的15天×30天突破策略外,其他策略的收益率与最大回撤的变化几乎都是按非常相近的比例同增同减,所以最后它们各自回撤与收益的比值相差不大。短期策略的情况经常会比较复杂,尤其在风险的处理上需要比中长期策略更为精细,因为使用短期操作更容易遭到反复地止盈或止损,从而导致更为频繁的交易。

六、过滤技术

趋势跟踪的方法一般还需要相应的过滤技术,以保证买入操作只发生在市场进入上涨的趋势之后,而卖出发生在市场进入下降的趋势之后。很多趋势跟踪者都不希望被短期的扰动诱入到不利的强趋势中,而有效的过滤技术可以帮助我们解决这个问题。

均线策略的最大问题是它的交易永远不会停止,即使在还没真正形成趋势的时候也得继续运行。而这个策略在市场转入震荡行情之时会出现反复止损后又不得不再次开仓的情况,这种频繁的多空转换每次多少都会带来一定的损失。出现这种状况不仅会造成无法盈利,而且会让操盘的人感到心烦、沮丧,甚至产生自我怀疑。

其实移动平均线本身就是一个很好的趋势滤波器,退一步讲,我们至少可以用变化较慢的移动平均线(用于计算移动平均的天数较多)来确认中期趋势的方向。下图示的是原油价格在一个阶段的牛市以及随后的熊市。我们用两条移动平均线的组合来识别当前市场所处的熊牛阶段,其中颜色较深的实线是100天移动平均线,而较浅的线代表的是50天移动平均线。在这里,这两条移动平均线并不是被用来发现交易信号的,而是被当作指示主要趋势方向的滤波器。如果我们依照滤波器所指的方向,只在上升趋势中买入,或者只在下降趋势中卖空,那么很可能会让交易的频率有所下降,且获胜率有所提升。

从下表中,我们看到在增加了简单的趋势滤波器之后,标准突破策略的业绩得到了显著的提升——在平均年化收益率提高的同时,最大历史回撤和波动率都有所下降,获得正收益的月份数量增加了,而表现得最差的月份的亏损情况也比之前有所缓和。我们最看中的是历史最大回撤的数值有了显著的下降。

七、止损机制

下面将为大家展示如何将持仓额度和止损方法结合在一起为投资组合的表现增加一些确定性。

●真实波动幅度其实就是品种价格的每日振幅,即衡量一个品种的价格变化在一天之内到底会有多大。

●真实波动幅度均值是一定时间内的日均振幅,我们在这里设为100天。

●如果将真实波动幅度均值乘以选定的期货合约的点价,我们可以得到在正常情况下一手期货合约日内价格的变动能产生多少损益。

●将风险因子设为0.002意味着我们每日能承受的单个品种损益相当于投资组合总价值的0.2%,因此我们需要用风险因子乘以投资组合的价值或资产净值,才能得到每天可以承受的单个品种损益金额。

●以上金额除以一手期货合约的正常单日损益,然后再对其取整就能算出拟开仓的期货合约手数。

移动止损的位置 ,为简单起见,止损点为距开仓以来的最高价格相当于3个真实波动幅度均值的位置。所以对于我们的多仓来说,止损点在开仓后最高价之下3个真实波动幅度均值的位置,对于空仓则是开仓后最低价之上3个真实波动幅度均值的位置。

用真实波动幅度均值来设置止损点的最大优点是我们可以知道每个头寸理论上的最大止损成本。如果将风险因子设为0.2%,止损位为3个真实波动幅度均值,那么每次止损所造成的损失应该是总资产的0.6%。还有,千万不要忘记波动率并不是静态的,所以所谓的「真实波动幅度均值」以及其他类似的东西都不过是基于最近历史数据的近似估算值。

在添加了这些更实用的止损措施之后,收益率会有所下降,但是风险也随之下降。像在之前策略中出现的那类伴随强趋势而产生的较为极端的情况,也相应地减少了很多。由此可见,我们在某种程度上获得了更加平滑的损益曲线。

八、风险水平的调整

理论上,风险因子可以控制每一个头寸对整个投资组合净值的单日冲击。我们不可能随时随地去改变仓位的大小,因此单个头寸的风险自然会随着所投资品种的波动性或价格的变动而发生变化。比如我们在价格为100美元时买入某个品种,但在持有半年之后其价格可能会达到了200美元,那么它的真实波动幅度均值很可能会产生巨大的改变。对于多仓头寸来说,获利的交易自然会导致风险水平的提升,而恰恰相反,有利的空仓头寸会随着价格的下跌让风险水平下降,因为价格下跌会导致空仓头寸对应的头寸价值下降。

我们在表中统计了四种不同风险因子下的业绩表现,这些结果足可以证明调整整个策略的风险水平是非常简单的。

九、策略的核心原则

最后,让我们一起重新梳理这种策略的所有原则:

●只有在50天均线高于100天均线的时候才能开多仓。

●只有在50天均线低于100天均线的时候才能开空仓。

●如果某一天的收盘价是过去50天内最高的收盘价,我们就在下一个交易日买入。

●如果出现过去50天内最低的收盘价,我们就在下一个交易日卖出或卖空。

●单个品种的仓位额度与其波动性有关,我们根据前面讲过的真实波动幅度均值(ATR)公式来确定,风险因子可以暂时设定为20个基点。

●多头仓位的止损价格设定为开仓以来最高收盘价之下3个ATR的位置。

●空头仓位的止损价格设定为开仓以来最低收盘价之上3个ATR的位置。

●投资的品种池应该涵盖全部5个板块,而且从每个板块中选取的品种数量不少于10个。

十、策略的表现情况

根据策略的模拟结果,我们的平均持仓时间为六周零四天,其中盈利头寸的平均持仓时间为十周零三天,而亏损头寸的平均持仓时间则只有两周。大体上盈利交易的笔数占总的交易笔数的42%,而亏损的交易占比为58%。盈利的关键在于,赚钱的交易所带来的盈利要远大于亏钱的交易所产生的亏损。

因此,在明知道大多数交易最终都会亏损的情况下,还要无条件地接受所有新出现的交易信号,这确实是趋势跟踪策略最考验人心的地方。

十一、资金规模的限制

我们需要事前确认管理的资产规模是否足以完全发挥分散化交易的效能,而不会额外增添一些不必要的风险。我们可以认为,这本来就是使用趋势跟踪的分散化期货策略所要付出的小小代价。股票交易者基本不需要担心资金限制的问题,因为单个股票头寸的价值可以达到非常小的金额。交易者可以轻易地将1000美元投资到40只不同的股票上,而所实现的分散化效果毫不弱于资产规模达到1亿美元的股票基金。在资本过低的条件下运用分散化的期货交易策略,会迫使我们为了凑足完整的一手合约,大幅提高风险因子的数值。若可用于交易的资产大幅低于正常的最低水平,那么我们就不配称为从事交易的专业人士,而更像是一名赌徒。