◆ 摘要 ◆
趋势追踪的基本思想是追随大的走势,例如,对于一只股票来说,当向上突破重要的压力位后可能意味着一波大的上涨趋势行情的到来,或者向下突破某重要的阻力位后,可能意味着一波大的下跌行情的到来。
趋势追踪策略就是试图寻找大的趋势波段的到来,并且在突破的时候进行建仓或者平仓操作,以期获得大的波段收益。
投资者选股,主要是基于3个方面的信息:基本面、技术面和消息面。这3种方法各有其优点和缺点。
基本面分析的经济逻辑较强,对事件的解释性也较强,比较容易给出一套逻辑来判断某种状态下股价被低估。但是基本面分析也有其弱点,不容易判断被低估价值的股票价格何时或者以怎样的过程恢复到其对应的价值,对短期行情的判断缺乏指导性。
技术面分析是对历史已发生的行情进行统计,得出指标来推断将来的行情。其优点是既可运用于长期的判断,也可以运用于短期的判断,并且依据的信息是已经发生的可靠信息,可操作性最强。但是它也有自身的缺点,由于它利用的主要是已发生的信息,因此总是存在滞后性。
消息面分析认为拥有超额信息才能拥有超额收益,拥有非对称信息可以获得超额收益。但是内幕消息交易是法律上禁止的,且其获得有一定的门槛和成本。并且假消息也充斥于资本市场之上,辨识其真伪有一些难度。所以每种方法都在一个方面和一定程度上对股价的判断具有指导作用,但又各有其弱点,需要其他方法来做有益的补充。
只用来自一个方面的信息选股,难以保证其选股成功率足够高。例如,基于基本面的某方法选择的股票,用大范围的样本进行测试其成功率为60%,那么当前如果买入某只用该种方法选择的股票A,则胜率只会有60%。但是如果从另一角度(比如基于技术面的某方法选股,该方法的大样本统计成功率也为60%)也选出了股票A,那么意味着两个因素都支持股票A的上涨概率为84%。
中国股市追涨杀跌气氛较浓,容易形成连续的趋势,用趋势追踪的方法判断行情走势它有两个基本的理论逻辑:
1)市场中的投资者并非完全理性
传统的有效市场理论认为,在有效市场的前提下,证券的历史信息充分地反映在股价上,利用历史信息进行分析是无效的。但是有效市场假说有一个前提,就是投资者是理性的,对信息的解读和理解是准确到位的。但是在实际投资中,即使是专业的投资者,也会受知识、情绪和个人投资理念的影响,众多的投资者对信息的解读往往千差万别,所以有效市场和实际市场有所区别。由于绝大多数投资者并不能充分挖掘出历史信息,因此深入地研究历史信息仍然是有意义的。
2)价格以趋势方式演变
趋势概念是趋势追踪技术的核心。这是因为当股价受到某个新信息冲击时,投资者们获取该信息的时间不一致,即使同时获取该信息,进行投资操作的时点也不会完全相同。但是投资者又会依据获取的信息来做出投资的判断,这种对信息不同时的反应,往往让证券价格表现出趋势。实际投资中投资者也会有所感觉,顺应趋势不容易造成大的亏损。
利用趋势跟踪的方法构建组合主要分为3步:
(1)探讨指标,找寻出一系列刻画趋势的指标,然后经过细化处理,令其能较好地跟踪各个级别行情的趋势。
(2)选择样本内大样本数据进行建模,然后再选择样本外大样本数据(若干年时间)进行外推测试。需要证明样本内数据建立的模型,在样本外进行外推测试仍然有良好效果,这样模型才有意义。
(3)模型参数稳定后,则每天可以得到当前发出买入和卖出信号的股票,这样可以给每只股票分配一笔资金,买入(或者重配)当日发出买入信号的股票,卖出(或者低配)发出卖出信号的股票,用这种方式来构建股票组合。
以上是完全用技术指标来构建组合,如果和基本面、消息面结合起来选股,则是先给出当日发出买入的股票组合,然后再结合基本面和消息面的信息进行分析,确定最后的投资标的。
下面介绍一个由多个指标组合的策略来跟踪股票趋势,其流程图如图2-19所示。
图2-19 个股趋势追踪策略模型
数据来源: [ 俞文冰 2009]
衡量股票趋势的指标最重要的就是均线系统,因为它是应用最为广泛的趋势追踪指标,所以均线是不可或缺的,把它作为捕捉大盘主趋势的基石。但是纯粹的均线由于噪音等原因,使得经常会出现误操作,需要进行更多的处理机制,包括极点、过滤微小波动、高低点比较策略、高低点突破策略、长波的保护机制、长均线的保护机制等概念和技术细节。
股票价格的波动会让人感觉价格变化飘忽不定,很难把握。为了便于捕捉趋势,所以需要对价格走势曲线进行简化处理,这样可以借助于均线方法。将 a 个( a 为模型参数)连续的交易日的收盘价取一个均值,形成MA( a ),比如 a 为10,即10个交易日数据取一均值,那么就可以得到股价的10日均线 U ,完成对价格曲线的第一步简化。
极点就是局部的高点或者低点,在极点处股价出现了转折,所以它们是记录股价变化的关键点,包含了比较多的信息。如果股价上涨至此,接下来又出现了下跌,那么就形成一个局部的高点;如果股价下跌至此,接下来又出现上涨,那么就形成一个低点。这些叫做极点,往往是股价变化的关键信息点,将它们记录下来,以备进一步制定策略。
均线策略最大的优势跟踪趋势效果比较好,在形成趋势时能紧跟趋势,但是最大的问题在于碰到盘整行情,均线就摇摆不定,容易频繁地发出交易信号,所以必须对其进行进一步处理。
可以结合记录的极点形成过滤微小波动的方法。当股价形成一个极点M后,接下来股价波动在M点股价的上下B个(B为模型参数)指数点内,就认为股价和M点相比没有变化,这样可以得到过滤了微小波动的均线趋势线W。如图2-20所示为万科A过滤后的均线走势。
图2-20 万科A过滤后的均线情况
数据来源: [ 俞文冰 2009]
过滤了微小波动后的均线趋势线W基本能代表价格变动的主趋势,与最初的价格曲线相比过滤了许多干扰因素,且能刻画出价格变化的主趋势。这样就可以将过滤微小波动后均线W上行情发生转折的点识别出来(即上涨转为下跌处为高点,下跌转为上涨处为低点),然后可以在其上设计策略。
通常人们判断趋势处于上升的理由是,当前低点比前一个低点要高,当前高点也比前一个高点要高。判断趋势处于下跌的理由是,当前低点比前一个低点要低,当前高点也比前一个高点要低,所以就产生了高低点比较判断规则一。
如果当前低点比前一个低点要高,而且是卖出信号发出后第一次出现低点高于前低点。那么认为目前是一个买入点。如果当前高点比前一个高点要低,而且是买入信号发出后第一次出现高点低于前高点,那么认为目前是一个卖出点。
图2-21显示了万科A在趋势追踪策略下的买点。
图2-21 万科A在趋势追踪策略下的买点
数据来源: [ 俞文冰 2009]
从图2-21中可以看到,当前低点高于前一个低点时,认为当前低点出发出买入信号。同样,如图2-22所示,如果经历一段上升后,出现当前高点比前一个高点低,那么当前高点为卖出点。
图2-22 万科A在趋势追踪策略下的卖点
数据来源: [ 俞文冰 2009]
如果仅仅以高低点的比较去判断趋势的涨跌,这样的情况发出次数太多,并且有时会出现指数形成了一个新的高点,与前面一个高点相比上涨幅度不大,那么很可能是假突破行情。另一方面,简单的高低点比较策略没有考虑时间的因素,比如,股价经过很短时间就有明显上涨,和股价经过较长时间才上涨同样幅度,这显然是不一样的。
时间短的上涨趋势比时间长的同幅度上涨趋势涨势更强劲,所以设置一个根据时间变动的附加项drift来对原来的策略进行修正,这样形成对规则一的补充。
补充:如果当前低点高于前一个低点再加一个附加的漂移项drift,则认为当前是一个买入点;如果当前高点低于前一个高点再加一个附加的漂移项drift,则认为当前高点是一个卖出点。
这个drift是一个时间的函数,比如和时间成正比,drift=time* K ( K 是模型参数,是用高频数据估计出来的)。当然drift也可以是时间time的其他函数。
如图2-23所示,红线表示高点加漂移项的画线。 W 线当前高点处高于前低点,但是低于前高点+漂移项的画线(即红线),就认为当前高点处就是一个卖出点。
图2-23 带漂移项的万科A的买卖点
数据来源: [ 俞文冰 2009]
高低点比较只是最典型的行情情况之一,还有另一种典型情况。比如,行情有时可能会出现从最高点开始形成一个大幅下跌段,但是却并非具备当前高点比前一个高点要低的条件,如果用高低点比较策略,则无法捕捉到此次卖出机会。为了避免这种极端情况,需要制订高低点突破策略来完善策略系统,见规则二。
如果过滤了微小波动的均线趋势线 W 往上突破了前一个高点加上漂移项drift,则认为出现了一个买入点。如果过滤了微小波动的均线趋势线 W 往下突破了前一个低点加上漂移项drift,则认为出现了一个卖出点。
如图2-24所示,股价从最高点 B 点开始下跌,虽然不符合高低点比较策略的条件发出卖出信号,但是如果下跌到 C 点时,突破了前一个低点 A 加漂移项的位置,则认为发出卖出信号。同样,如果股价从低点上涨,往上突破了前一个高点加漂移项,那么认为发出了买入信号。
图2-24 趋势追踪策略中规则二的买卖点情况
数据来源: [ 俞文冰 2009]
如果股价经历了一个比较大的短期涨幅,那么就需要对它建立保护机制。大涨后容易出现较大幅度的下调,所以需要对盈利头寸进行保护,设置从低点加漂移项的延伸线为止损线。
如果股价经过较大涨幅,比如当前股价已经比上次低点出现后有 C (这里 C 为模型参数)的涨幅,即现股价为上次低点股价的(1+ C )倍,那么就把止损位(前次低点+漂移项drift)的价格上提 D ( D 为模型参数),即止损位变成当前股价乘以(1 -D )。
如图2-25所示,当股价从最低点 B 上涨,从低点延伸出来的带斜率的延伸线(红线)为止损线,但是股价上涨速度比止损线上升要快,那么我们设置大波段保护机制,即到 A 点,经历了一个较大涨幅的上涨并超过了某个阈值,此时止损线延伸到了 C 点处,那么把止损线(红线)从 C 点处突然上移到高点的位置。若股价突破止损线(红线)则卖出。
图2-25 趋势追踪策略中大波段保护机制的买卖点
数据来源: [ 俞文冰 2009]
当股价处于明显的下降通道中,且股价表现非常弱势时,是不应该贸然买进的,而需要增设长均线的保护机制。当股价位于 E 日均线之下时,即使其他买入条件成立也不发出入信号。如图2-26所示,在 B 点以前,股价一直处于 E 日长均线( E 为模型参数)之下,这时发出的买卖信号可以忽略。一直等到 B 点突破才发出买入信号。
图2-26 趋势追踪策略中长均线保护机制
数据来源: [ 俞文冰 2009]
本案例的思路是首先对个股建立模型,比如选择股票万科A,找到它从上市到2009年的复权行情数据,用它2001年前的数据作为样本内数据建立模型,即用以上的一整套策略流程构建模型,把均线的天数、滤波的阀门宽度等设置成参数。然后进行第二步参数的优化。
优化的方法是寻找某组参数,使得其在样本内数据上模型的收益率达到最大。优化的意义在于寻找到最好的适应历史行情的一组参数,虽然未来的行情并非按照历史的模式去演绎,但是经过优化后的参数能保证模型运行的参数至少不会是一组非常极端的参数值。假如它是一项非常极端的参数值,则它不可能是最能适应历史行情的,因为极端事件不可能在历史上是大概率的。
选择了沪深300指数的300只成分股2001年至2009年的复权行情数据作为样本外测试数据。在对个股建立了模型和确定了模型参数以后,每只股票从2001年至今,会按策略产生一系列的买点和卖点。假定在2001年初有300万元,平均给每只股票分配一万元,这样每只股票初始资金是一万元,然后按照策略的买卖点对该股进行买卖,这样300只股票各自会在持有股票和持有现金这两种状态之间轮换。
这样等于构建了一个股票投资组合,组合中的股票是当前时点刚发出买入信号的股票,或者是模型发出了买入信号后,尚未发生卖出信号的股票和现金。
该案例中坚持模型策略原则,设定模型参数一直不变。股票每个买卖来回计千分之八的费用(包括印花税、佣金和冲击成本)。观察2001年初到2009年投资组合是否能战胜股票行情。
为了便于观察策略是否能战胜行情,首先需要设定比较基准。这里选取的比较基准是买入并持有策略,假定给每只股票事先都平均分配一万元,每只股票行情的涨跌,会使事先分配给它们的资金值的大小出现变化,到期末也会有组合的资金值。比较按照趋势追踪策略买卖形成的投资组合资产变化轨迹,和按照买入并持有策略形成的投资组合资产变化轨迹。收益率曲线如图2-27和表2-22所示。
图2-27 趋势追踪技术收益率
数据来源: [ 俞文冰 2009]
表2-22 趋势追踪技术收益率
数据来源: [ 俞文冰 2009]
从表2-22中可以看到,从2001年初到2009年,趋势追踪策略期末资金变成13993844元,组合的收益率为366.46%。平均每只股票可以获得相对于对应股票行情74.38%的超额收益率。即从2001年初到2009年,每只个股上的超额收益率的简单平均值为74.38%,按期末资金量为权重的加权平均值为44.41%。比较基准买入并持有投资策略的年化夏普比率为0.53,趋势追踪投资策略的年化夏普比率为1.13。
从案例中可以看出,按照事先设定的策略构建投资组合并坚持原则按策略操作,长期来看是可以战胜买入并持有策略的。
本节小结
趋势追踪技术的关键在于判断大趋势,并且力图避免小的扰动对趋势的影响,这样可以抓住大的波段操作,从而捕获股票的主要收益趋势。从实证结果来看,按照事先设定的策略构建投资组合并坚持原则按策略操作,长期来看是可以战胜基准的。
本节给出的趋势追踪模型对原始均线有多种优化方法,包括均线简化、识别极点、过滤微小波动、高低点识别、高低点比较、高低点突破、大波段保护、长均线保护等。
根据趋势追踪策略的实证案例显示,该策略在样本验证期间,获得74.38%的超额收益,远远超过了买入持有策略。