【国信金工】基于道氏理论的商品期货交易策略
由small_q创建,最终由small_q 被浏览 152 用户
报告摘要
道氏理论
我们从Charles H. Dow的传奇人生以及道氏理论的历史出发,对道氏理论以及道氏理论中对趋势的描述进行了简要介绍。
上升趋势与下降趋势
MACD(Moving Average Convergence/ Di-vergence)指标可以用来表征市场运行的方向,是动量类指标的一种。其基本原理是使用均线之间的距离对噪音进行过滤,从而对市场趋势进行初步判断。当MACD上穿信号线累计距离突破阈值后,市场可被初步判断为上升趋势,当MACD下穿信号线累计距离突破阈值后,市场可被初步判断为下降趋势。
拐点判断
如果只使用MACD作为信号进行交易则会由于信号的迟滞,导致在趋势发生逆转时判断受到局限。借鉴道氏理论对趋势的描述,在对市场趋势进行初步判断后,对拐点进行修正。策略相对只使用MACD信号进行趋势判断进行交易在稳定性上具有显著提升。
道氏趋势
我们对于市场趋势的初步判断长期可获取正收益,在加入了拐点修正后策略的稳定性得到了显著提升,但我们还需要对策略的开仓时点进行检验与佐证,来平滑策略的收益曲线。通过对高低点的定量刻画,借鉴道氏理论,从而形成道氏趋势,将拐点修正后的市场趋势与道氏趋势相结合,当趋势共振时对策略进行开仓操作,策略表现可以得到进一步提升。
基于道氏理论的商品期货交易策略
结合MACD对市场趋势初步判断后与道氏理论相融合对拐点进行修正,最终配合道氏趋势,形成基于道氏理论的商品期货交易策略。策略表现稳定且具有较高收益率,2012年以来该策略净值稳定攀升,同时回撤可控。基于道氏理论的商品期货交易策略费后年化收益率为21.74%,夏普率为1.42,Calmar为2.2。
CTA复合策略
我们将基于道氏理论的商品期货交易策略与此前发布的基于开盘动量效应的股指期货交易策略、基于Bollinger通道的商品期货交易策略以及基于Carry的商品期货交易策略等权复合,构造为CTA复合策略。复合策略的年化费后收益率为22.42%,夏普率为2.61,Calmar为3.56,且每年Calmar均大于1。
技术分析流派中,道氏理论的历史久远,声名远扬。在Charles H. Dow创立道氏理论之后,发展至今已有100多年的历史。无论是学者还是投资者都持续的进行着总结与补充,道氏理论也逐步在被丰富和完善。道氏理论是趋势跟随类策略的一种,国信金工团队基于股指期货市场的开盘动量效应提出的《基于开盘动量效应的股指期货交易策略》便借鉴了这一思想。本文将系统地梳理道氏理论对于趋势的描述及刻画,对其中偏定性或较模糊的定义,尽可能通过简洁清晰的度量方法,构建出基于道氏理论的商品期货交易策略。
正文
Charles H. Dow
1.1Charles H. Dow
Charles H. Dow(Charles Henry Dow)在金融领域功勋卓越。Dow最初的梦想是想做一名出色的记者,也曾在报社工作。后因机缘与Edward Jones相识,两个年轻人一起创立了道琼斯公司。起初在每天下午为华尔街的投资者提供两页纸的金融新闻摘要,他们将之命名为“the Customers’ Afternoon Letter”,后来慢慢壮大,道琼斯公司至今仍在金融市场享有巨大影响力。Dow与Jones还曾想到,要用一些比较有代表性的股票走势来表征市场,于是他们于1884年7月3日首次提出了用了11个上市公司(9个铁路公司,2个非铁路公司)将股票价格简单求和得到了道琼斯指数,即股票市场的平均价格指数。虽然现在股票市场的指数日益增多,但他们是股票指数的鼻祖。1889年,道琼斯公司就有50名左右的员工,于是他们认为是时候将“the Customers’ Afternoon Letter”转为一份正式的报纸了。于是,1889年的7月8日Dow创办的《华尔街日报》诞生了,Dow主要负责编辑工作,而Jones则负责一些管理工作。《华尔街日报》很快成为投资者重要的参考信息来源,值得一提的是,Dow也会将他对股票投资的思想和理论发表在了《华尔街日报》上。
1.2道氏理论历史
道氏理论是基于价格变动的技术分析方法之一,他所不同于其他技术分析流派的地方在于,道氏理论不是简单的对价格进行定量分析,这里面蕴含了Dow的方法论和他对市场的思考。Dow于1851年至1902年陆续在《华尔街日报》中登载他对市场的理解以及相关思想。他并没有系统的进行过整合,他的思想像珍珠一样散落在《华尔街日报》的历史期刊中。于1903年,Samuel Armstrong Nelson首次将Dow发表过的文章进行整理,并出版了《The ABC of Stock Speculation》,其中大部分章节都是Dow的文章。这也是首个在书中提到“Dow’s Theory”这一说法。随后William Peter Hamilton对Dow的思想进行了系统的整理,出版了《The Stock Market Barometer》,并正式命名Dow的思想为道氏理论(The Dow Theory)。后续人们不断进行总结和提炼,其中比较有代表性的文章和书籍为Robert Rhea于1932年发表的《The Dow Theory》以及Richard Russell于1961年发表的《The Dow Theory Today》。下面我们将对道氏理论进行回顾,对核心问题进行梳理和提炼。
道氏理论
2.1道氏理论基本假设及定义
道氏理论内涵较多,主要包括了Dow对于市场的理解以及对股票价格运行模式的思考。本文我们将重点关注在Dow对市场趋势的描述中。Richard Russell于1961年发表的《The Dow Theory Today》一书中,第二章:“What Dow Wrought”中整理了道氏理论的10个关键要素,其中第5条阐述了对市场趋势的定义:如果出现连续的极值点(低点以及高点)上升,那么市场将处于上涨趋势中。反之,出现连续的极值点(低点以及高点)下降,那么市场将处于下跌趋势中。国信金工团队于2021年5月13日发布的《基于开盘动量效应的股指期货交易策略》,这里面我们定义开盘上涨或下跌的趋势,便是遵循了这一思想。
**在接下来的研究中,我们将以铁矿石(I.DCE)为例进行说明。**从图1中可以看到,随着铁矿石价格的一路上涨,其低点以及高点也呈现出依次上升的状态。这与道氏理论中所表述的低点依次上升且高点依次上升的情况相符合。
从上述对于趋势的定义中我们可以看到,尽管看起来非常直观,但是在实际进行落地时则会遇到下述三个问题:
- 在同一个K线频率下(如本文使用15分钟K线),仍存在如图1所示跨周级别的周期趋势,也存在如图2所示跨日级别的周期趋势(其中图2所示K线图为图1中蓝色方框部分)。因此我们如何清晰的界定当下所处趋势状态则有待解决。
- 在连续极值点上升的过程中(如图1所示),仍可能出现连续极值点下降的情况(如图2所示)。导致这种现象的原因,一方面是由于对当下趋势界定的标准不同,另一方面是对极值点的判断较为主观,标准不一。因此,我们需要系统化的对极值点进行描述。
- 无论较大周期级别的趋势,还是较小周期级别的趋势,都会有转向的时点,在趋势转折时如何进行处理也是实盘策略中需要考虑的问题。
下面我们则就上述这些问题进行研究,在道氏理论的基础上通过更加定量化的方式构建基于道氏理论的商品期货交易策略。
道氏理论的量化表达
前面我们对道氏理论的历史以及道氏理论对于趋势的判断进行了整理和分析,不难发现,在使用道氏理论进行策略构建时仍有许多细节需要处理。
如图3所示,本文我们将通过经典的MACD指标对趋势进行初步判断,判断市场处在上升趋势还是下降趋势,后利用道氏理论对趋势拐点进行修正。在开仓时点的确认上,我们利用道氏趋势与市场上升或下降趋势是否共振进行判断,若共振则确认市场状态,开仓交易。
3.1上升趋势与下降趋势
本节我们将对市场趋势进行初步判断,在对市场趋势进行判断时如果直接使用K线进行计算则会引入噪音。这里我们使用经典的MACD指标对市场趋势进行初步判断。
利用MACD进行趋势判断最早由Gerald Appel于1970提出的,下面我们将对这一指标进行简要介绍。
MACD(Moving Average Convergence/ Di-vergence)指标可以用来解释市场运行的方向,是动量类指标的一种。其基本原理是使用均线之间的距离对噪音进行过滤,从而提取趋势。
具体计算方法为,首先,使用12根K线计算的短均线MA(12)减去使用26根K线计算的长均线MA(26),这里为使均线更加平滑或者延迟性更低,可使用非简单均线的不同滤波手段,如EMA(Exponential Moving Average)以及WMA(Weighted Moving Average)等。
其中,MA为移动均线,括号中为计算均线时使用的K线数量。这里使用的是MACD指标的默认参数。
当MACD向上穿越信号线一定阈值时,则可判断当前市场处于上升趋势,当MACD向下穿越信号线一定阈值时,则可判断当前市场处于下降趋势。
其中,信号线(Signal Line)为MACD指标9根K线的移动平均。这里的均线计算方法应与前述计算MACD时所使用的均线计算方法相同。
其中,Signal Line为信号线,MA_MACD为MACD指标的移动均线,括号中为计算时使用的K线根数。这里也是使用的默认参数。可以看出,信号线为MACD的移动均线。
图4所展示的是铁矿石的K线图、MACD以及信号线。
从图4可以看到,MACD与信号线的穿越过程不都是十分清晰的,有时会有短时间的纠缠。我们称这样的穿越为“伪穿越”,在实际交易中不仅仅会增加交易成本,还有可能错失良好的趋势机会。
为避免“伪穿越”,我们将MACD与信号线的累计穿越距离加入一个阈值,即当MACD上穿信号线累计距离突破阈值后,市场可被初步判断为上升趋势,当MACD下穿信号线累计距离突破阈值后,市场可被初步判断为下降趋势。
其中,MACD与信号线的累计穿越距离计算方式如下:
其中,Signal Line为信号线,Diff_MACD为MACD与信号线的差值,Cum_MACD为MACD与信号线的累计穿越距离。
当MACD初次穿越信号线时,MACD与信号线的累计穿越距离即为当前MACD与信号线的差值,后随着MACD稳定在信号线一方,MACD与信号线的差值则进行累计,可以得到MACD与信号线的累计穿越距离。
我们使用MACD与信号线的累计穿越距离是否超过一定阈值,来判断市场是否处在上升、下降趋势。当MACD上穿信号线后,累计穿越距离大于一定阈值时,市场处在上升趋势,当MACD下穿信号线后,累计穿越距离大于一定阈值时,市场处在下降趋势。
具体公式如下:
其中,Cum_MACD为MACD与信号线的累计穿越距离,a为设定的阈值。这里的阈值通常被设定为真实波动幅度均值(Average True Range,ATR)。其中,ATR指标的具体计算公式如下所示:
其中,TR_i为真实波动幅度(True Range),用于衡量每日的价格波动幅度,ATR则是TR_i的移动平均值。
因此上述市场趋势的初步判断可以写为:
其中,Cum_MACD为MACD与信号线的累计穿越距离,ATR为真实波动幅度均值。我们称本节所介绍的判断市场处在上升、下降趋势的方式为初步趋势判断策略。
图5展示的是利用铁矿石合约进行初步趋势判断策略的净值表现。可以看出,利用MACD的特性来对上升、下降趋势进行判断长期可以获得正向收益。但是收益的稳定性不强,且回撤较大。
表1对铁矿石合约的初步趋势判断策略的绩效进行了分年度统计。其中,策略年化收益为20.59%,夏普率为0.69,Calmar为0.64。因此,我们可以看到利用MACD对于市场趋势的判断具有有效性,但要想增加策略的稳定性,对市场趋势还需要进一步判断和验证。
3.2拐点判断
前面我们基于MACD指标对市场是否处于上升、下降趋势做出了判断,但是由于MACD指标具有一定的滞后性,因此只通过MACD指标有时对于行情拐点的判断会出现延迟。
图6所展示的是铁矿石最高价、最低价以及收盘价走势,可以看到,价格一路下跌后有小幅上扬。通过我们对市场趋势的初步判断,将这段行情划分为下降趋势转为上升趋势后转为下降趋势。
我们可以直观地从图中看出,被初步判断为上升趋势的部分,价格走势整体呈现出下跌状态。借鉴道氏理论中的定义,这部分价格持续创出新低,且低于上一下降趋势中最低点。
图7所展示的是另一段铁矿石的价格走势,可以看到,在这段行情中,价格一路上涨,而市场趋势的初步判断结果为,市场先经历上升趋势,后转为下降趋势最后又转为上升趋势。
在图7中的下降趋势部分,价格呈现出来先水平后上涨的状态,整段过程价格仍以上涨为主。且价格也突破了上一上升趋势中的最高点。
我们可以据此对拐点进行判断,从而对初步判断的趋势进行修正:
**若市场处于上升趋势,但最低价突破上一下降趋势中最低价的最小值,则趋势发生反转,即判断为下降趋势。**
若市场处于下降趋势,但最高价突破上一上升趋势中最高价的最大值,则趋势发生反转,即判断为上升趋势。
图8以及图9则分别展示了前面图6以及图7在经过上述拐点修正后的趋势判断结果。
在图8以及图9中灰色部分为经初步判断为下降趋势的部分,蓝色部分为初步判断为上升趋势的部分。
图8中在上升趋势判断后,随着行情的运行,时刻关注行情的最低价所形成的最小值,当最低价创出前一个下降趋势最低价新低后,我们随即将此上升趋势修正为下降趋势,经拐点修正后的下降趋势部分由浅灰色表示。
图9展示的价格走势中,经初步判断市场先经由上升趋势,后转为下降趋势,最后再次转为上升趋势。
其中,在判断为下降趋势后,则开始记录此段行情的最高价的最大值,当处在此下降趋势中的最高价超过前一上升趋势最高价后,我们随即将此下降趋势修正为上升趋势,经拐点修正后的上升趋势部分由浅蓝色表示。
可以看到,在经过拐点修正后,策略对趋势的识别更加准确,当出现初步判断趋势与行情走势不符时,能够及时将趋势进行调整。
图10展示的是拐点修正策略净值表现,以及表2列示了拐点修正后策略分年度绩效统计。
从图10可以看出,拐点修正后策略长期表现稳健,具有显著的正向期望收益。且相比前面初步判断趋势准确度有所提升。
当然,我们也可以看出,策略的波动性较大,在2014年至2015年期间,策略出现较大回撤。具体在下方表2中我们将该策略分年度的绩效进行统计。
表2所展示的是拐点修正后策略绩效分年度统计情况。总体来看策略表现稳中有升,全样本期费后年化收益率为15.87%,夏普率由0.69提升至1.08,Calmar由0.64提升至0.88。全样本期策略的最大回撤为18%。
可以看到,在结合道氏理论对市场趋势初步判断的结果进行修正后,策略表现得到了全方位的提升。但是我们仍希望策略的表现体现出更强的稳定性。那么如何对策略进行优化与改进呢?
接下来,我们将探讨以下问题:何为道氏趋势?道氏趋势对当前策略有何启示?以及如何利用道氏趋势对策略开仓进行调整?
3.3道氏趋势
通过前面的讨论可知,我们对于市场趋势的判断长期可获取正收益,在加入了拐点判断后策略的稳定性得到了显著提升,但我们还需要对策略的开仓时点进行检验与佐证,来平滑策略的收益曲线。
图11以及图12分别展示了铁矿石的最高价、最低价以及收盘价的价格曲线,以及通过MACD进行拐点修正后的市场上升以及下降趋势。
从图11中可以看到,铁矿石的价格曲线正在下行,但拐点修正后的趋势判断出图中左侧部分为上升趋势,这显然与价格走势发生了背离。在实际交易中往往希望能够规避这样的信号。这里我们借鉴前述道氏理论对于趋势的定义,可以观察到价格曲线中最高价所构成的极值点连线方向向下,我们可以据此认为判断为铁矿石价格上涨趋势并未形成。
图12所展示的是在拐点修正后被判断为下降趋势的灰色区块中,铁矿石价格还在上升的情况。借鉴前述道氏理论对于趋势的定义,可以看到价格曲线中最低价所构成的极值点连线方向向上,因此与拐点修正后判断的下降趋势相背离,我们依旧无法认定铁矿石的价格处在下跌趋势中。
通过前面的案例可以看到,在趋势的判断中,道氏理论可以为我们提供指导,那么在实际交易中如何将道氏理论进行落地呢?本节我们将尝试提供一种解决方案。
道氏理论通过极值点的连续上升以及下降来判断趋势是否形成,这里的核心问题是对极值点的刻画。
由于市场的高低点一定是交替出现的,因此理论上当市场从上升趋势转向下降趋势时,市场最近的一个高点则已经形成,反之,当市场从下降趋势转为上升趋势时,市场则形成了最近的一个低点。
如图13所示,为铁矿石的最高价、最低价以及收盘价的价格走势,图中灰色部分为初步判断的下降趋势,蓝色部分为初步判断的上升趋势。
**若当前行情运行到上升趋势,**对应图中最右侧蓝色区域,**则时刻记录最高价的最大值定义为临时高点(若当前为下降趋势则记录最低价的最小值,并定义为临时低点)。**
上一个上升趋势(对于图中左侧第一个蓝色区域)**中最高价的最大值则定义为当前第一高点(若当前为下降趋势,则上一个下降趋势中最低价的最小值为第一低点)。**
最近两个下降趋势(分别对应图中右侧第一个灰色区域,对应图中左侧第一个灰色区域)中最低价最小值分别为第一、第二低点(若当前为下降趋势,则最近两个上升趋势中最高价最大值分别为第一、第二高点)。
使用公式可以表述如下:
当最新趋势为上升趋势时:
当最新趋势为下降趋势时:
其中,uptrend_i以及downtrend_i分别表示趋势为上升趋势以及下降趋势,i取值为0,1,2等代表当前状态,上一状态,上两个状态等。即uptrend_0代表当前上升趋势,uptrend_1代表上一个上升趋势,以此类推。
我们定义当第一低点大于第二低点时,为道氏上升趋势,当第一高点小于第二高点时,为道氏下降趋势。
据此,我们可以利用趋势共振对市场趋势进行修正:当经拐点修正后的市场上升趋势与道氏上升趋势同时成立时,我们开多仓,反之当拐点修正后的市场下降趋势与道氏下降趋势同时成立时,我们开空仓。当初步判断市场趋势与道氏趋势相反时空仓。
图14展示的是利用铁矿石合约在初步趋势判断与道氏趋势判断相一致时所作策略的净值表现。可以看出,相比之前初步趋势判断的净值表现,趋势共振后收益走势更加稳定。
表3对铁矿石合约的趋势共振策略的绩效进行了分年度统计。相比前面对于拐点修正策略的收益而言,夏普率从1.08提升到了1.26,Calmar由0.88提升至1.39。可以看到策略的稳定性进一步得到了提升。
其中,策略年化收益为17.86%,全样本期最大回撤为12.83%,历年最大回撤出现在2018年为11.11%。
至此,我们在MACD指标对市场趋势进行初步判断的基础上,结合道氏理论对趋势的拐点进行了修正,这样能够在一定程度上解决MACD指标的判断延迟问题。同时基于道氏理论构造了道氏趋势,通过与市场上升、下降趋势的共振来得到开仓点。
交易品种设置
对于同一个CTA策略,往往难以适用所有的商品期货品种。在策略的实际使用中,如果可以通过动态识别策略在不同品种上面的表现,从而进行动态的交易品种的选择,那么可以使得策略的表现更加稳健。
如图15所示,我们在每个月末对所有已满足流动性条件的商品期货品种过去一年在策略上的表现进行测试,剔除过去一年中在该策略上交易次数小于5次(表示策略在该品种上不易触发信号),或者交易次数不少于5次,但策略收益率小于0的交易品种。
这种筛选方法往往可以将不适用该策略的品种进行剔除,之所以选择剔除不适应策略品种的逻辑,而不是筛选表现最好的品种的逻辑,是因为后者往往比较容易造成考察期的局部过拟合。
杠杆设置
在进行完待交易品种的筛选后,我们将对整个策略的杠杆进行设置,我们的目标是将策略在波动较小的时候,设置较高杠杆,在策略波动较大时,将杠杆水平设置较低。这样的做法一方面可以平抑策略的波动,提升整体稳定性,另一方面可以提升实际操作时策略的资金安全性。策略杠杆设置的具体做法是,我们在每个月月末回看策略整体的运行情况,计算过去一年该策略收益表现的波动率,将目标波动率设置为15%(取决于对于策略预期的杠杆率水平,通常维持在2倍杠杆左右),那么波动率调整系数的计算公式可以表示为:
其中,Mul_vol为经已实现波动率调整的系数,Vol为策略在过去一年中的已实现波动率。通过对策略表现波动率的调整,可以使得策略在不同市场环境下运行的整体风险趋于一致。出于实际使用情况考虑,我们设置最大杠杆率为4倍杠杆。因此当Lev的绝对值大于4时,我们截断为4。在经过已实现波动率调整后,基于道氏理论的商品期货交易策略平均杠杆率的时序变化图如图16所示。从图16中看到,策略平均杠杆率为2.05倍,这个也是基于道氏理论的商品期货交易策略的最终杠杆率变化水平。在2013-2014年间策略的历史杠杆率达到峰值,在2016年策略杠杆率降到最低,之后,在2018年间,策略的杠杆率再次冲高。近期杠杆率有所回落,整体处在历史均值下方。
至此,策略的全部逻辑已经探讨完毕,策略的最终表现以及相关特性将在下面进行详细阐述与测试。
基于道氏理论的商品期货交易策略
我们从Charles H. Dow(Charles Henry Dow)的简介出发,到道氏理论的历史,对道氏理论有了初步的了解。我们利用MACD指标对市场趋势进行初步判断,结合道氏理论对市场趋势拐点进行修正,并利用道氏理论对极值点运行规律的描述形成开仓逻辑,最终我们构建了基于道氏理论的商品期货交易策略。具体的策略构建流程如下:
投资标的:
过去半年中日均成交额超过 50 亿元的商品期货全品种的主力合约。
开仓信号:
多头:
- MACD上穿信号线累计距离大于等于ATR(上升趋势)
- 临时低点高于第一最低价(拐点修正)
- 第一最低价大于第二最低价且收盘价大于等于临时高点(道氏趋势)
空头:
- MACD下穿信号线累计距离小于等于ATR(下降趋势)
- 临时高点低于第一最高价(拐点修正)
- 第一最高价小于第二最高价且收盘价小于等于临时低点(道氏趋势)
杠杆率调整:
ATR调整:海龟资金管理法(1 单位ATR的波动对应策略整体资金规模的 0.5%, 详见附录 2—海龟资金管理法)
已实现波动调整:以过去一年策略波动率为基准设置目标年化波动 15%
最终杠杆率:ATR调整杠杆*已实现波动调整杠杆,最高 4 倍杠杆截断。
**品种动态筛选:**
剔除过去一年中在该策略上交易次数小于 5 次(表示策略在该品种上不易触发信号),或者在该策略上交易次数不少于 5 次,但策略的收益率小于 0 的交易品种。
资金分配:
满足开仓条件品种等权分配资金。
成交价格:
信号触发后 5 分钟VWAP。
交易成本:
交易手续费 0.3%%,冲击成本 1%%。
综上所述,在经过上升、下降趋势判断,拐点修正以及道氏趋势共振后,便形成了基于道氏理论的商品期货交易策略,至此,回顾策略的构建流程用一个流程图可表示如图17所示:
按照上述流程构建的基于道氏理论的商品期货交易策略历史表现稳定且具有较高收益率,同时回撤可控。具体走势如图18所示:
2012年以来,基于道氏理论的商品期货交易策略费后年化收益率为21.74%,夏普率为1.42,Calmar比率为2.2。可以看出策略表现非常稳健。其中,策略的分年度收益表现如表4所示:
由于我们控制目标年化波动率在15%,因此实现出来全样本期的年化波动率为15.34%,与期望的目标波动率比较接近。上述基于道氏理论的商品期货交易策略在进行回测时使用的交易成本为1.3%%,是由交易手续费0.3%%以及冲击成本1%%构成。交易价格为策略信号发出后5分钟的VWAP均价,我们测试了不同冲击成本下策略的收益表现如图19所示:
从图19中的不同交易成本下曲线可以看到,基于道氏理论的商品期货交易策略对于交易费用不敏感。具体各个交易成本下策略绩效统计如表5。
从表5可以看出策略对于交易成本的变化不敏感,随着交易成本的增加策略年化收益率变化缓慢。当交易成本从1.3%%增长至2.5%%后,策略的年化收益率从21.74%降到17.44%,夏普率仅从1.42下降到1.13。
综上,可以看到,交易成本的变化对策略净值的走势影响不大。基于道氏理论的商品期货交易策略在不同的交易成本下均可实现长期稳定的表现。
CTA复合策略
关于期货交易策略,在国信金工团队前期的CTA系列专题中已经有较多的介绍,这里我们做一下简单的回顾,具体内容可参考对应的报告。
在2021年5月13日发布的专题报告《基于开盘动量效应的股指期货交易策略》利用开盘形态交易股指期货;
在2021年10月13日发布的专题报告《基于Bollinger通道的商品期货交易策略》在Bollinger通道策略的基础上利用持仓量过滤及品种的动态选择构建了商品期货交易策略;
在2022年5月24日发布的专题报告《基于Carry的商品期货交易策略》利用商品期货的期限结构进行策略构建;策略间彼此相关性较弱,长期相关性矩阵如表6所示:
可以看到策略之间长期相关性在0.5以下,这表明各策略之间的线性相关性并不高,在进行线性合成时彼此之间可以体现出较强增益。
从表6中可以看出,由于策略逻辑不同且长期相关性较低,因此将这样四个策略进行组合,可以提升CTA策略的稳定性,在CTA产品中,往往需要多策略进行搭配使用。
我们将这四个策略等权配置,月度再平衡,可以得到CTA复合策略,复合策略的净值曲线如图20所示:
图20显示的是CTA复合策略的净值曲线,从图中可以看出策略的净值曲线较为光滑,且收益较高,这比较符合我们的预期。其中,复合策略的分年度收益统计如表7所示:
从表7中可以看到,复合策略的年化费后收益率为22.42%,夏普率为2.61,Calmar为3.56。
因此,复合策略的表现非常稳健。当CTA策略组合中的策略逐渐丰富起来之后,CTA复合策略的表现会更加优异,呈现出来的净值表现也将更加稳健。
总结
道氏理论
我们从Charles H. Dow的传奇人生以及道氏理论的历史出发,对道氏理论以及道氏理论中对趋势的描述进行了简要介绍。
上升趋势与下降趋势
MACD(Moving Average Convergence/ Di-vergence)指标可以用来表征市场运行的方向,是动量类指标的一种。其基本原理是使用均线之间的距离对噪音进行过滤,从而对市场趋势进行初步判断。当MACD上穿信号线累计距离突破阈值后,市场可被初步判断为上升趋势,当MACD下穿信号线累计距离突破阈值后,市场可被初步判断为下降趋势。
拐点判断
如果只使用MACD作为信号进行交易则会由于信号的迟滞,导致在趋势发生逆转时判断受到局限。借鉴道氏理论对趋势的描述,在对市场趋势进行初步判断后,对拐点进行修正。策略相对只使用MACD信号进行趋势判断进行交易在稳定性上具有显著提升。
道氏趋势
我们对于市场趋势的初步判断长期可获取正收益,在加入了拐点修正后策略的稳定性得到了显著提升,但我们还需要对策略的开仓时点进行检验与佐证,来平滑策略的收益曲线。通过对高低点的定量刻画,借鉴道氏理论,从而形成道氏趋势,将拐点修正后的市场趋势与道氏趋势相结合,当趋势共振时对策略进行开仓操作,策略表现可以得到进一步提升。
基于道氏理论的商品期货交易策略
结合MACD对市场趋势初步判断后与道氏理论相融合对拐点进行修正,最终配合道氏趋势,形成基于道氏理论的商品期货交易策略。策略表现稳定且具有较高收益率,2012年以来该策略净值稳定攀升,同时回撤可控。基于道氏理论的商品期货交易策略费后年化收益率为21.74%,夏普率为1.42,Calmar为2.2。
CTA复合策略
我们将基于道氏理论的商品期货交易策略与此前发布的基于开盘动量效应的股指期货交易策略、基于Bollinger通道的商品期货交易策略以及基于Carry的商品期货交易策略等权复合,构造为CTA复合策略。复合策略的年化费后收益率为22.42%,夏普率为2.61, Calmar为3.56,且每年Calmar均大于1。
附录
9.1附录一:数据准备
在本节将介绍我们对数据的准备以及处理方法。在CTA策略的测试中,数据的处理主要涉及以下几个问题:主力合约如何确定,展期价格跳空如何处理,不同合约数据怎么拼接以及发单价格如何确定。下面我们将针对这些问题进行分析和解决。
主力合约的确定
在确定主力合约时,我们使用成交量以及持仓量均达到最大的合约作为主力合约。这其中,股指期货在合约到期月份的第三个周五进行交割,国债期货在合约到期月份的第二个周五进行交割,因此,如果上述品种在交割前还没有能够新的主力合约可以确定,那么需要在交割日前一个交易日强制切换至当时的次主力合约。同时,主力合约不可逆,一经确定不可反复。
合约切换的思考
在合约进行切换时,可能会出现前后两个主力合约的价格无法进行无缝对接的情况。如图 21 以及图 22 所示:
图 21 为RB1901合约切换到RB1905合约的价格序列图,其中切换时点为 2018 年 12 月 3 日。从图 22 可以看出,在切换的时间点出现了一个价格的大幅跳空低开的情况,如果认为这是行情的自然状态,则可能导致对行情判断的失误。从而导致策略判断失真。
那么在切换合约时,通常有两种做法,一种是根据新主力合约之前的业绩进行新交易信号的判断,以RB合约为例,当合约从RB1901切换到RB1905时,之后的策略计算都按照RB的历史数据进行计算,这样做的好处是,策略信号来源于该标的且作用在该标的。而缺点是有些合约虽然切换到了新的主力合约,但是由于切换前该新合约交易并不活跃,加之有些策略需要使用大量历史数据进行处理和分析,因此可能导致信号失真,或者价格波动较大的情况。
还有一种做法是将价格数据进行复权。复权分为前复权以及后复权,如果向前复权的话,则当前的合约价格为真实价格,之前的合约价格数据为复权后的价格。这样做的好处是可以使用当前的真实合约价格来确认开仓数量,而缺点则是历史数据会随着新数据的更新而出现变化,尽管变化较小,但随着时间的推移以及浮点数的保存问题,有可能会出现新计算出来的策略开仓时点或者策略曲线与之前计算的无法完全匹配的情况。那么会在策略归因时,造成一定的困难。
我们所使用的方法是进行向后复权,这样做的前提是需要选择一个策略开始计算的日期为基期,一旦基期确定下来,后面行情如何更新都对历史数据造成改变。当然,如果基期发生了变化,则有可能导致历史数据的变化。由于2010年以前上市的期货品种较少,且活跃度不高。因此我们所使用的基期则定为 2010 年 1 月 1 日。
复权的具体做法为:在每次展期的时候,计算新主力合约以及旧主力合约的价格跳空比,以此作为当日之后新主力合约价格的复权因子。该复权因子的具体计算公式为:
其中,AdjFactor_(i−1)为上一期复权因子,Close_(i−1, old)为旧主力合约展期前一日收盘价,Close_(i−1, new)新主力合约展期前一日收盘价。这样计算出来的复权因子 AdjFactor_i为当期复权因子。其中,基期的复权因子为1。计算好复权因子之后,新的主力合约的开盘价、最高价、最低价以及收盘价都乘以当期的复权因子,即为复权价格。
这样使用复权价格可以很好地避免因切换合约带来的价格跳空的影响,具体在计算收益率时,如果直接使用原始价格进行计算:
当新主力合约价格与旧主力合约价格出现跳空时,该收益率会出现异常值,而使用复权因子之后收益率的计算变为:
可以看到,这样计算出来的收益率即为实际收益率,进而避免了因合约切换导致的策略信号漂移或者收益率无法计算的情况。
如图 22 展示的是经复权之后RB1901合约切换到RB1905合约的情况,可以看到,图 21 跳空的部分变得更加连续了。因此,通过对主力连续不同合约的价格进行复权处理,我们便可以得到连续无异常跳空的行情时间序列数据。
数据处理与拼接
本节将从两个维度分析数据处理中的相关问题。第一,当策略只包含股指期货的时候,数据的处理。其次,当策略需要做商品期货全品种时,数据处理的问题。
由于股指期货的三个品种的交易时间都是同步的,因此不存在不同合约时间对齐的问题。但是需要确定策略执行的收益率的计算方法,我们考虑实盘交易时在信号触发后的成交的价格为 5 分钟的VWAP,具体可以根据产品规模而定。同时,交易时间越长对策略的时效性要求就越高,需要策略信号的衰减周期与交易时长相匹配。具体做法为计算策略信号触发后 5 分钟的成交额除以经合约乘数调整的成交量:
其中,Amount_i为第 i 分钟的成交额,Vol_i为第 i 分钟的成交量, Multi为该品种的合约乘数。
当策略需要加入全部期货品种的时候,则需要考虑全品种的交易时间对齐的问题。部分商品期货有夜盘,部分商品期货没有。此外,所有商品期货的品种在上午 10 点 15 分至 10 点 30 分期间为暂停交易时段。因此,进行时间对齐时非交易时段行情数据的处理就是一个需要解决的问题。我们的处理方式为非交易时间段行情 序列设置为空值,信号延续交易时段信号,同时策略收益率设置为零。
当合约尚未上市时,将行情序列设置为空值,且不允许发出交易信号,收益率也设置为空值。
9.2
附录二:海龟资金管理法
策略中的风险主要由两部分组成,一部分是策略的潜在亏损,一部分是策略的波动。接下来,我们主要围绕对策略波动进行风控的方法进行介绍。
为使得策略在所有不同品种上面的波动幅度可控,我们需要根据不同品种的波动幅度进行交易量的调整。这里所说的波动幅度通常使用真实波动幅度均值(Average True Range,ATR)来度量。其中,ATR指标的具体计算公式如下所示:
其中,TR_i为True Range,用于衡量每日的波动幅度,ATR则是TR_i的移动平均值。
通过ATR指标来调整品种杠杆的基本原理是,将波动较高的品种赋予相对较低的杠杆,将波动较低的品种赋予相对较高的杠杆,因此杠杆率与品种的ATR呈反比关系。
更进一步地,对风险的控制要求我们知道 1 单位ATR的波动对应我们账户资金波动的多少,这里假设我们要让 1 单位ATR的波动正好等于我们策略整体资金规模的 0.5%。假设我们使用的是一个单位账户,即总资金规模为 1。那么,我们将 0.5%除以对应的 1 单位ATR则为我们实际应开出的合约数量。即此刻交易应该开出的合约手数。
如果我们需要计算的是一个杠杆率即当前开仓手数占整体资金规模可开仓手数的比例,那么需要除以满仓状态下可以开出的总合约数量,具体计算公式为:
其中,Pos_ATR为 1 单位ATR对应资金规模 0.5%波动的应开手数, Pos为全部资金对应满仓可开手数,Close为收盘价,Lev_ATR为应开手数除以满仓手数的开仓杠杆率。由上面算法计算出来的开仓杠杆率具有根据ATR波动调整杠杆率大小的特性,当一个品种的日均波动较大时,我们倾向于给予该品种较低的杠杆,而反之, 如果一个品种的日均波动较小,我们则可以给该品种较高的杠杆。从风险控制的角度如果一个品种的波动较大,给予较小杠杆也是出于对资金安全的考虑,防止由于较大的波动幅度而触发穿仓风险。
本文选自国信证券于2022年8月9日发布的研究报告《CTA系列专题之四:基于道氏理论的商品期货交易策略》
分析师:张欣慰 S0980520060001
分析师:刘 凯 S0980522040002
风险提示:市场环境变动风险;模型失效风险。
文章来源:公众号 量化藏经阁