2014年 第 12 期
总第 688 期
财会月刊(下)
金融与理财
指数量化交易系统构建与整合研究

作  者
朱 臻

作者单位
(广东省科技干部学院财金学院 珠海 519090)

摘  要

      【摘要】指数化投资策略并不仅仅只有“长期持有”一种模式,将量化交易系统引入指数产品交易中可以明显改善投资业绩。本文以创业板指数为研究对象,结合多年来指数基金的实盘操作经验,提出“多品种、多周期、多模型、多参数”的全方位模型整合思路,通过构建专门的交易模组来指导交易,结果表明:在数据统计分析和实盘操作中,指数量化交易系统均取得了优良的业绩。
【关键词】指数   量化交易   模型整合   创业板

一、引言
指数化投资是指以复制构成指数的股票组合作为资产配置方式,以追求组合收益率与指数收益率之间的跟踪误差最小化为业绩评价标准的一种投资策略。其特点是投资风险分散化、投资成本低廉、追求长期收益和投资组合透明化。其本质是为投资者提供一种“择股”思路。然而,一个完整的交易系统除了“择股”还应包括“择时”,所以不能把指数化投资和“长期持有”等同起来。
指数化投资策略有很多种,包括长期持有策略、波段操作策略、定投策略、指数增强策略等等。李海波(2008)建议普通投资者投资指数基金应避免两个误区:一是在局部地区的长期熊市中不适合长期投资指数基金;二是在全球股市的长期熊市中不适合长期投资指数基金。以中国股市为例,上证综指自2007年10月见顶6 124点以来,在过去的近7年时间里长期在2000多点的位置徘徊,如果投资者一直持有指数基金,则不仅要承担大幅的账面亏损,而且要承担7年的时间成本。
量化投资在海外的发展已有30多年的历史,其投资业绩稳定,市场规模和份额不断扩大,得到了越来越多投资者的认可。量化方法应用的范围很广,除了可以用来“择股”,还可以用来“择时”。笔者在刘白兰(2012)等研究的基础上,运用文华财经量化分析软件,结合近几年亲身参与基金量化交易的实践经验,以创业板指数为对象,阐述如何构建一套完整的指数量化交易系统。
二、理论基础和系统构建
1. 理论基础。指数量化交易的方法有很多种,如趋势型、震荡型、反趋势型、套利型等等,其中应用最广泛的是趋势型。趋势量化交易的基石是趋势分析,而趋势分析又是建立在技术分析的三个假设条件之上的,这三个假设条件为:所有的信息己反映在价格之上;市场是按趋势运行的;历史将会重演。在技术分析方法中,趋势是核心内容之一,对投资者来说,准确地判断趋势非常重要。趋势的判断可以借助不同的算法、指标、模型或参数。
趋势量化交易方法有些已经形成了较为成熟的指标和模型,并在应用中取得了较好的投资业绩。笔者将相关方法移植到国内证券市场指数的趋势分析中,无论是在数据投机分析还是实盘操作中均取得很好的效果。
2. 指数量化交易系统构建。
(1)交易品种的选择。选择什么样的指数进行趋势量化交易是构建指数量化系统的第一步。不是所有的指数都适合量化交易的,在相同的时间段和市场环境下,不同指数的量化表现差异很大。趋势量化交易本身追求的是波段收益,因此具有更大波幅、更大波动、有序波动的指数是我们的首选。
本文选取2006 ~ 2012年这个时间段作为测试区间,分别选取十几种不同的大盘指数和中小盘指数作为研究对象,结合实际交易结果,最终选择创业板指数作为本文指数研究的标的。这是因为创业板指标具有以下特征更适合量化交易:①具有更大的波动特征的指数,这里指的是平均涨幅、平均跌幅、平均振幅更大,在顺趋势模型当中可能会有更好的表现,从长期看,中小盘类指数的波动程度要高于大盘类指数,对它们进行趋势量化交易的效果也会更好。②选定的交易指数最好要有对应的指数基金品种,特别是有对应场内交易品种,如交易所交易基金(ETF)或(LOF),这样可以有效地降低交易成本。③对应基金品种的交易量比较大,流动性好,在实际交易中不会有明显的交易滑点。④对应指数有三年以上的运行时间,有足够的交易数据以供量化分析。
(2)交易周期和时段的选择。在现有的市场环境下,大多数品种还是维持T+1的交易机制。传统思维认为应当使用日K以上的时间周期进行分析,实际上只要针对T+1的交易机制引入“当天买进的仓位不能在当天平仓”的限制条件,理论上任何周期的数据都可以使用。但在实际选择时,还应考虑交易的便利性和收益率,长周期的交易难度要小于短周期。
根据对不同周期进行优化的结果来看,不同时间周期的收益率也呈现出正态分布,即最高收益率的时间周期不是最长,也不是最短,而是出现在中间位置,以本文确定的创业板为例,最优交易周期应当是15分钟或是30分钟。在完全的双向交易机制下,交易更加灵活,可以使用的交易周期也更加多样化。
另外,用来进行历史数据分析的时段,还要满足三个条件:①该时段的跨度不能太短,至少应有三年以上的交易历史;②该时段最好包括了上涨、下跌、盘整等多种市场运行形态,而不仅仅是某种单边市,因为单边市有较大的局限性,其结果的适用程度会大打折扣;③在该时段的首尾最好各留出一段时间用来检验时段,将得到的结果外推来测试其有效性。为此,我们选取创业板指数从2010月6月到2013年12月的交易数据来进行测试。
(3)模型和参数的选择。适用于指数交易的算法、公式、模型有很多种,从实际应用来看,不应局限于用某种算法来构建模型,而应当用多种算法来进行整合。比如,用MA和MACD两种算法整合的效果比只用其中一种算法的效果更好,用四种算法进行整合的效果比用两种算法整合出来的效果更好。所谓的“更好”,并不是收益率更高,而是在收益率相差不大的情况下有效地降低风险,可以使得净值曲线更加平滑。
模型算法整合的顺序是在算法整合之前,首先应该找到一些适合T+1交易制度下的指数交易指法,然后通过开平仓的条件语句将这些算法进行整合。比如:如果是将两个算法进行整合,可以设置成当同时满足两个算法的开仓条件时才进行开仓操作,如果符合其中任一个的平仓条件就进行平仓操作。如果选用四个算法,可以设置成当同时满足四个算法开多仓时才建立多头头寸,而只要符合其中一个平仓条件时就进行平仓操作;也可以设置成只要满足其中三个算法开多仓时才建立多头头寸,而要同时符合其中两个平仓条件才进行平仓操作。
(4)模组构建和资金管理。就单个模型而言,投资者想在实际操作中得到一个很好的效果是很难的,因为随着时间的推移,会有边际收益递减、模型失效的现象出现,这都会造成一定的损失。如果我们把多个模型组合成一个模组,其有效性和适用性则可能会大大提高。而模组的构建不是简单地将几个模型进行叠加,而应当把几种不同类型模型进行叠加,如可以将顺趋势模型、震荡模型甚至是反趋势模型进行叠加,这样不论市场处于哪种状态,所得到的模组都会有较好的表现。
而对于资金管理而言,在实际操作当中,可以全仓买进卖出操作,也可以控制一个仓位百分比进行买卖操作,至于具体采取哪种操作策略,这取决于投资者本身的风险承受能力。在数据测试当中,一般选取95%的固定仓位比例来进行测试,那么,每次买卖的手数就是由每次能够使用的本金数量来量化决定的。
三、实证方法与结果
1. 实证方法。本文选用文华财经作为量化分析工具,选取2010年6月到2013年12月不同交易周期下(从1分钟到一日)创业板指数作为研究对象,采用MA、MACD、DMA、DBCD、DBZD等近50种算法、公式作为模型构建的基础工具,通过数据优化方式得到一组参数,再用算法整合来构建适用于创业板指数的交易模型。然后在这些模型的基础上再进行组合,得到一个针对创业板指数的交易模组,用来模拟交易。如果模拟交易效果良好,再将相关模组投入到实盘交易当中去,至今已有4年指数量化实盘交易纪录,取得了相当不错的业绩。
2. 实证结果。
(1)“一直持有”投资策略的业绩,如图1所示。图1表明,创业板指数在所取时间段内发生了大幅震荡,自2010年6月以986点开盘之后,最低下探585.44点,最高达到1 423.97点,在2013年12月底报收于1 304.44点。在整个时间段中,创业板指数分别经历了震荡市、大熊市和大牛市等多种市场形态。如果采用“一直持有”的操作策略,最终收益率为32.29%,年化收益率为8.32%,最大亏损达到-40.62%,最大回撤达到52.7%。
(2)MA交易模型的业绩,如图2所示。图2表明,MA模型的收益率为102.42%,最大回撤率为20.11%,最大亏损率为-13.44%。从净值曲线可以看出,其交易系统的整体表现要远优于“一直持有”策略。
(3)优化MA交易模型的业绩。由于“T+1”交易规则的限制,因而引入30分钟作为交易周期,重新对原来的MA交易系统进行优化,结果如下页图3所示。
与图2中的日K线周期相比较,图3的30分钟周期的测试结果有了显著的提高,收益率从102%提高到302.3%,最大回撤率也有明显的降低。这证明即使是在“T+1”的交易机制下,也可以通过采用日K线以下的交易周期来获得更优良的交易效果。
(4)多种算法整合模型的业绩。在30分钟周期下,采用多种交易算法整合而成的模型效果如下页图4所示。与图3相比较,图4中的模型又有了显著的改善:收益率从302%上升到704%,最大回撤率降到6.91%,净值曲线平滑向上,月度表现更加稳定平顺,很少出现亏损的月份。与同期指数的表现相比较,这样的模型堪称完美,但并不意味着这样的模型就是“交易圣杯”。不过从长期看,单个模型的优异表现是很难持续很久的,而由若干个模型整合而成的模组稳定性远优于单个模型。
(5)交易模组的业绩。将四个不同周期下的交易模型整合成一个交易模组得到的结果如后两页图5所示。
与单个模型相比较,图5的模组是由3个30分钟模型和1个15分钟模型整合而成,从净值曲线当中可以看出:相对单个模型,模组的表现更加稳定,更加平顺。在收益率相差不大的情况下,模组能够有效减少最大回撤幅度,减少亏损月份数量,更有利于资金长期运作。
(6)实盘交易结果。我们选取创业板ETF(1599915)作为创业板指数的交易标的,以图5的模组发出的交易信号为指导,得到的实盘交易结果如后两页图6所示。
从实践来看,笔者4年的实盘交易业绩与数据测试结果基本相符。与创业板指数相比,趋势量化交易表现最好的时段不是在大牛市,其在单边上涨的趋势下的表现甚至要稍差于指数。但是,它在大熊市和震荡市中的表现要远优于指数,比如,在2011年创业板指数下跌了35.88%,而指数量化交易系统则盈利30%以上。当然,交易系统的实际表现并不像数据测试那么完美,在实际操作中会遇到一些在数据统计中看不到的问题。
四、指数量化系统存在的问题
1. 交易成本较高。与“一直持有”策略相比较,量化交易系统由于交易次数大大增加,因而交易成本会同时大大提高。从数据统计结果来看,现有的模组大约5个交易日(一周)就完成一次买卖过程,而一次买卖的成功就是一次交易费用的增加,如此频繁地换手必然会造成交易系统交易成本大量增加。
在测试当中使用的成本费率是千分之一双向收费,实际成本费率高于或低于这个标准都将对最终交易结果产生明显的影响。在实际当中,这个成本费率的高低和资金规模、议价能力有关,大资金的实际成本费率可以降到万分之五以下,而小资金的成本费率因为还有每笔5元的最低佣金,可能会高于千分之一的水平。
2. 存在交易滑点。实际交易中的信号价格和实际成交价格在很多时候并不一致,比如,创业板ETF发出买入信号时的价格是1.320,而实际成交价格为1.321,比信号价格多出0.001,这个差额就是交易滑点。交易滑点有可能为正,也有可能为负。但从长期来看,多数情况下交易滑点的净效应还是负的,因此,必须将其纳入到实际的交易成本中,且尽量减少交易滑点的影响。
3. 交易容量的大小会影响资金的流动性。创业板指数的交易容量很大,每天的交易总量约有400亿 ~ 500亿元。而创业板的ETF品种每天的交易额仅有2亿 ~ 3亿元,大资金就很可能会遇到流动性方面的问题,出现短时间内买不到或卖不出的情况,也有可能出现报价不连续的情况,这会因未能及时平仓获利或因空仓滞留资金而大大提高实际交易成本。因此,小资金可以直接将创业板ETF当作交易标的,而大资金可以考虑将创业板指数构成当中的一篮子股票当作交易标的。
4. 不存在永远的“交易圣杯”。有没有所谓的“交易圣杯”?有没有一劳永逸的交易模型或模组?答案是肯定的:没有!只有变化才是永恒不变的,具体到中国证券市场,交易主体在不断变化,交易品种在不断变化,交易规则在不断变化,需要不断对模型或模组进行调整。但这样的调整只是对具体参数和整合条件进行微调,趋势量化交易的基石还是不变的,那就是顺势而为。
五、建议及发展方向
从长期来看,再好的交易品种也有表现不好的时候,如果想使净值曲线走势尽可能平滑,可以考虑对多个交易品种进行整合。依据“东方不亮西方亮”趋势的道理,一个品种表现不好而其他品种表现不错,整体表现也就平滑化了。当然,在整合投资品种的时候,要考虑关联度和对冲效果。以创业板为例,可以引入上证500、中小板指数、深证100指数等品种当作整合指数的备选。
另外,从测试结果来看,交易系统大约有三分之二的时间处于空仓状态。这么长的空仓时间对投资效率是一种损失,因此,应考虑将资金投资于超短期理财产品或是货币基金,这样每年大约可以增加5%的收益。
中国证券市场正在逐步进入全面的双向交易阶段,随着融资融券品种的不断扩容和将来“T+0”交易机制的引入,可以预见将来中国证券市场的交易效率会大大提高,交易品种、策略都将大大丰富。在这样的大背景下,指数趋势量化交易系统为广大投资者和指数基金管理者提供了新的投资工具,也提供了一种投资新思路,有利于进一步推动指数化产品在中国的发展。
【注】本文得到教育部人文社会科学研究青年基金项目(项目编号:12YJC790113)、广东高校优秀青年创新人才培养计划项目(项目编号:2012WYM_0098)和国家自然科学基金青年科学基金项目(项目编号:71103045)的资助。
主要参考文献
1. 朱臻.指数基金增强策略创新研究.财会月刊,2012;12
2. 刘白兰,朱臻.双向交易背景下的指数基金量化投资研究.海南金融,2012;5