海龟交易法则的由来

著名的商品投机家理查德·丹尼斯想弄清楚伟大的交易员是天生造就的还是后天培养的。为此,在1983年他招募了13个人,教授给他们期货交易的基本概念,以及他自己的交易方法和原则。由于这批学员们被称为“海龟”,因此这套交易法则就被后人称作“海龟交易法则”。海龟实验成为了交易史上最著名的实验,因为在随后的四年中海龟取得了年均复利80%的收益。

基本原理

海龟策略本质上来讲是一个趋势跟随模型,通过唐安奇通道突破方法确定入场离场信号。原版的海龟交易法则需要决定的决策有:1、市场:买卖什么;2、头寸规模:买卖多少;3、入市:什么时候买卖;4、止损:什么时候放弃一个亏损的头寸;5、退出:什么时候退出一个盈利的头寸;6、战术:怎么买卖。

本文为了简单起见,以沪深300作为标的进行回测,也可以换成其他的股票或基金。该策略具体实现方法:买入条件:收盘价超过55个交易日里的盘中最高价(不是收盘价中的最高)卖出条件:收盘价低于20个交易日里面的盘中最低价,其他时候如果不持有股票就买入债券基金。如下图所示:


通道突破图解

实施方法

具体实施方面,可以买入场内交易量较大的510300或者其他沪深300ETF,债券基金可以买入511010或者161010,这里由于161010发行时间较早,可回测时间较长,所以本次以161010为例进行说明。

第一步、建立一个静态基金池,将投资域限定为510300,如下图所示:


第二步、建立买入条件,可以借助自定义指标,增加一个自定义指标“买入”,输入通道突破的判定表达式。将这个指标添加到筛选条件中,设置为‘买入’大于0。这样当满足条件时,这个指标为真(大于0,系统就会买入510300。如下图所示:


编辑自定义指标


添加筛选条件

第三步、交易模型设置,由于需要用到自定义卖出条件因此选用模型II;同一时间下只持有一只ETF,所以理想仓位设置为100%;我们希望每天判断是否满足了买入/卖出条件,所以调仓周期设置为1天。当卖出仓内的ETF时,默认买入161010,所以‘空仓资金配置’选择‘富国天丰’。最终设置如下:


第四步、设置卖出条件,当收盘价跌破20日盘中低价时,卖出仓内的ETF,通过自定义卖出条件实现,如下图所示:


第五步、设置回测区间,本例中选择了从2010年到目前为止,点击回测即可看到按照该交易法则进行交易的回测结果。如下图所示:


策略链接:海龟策略