“失败指标”详解

周泓090814

1横和竖

股谚云:横(整理)有多长,竖(趋势)有多高。

那么,横得越久,我们就越有理由期待更大的趋势。进一步,如果我在横得越久的时刻入场,未来继续发生整理的可能性越小,发生趋势的可能性越大,风报比越高。更进一步,如果根据横(整理)的程度来加仓进行趋势跟踪,是一个有概率优势的策略。

2定义整理的级别

《神话的力量》: 踏着英雄的足迹,在我们以为会发现邪恶的地方,找到了上帝。在以为杀害了他人的地方,我们杀害了自己。在以为走出去的地方,我们将回到自己存在的中心。在以为一切都完了的地方,我们却与整个世界在一起。

对于趋势跟踪而言,整理是魔鬼,趋势是上帝。当我们找到魔鬼的同时,上帝也就在我们左右。整理之所以为魔鬼,不仅仅因为它给趋势跟踪者带来亏损,更是因为它“狡诈多变”。

因此,想要用一个数值明确而统一的描述整理的级别,这不是一件容易的事。整理从形态上就有箱体、三角、旗型、喇叭等等。每一种内又各有各的特点,比如箱体整理,它的长度、高度、震动频率三者之间稍微不同的组合,就可以成为各种各样的箱体。因此,采取了下面的方式来间接解决问题。

第一步是将问题转化,我不直接考虑市场的整理是如何,而是观察整理作用在某个趋势跟踪系统上,趋势跟踪系统的输出会有什么表现。最直接的,当然就是看虚拟的收益曲线,下跌一定幅度,表示发生了一定程度的整理。只是,全部归总到收益曲线跌幅似乎又太“综合”了,它隐藏了太多的信息,比如整理的时间长度,上下震荡的频率等等。我需要获取更加“原生态”的数据,即系统的“连续亏损时间、连续亏损次数、连续亏损幅度”。

第二步是寻找“标准系统”,也就是要找一个在趋势里持仓赚钱,在整理里试错亏钱的系统,这样就可以用它的表现来间接定义整理。这个系统我选择的是20日单均线的单线趋势跟踪系统。

标准系统的尺度不能太大,这是因为大尺度的信号时间间隔太大。时间间隔大,意味着数据量跳变程度大。假设我已经把整理的级别数值化了,那么20日的系统可以让我发现这个数字逐渐上升和逐渐回落的过程,这有利于时间点的把握,而参照60日系统给出数字可能一个落在“左山腰”,下一个又落在“右山腰”。

标准系统不能使用过滤器,这个很好理解。如果把整理过滤了一部分,我看什么分析呢?

第三步是设计一个算法,综合考虑“连续亏损天数、连续亏损次数、连续亏损幅度”中蕴含的信息。

由于这三者的单位不同,分别是时间、次数、幅度,因此要综合考虑这类问题最常用的就是模糊算法了。它的思想是这样的,首先把每次回撤的连续亏损天数记录下来,作为一个数列,然后分区间统计,比如1-3天的有几次,3-6天的几次,再把这些次数分别除以总数,就得到了落在这个区间里的概率,最后把落在每个区间的概率作图,得到的就是概率分布图,图上的曲线就是概率分布曲线。接下来,就可以把概率分布曲线作为模糊运算的隶属度函数。简单说,也就是给你一个连续亏损天数x,你马上就可以代入函数f(x)中给出它在历史数据中发生的概率。至此,三个不同单位的变量全部转化成了概率。最后,还需要为每个隶属度函数设置不同的权值,也就是分配变量的重要程度。比如,你认为“连续亏损幅度”最重要,其它两个次要。那么可以这么分配权值:当前连续亏损天数的概率*0.3+当前连续亏损次数的概率*0.2+当前连续亏损幅度的概率*0.5。

要进行上述的算法,光光使用excel是做不到的,需要将excel与matlab联通,调用matlab中的Fuzzy工具箱。(具体技术手段,有兴趣的朋友可以参考北航出版的《matlab金融计算与金融处理》一书。)上面的算法的思想很好,也就是将不同维度(单位)的变量统一到概率上分析(不光在这个问题上有效,对其他很多问题也可以这么处理)。只是我觉得还是麻烦了一点。下面我再介绍一种可以在excel里实现的傻瓜算法,不够科学但适合普及。

这里的主要思路仍旧是把不同维度(单位)的变量统一起来,只不过省略了求隶属度函数的过程,而是默认三个变量都服从平均分布。还是拿连续亏损天数来举例,首先把每次回撤的连续亏损天数记录下来,作为一个数列,然后求它的算术平均值,得到B。然后将当前的连续亏损天数A,除以平均值B,再减去1,得到当前亏损天数对于历史均值的偏离程度。

至此,三个变量都变成了“对于历史均值的偏离程度”,偏离越大,当然表示整理级别越大。最后还是按照重要性分配权值,求和得到最终的指标。这个指标我就称之为“失败指标”。

3失败指标的用途

首先,作为加仓的依据。拿豆粕的数据来举例说明。

上图是豆粕上的统计,红色折线是“标准系统”的跟踪收益率曲线(不使用杠杆过量交易),蓝色柱状线是失败指标(小于0,也就是小于均值的整理级别都没有显示)。

结合豆粕的连续指数历史走势来看,豆粕上的失败指标峰值大约是1.4,过去10年里一共有4次。第一次,源自01年底的那次大级别的整理,之后期价上扬了2.5倍。第二次,在05出现,背景是大起大落,趋势跟踪获得暴利之后(和现在很像,小心!!)。后两次连续出现在07年,背景是期价震荡走高回到05年高位区间,趋势跟踪收益长期盘整,之后期价打了4折。

废话不多说了,这么加仓:失败指标接近历史峰值即加仓,结合趋势跟踪收益线来看,如果是刚经历了大起(大落),可做短线。如果是盘了几年了,可做长线,可以在每一次失败指标接近峰值的时候都加仓。

第二,用失败来指导换月。一旦出现历史峰值的失败指标,极大的可能后边会有一定级别的单边波动,这种长期盘整后的波动最容易造成群情激昂,在合约上就体现为迅速换月,现有的主力合约会被提前抛弃,机构甚至会在原有的合约上反手,在远期开仓,做套利(赌差价扩大)。这种时候如果换月不及时,长期跟踪上就会出现大的“缺口”。反之,在盘整期内总是迅速换月,以期望行情来的时候可以波幅更大也是不合理的,如果看连续指数换月,一般波动大的主力合约往往当日涨幅比连续指数高,如果这时收盘价介入,则意味着一旦整理继续,后期的反手成本更大。

4失败指标的优缺点

优点是正确率和风报比都很高,能指导换月和加仓,还能自动适应市场特性的的变化。个人觉得比较有用。这个优点在初始仓位过大的时候会变成缺点,毕竟如果考虑了加仓和趋势的预判,不管加入的系统风报比如何优秀,总是增加绝对风险的,意外的行情就会造成崩溃,因此需要原有的系统不能有太大的回撤。

缺点是计算比较麻烦,不说最后的模糊算法,单单是对于一个标准系统的连续亏损次数、连续亏损幅度、连续亏损天数以及跟踪累计收益率都不是很容易算的,这里的这些数据不是说测试软件测试出来的“最大”值,而是过程中的每个值都要有,还要根据行情的变化,动态更新。这个缺点也可以被解读成优点,因为大多数人不会用这么麻烦的东西(其实也不烦,编到excel里就全自动了,科学技术是第一生产力,可以化繁为简),这就意味着保质期更长。

说点什么