海龟策略7大要素

原版海龟策略出现在《海龟交易法则》最后章节的附录中,有兴趣的朋友可以详细看看,在这里我们概况一下海龟策略的7大要素,如图所示。

(由于内容有点多,故拆分成上下两部分,这里只介绍到第四大要素,即入场信号)

1.品种选择

书中明确表示海龟策略选择标准是流动性高的期货品种,另外两个隐含的条件是具有历史大波动并且无人为干预的品种(例子:肉类交易厅场内交易员腐败问题)。

在国内,其对应的就是四大期货交易所成交量巨大的品种,并且可以剔除股指期货(因为政府干预)。

2.头寸规模

2.1 头寸规模含义

头寸规模是海龟交易系统最重要的部分之一,其优势是根据一个市场的绝对波动幅度来调整头寸的规模,等于将头寸的绝对波动幅度标准化。

这意味着,一个特定头寸在某一天的向上或向下变动幅度与其他市场的头寸基本相同,无论这个特定市场的波动性是大还是小。

举个例子,若一个市场的合约价值波动性较强,那么这个市场中的合约持仓就少一些,反之,若一个市场的波动性较弱,这个市场中的头寸就可以大一些。

总之,市场的波动性与头寸的规模是相互抵消的。波动性标准化处理意味着不同交易在盈亏概率上是相同的:它们都有同样的机会赚一美元或赔一美元。这便提高了多重市场分散性的效果。

2.2 头寸规模计算


公式中有2点需要特别说明一下,一个是"N",另一个是"每一点数所代表的美元”。

  • N:其定义是真实波动幅度(TR)的20日指数移动平均值,即20日的ATR(至于ATR指标的介绍和计算过程在附录A-1中展开,这里不做过多说明)。另外需要注意的是,ATR是基于期货指数得到的,这意味着在策略实现中,不管是历史回测还是以后实盘测试,都要用到期货指数。解决方法有两个:要么自己自己写脚本合成实时的指数行情数据,要么使用第三方收费的指数行情数据。(考虑开发脚本的难度和运维数据的成本,显然购买第三方数据性价比高的)
  • 每一点数所代表的美元:每一手合约规模数量,以美元为计价。

2.3 举例说明

原版头寸规模单位计算例子:纽约商品期货交易所(NYMEX)民用燃料油(HO03H)在2002年12月4日,其日K线的最高价、最低价、收盘价分别是0.7420、0.7140、0.7162,ATR值是0.0141,民用燃料油的合约规模是42000加仑(1000桶),若账号资金是一百万,则得出的头寸规模是16.88,四舍五入得头寸规模为17手合约,如图

这里可以看出美国期货合约,其合约规模非常大,但是价格低(即ATR值小),这与国内期货合约是相反的。这是因为国内期货表现出其合约规模小但是价格比较高的特点。

下面以螺纹钢合约为例:2018年12月12日,螺纹钢指数日K线的最高价、最低价、收盘价分别是3416、3356、3356,20日的ATR值是103.55,合约规模是10吨,故其头寸规模 = (1%乘以1,000,000) /(103.55乘以10)=9.66,四舍五入得10手合约。

从上面两个例子可以推断出,若账号资金不足,头寸规模调整失去精确性,大大降低风险分散化的效果。

3.单位头寸限制

原版海龟策略通过4个层面来限制其成交量。书中说道,这些法则可以控制交易者总体风险水平。无论是在没完没了的亏损时期还是翻天覆地的价格动荡中,这些限制都能把损失最小化。

这四个层面的限制分别如下:

  • 单个市场:头寸上限是4个
  • 高度关联的多个市场:单个方向头寸单位不超过6个
  • 松散关联的多个市场:某一个方向上的头寸单位不超过10个
  • 单个方向:最多12个

这方面的总结可能是经验之谈,实现起来比较困难,因为高度关联市场和松散关联市场判断起来都非常主观,并无统一标准。故只能简单的实现单个市场和单个方向的头寸限制。

4.入场信号

原版海龟策略提供2个版本的入场信号,用的都是唐奇安通道突破策略(唐奇安通道突破在附录A-2中展开,这里不做过多说明。),其区别在于时间周期不同,下面分别介绍这两个版本:

4.1短周期版本

  • 若期货指数价格突破20日最高价/最低价,买入/卖出1个头寸单位。
  • 过滤条件是上一次突破是盈利性突破,则当前入市信号无效(其保障性突破点为在55日通道入市)。
  • 若突破日后价格在反方向移动幅度达 2*ATR,止损离场。
  • 关于过滤条件,该书作者认为若上一次突破点盈利,那么新突破点可能离当前价远,因为有可能是个55日突破点,若上一次突破点亏损,那么新突破点将更加接近当前价格。

4.2 长周期版本

  • 若价格突破55日最高价/最低价,买入/卖出1个头寸单位。
  • 对于长周期版本来说,所有突破都被视为有效信号,无论上一次突破是亏损性还是盈利性的。

海龟们可以自由决定如何在这两个版本之间分配资金,有的海龟只用短周期版本,有的则只用长周期版本,也有的各投50%。

--------------------------------------------------------------------分割线---------------------------------------------------------------------------------

附录A-1 ATR指标

1.1 ATR指标原理

平均真实波动范围(Average true range),简称ATR指标,是由韦尔德(J.Welles Wilder)发明的,ATR指标主要是用来衡量市场波动的强烈度,即为了显示市场变化率的指标。注意,这一指标主要用来衡量价格的波动,并不能直接反映价格走向及其趋势稳定性。

这一指标对于长期持续边幅移动的时段是非常典型的,这一情况通常发生在市场的顶部,或者是在价格巩固期间。根据这个指标来进行预测的原则可以表达为:该指标价值越高,趋势改变的可能性就越高;该指标的价值越低,趋势的移动性就越弱。

当ATR线上升时,意味着资产的波动性在增加。当ATR线下降时,意味着资产的波动性在减少。ATR 不会显示资产移动的方向。

1.2 ATR指标计算

首先应计算出TR(即当天的真实波幅),如图1-1所示,#2,#3为市场出现跳空高开和跳空低开的情况。TR在当日最高价与最低价,当日最高价与昨日最收盘价,当日最低价与昨日收盘价这3种情况中取最大值。


图1-1 计算ATR所考虑的3种情况

由于一天的TR缺乏效率以及代表性,韦尔德用ATR来更好的衡量市场的波动性;一般而言,海龟测试的数据周期是20以及55,这意味著如果投资者在日线图看ATR,20 = 20日。TR的计算公式如图1-2所示。

图1-2 TR计算公式

最后,20日的ATR = (前19日的TR + 当日的TR)/ 20


附录A-2 唐奇安通道

唐奇安通道也被称为价格通道,扬名于70年代,美国有个公司对当时最流行的机械交易系统进行了模拟测试和比较研究,其研究结果表明,在所有测试对象中唐奇安通道规则最为成功。1983年,他被推举为首届“最佳获利奖”得主,并将此奖项改为唐奇安奖。

唐奇安通道通道突破规则非常简单:当价格突破前X天最高价时,做多;价格突破前X天最最低价时,做空。X值默认为20,市场上流行对20这个值解释的佚闻是:唐奇安在开发唐奇安通道的期间,碰巧阅读到整形外科医生马尔兹博士在1960年所作的“心理控制论”(这本书在1989年被重新发现)。马尔兹博士称在整形外科手术过程中,患者最少需要21日来看到自己的新的容颜。而很多观察到的现象都显示了其最起码需要21日来使得新事物代替旧事物。这一事实震惊了唐奇安,21个自然日就等于15个交易日!当绝大多数交易者都在认为趋势可能已经变化时(他们认为看到了市场的新颜),主要趋势却已做好了继续运行的准备。

海龟策略深入研究-策略回测系列-2:原版海龟策略(上)相关推荐

  1. 12、【股票策略】使用backtrader回测升级版的狗股策略-基于股息率和市净率两个因子

    12.使用backtrader回测升级版的狗股策略-基于股息率和市净率两个因子 更进一步的回测代码可以参考版本4:[股票策略]使用backtrader测试狗股策略版本4-在版本3的基础上进行代码改进优 ...

  2. 手把手教你用Python搭建自己的量化回测框架【均值回归策略】

    1 引言 大部分量化策略都可以归类为均值回归与动量策略.事实上,只有当股票价格是均值回归或趋势的,交易策略才能盈利.否则,价格是随机游走的,交易将无利可图.均值回归是金融学的一个重要概念,指股票价格无 ...

  3. 11、【股票策略】用backtrader回测在A股上复利年化收益率超20%的“狗股策略”?

    11.用backtrader回测在A股上复利年化收益率超20%的"狗股策略"? 更进一步的回测代码可以参考版本4:[股票策略]使用backtrader测试狗股策略版本4-在版本3的 ...

  4. 利用Backtrader进行期权回测之四:Covered Call策略

    在前面的三篇文章中,解决了期权数据获取和实现期权策略的一些技术问题.在这篇文章中,我要实现一个完整的covered call期权策略.Covered call是最简单的期权策略之一,就是持有股票并卖出 ...

  5. Backtrader量化回测1——基本的交易策略与挂单买卖

    Backtrader Github页面:https://github.com/mementum/backtrader 官网Quickstart 教程:https://www.backtrader.co ...

  6. python回测代码_python实现马丁策略回测3000只股票的实例代码

    免费资源网 - https://freexyz.cn/ 上一篇文章讲解了如何实现马丁策略,但没有探索其泛化能力,所以这次来尝试回测3000只股票来查看盈利比例. 批量爬取股票数据 这里爬取数据继续使用 ...

  7. 偏离策略年化收益回测出来了,高达372%

    大家好,我是启四,长期分享套利机会. 长话短说,经过艰苦的努力,我终于把偏离策略的收益回测出来了,结果是让人惊喜的! 时间取 2021-06-25 到 2021-11-23, 取偏离策略的前 5 进行 ...

  8. 股票平台突破策略聚宽量化回测

    股票平台突破策略量化回测 策略逻辑: 在振幅为15%以内(20cm的在30%以内),横盘60天左右.昨日涨停并且收盘价突破盘整平台最高价.次日以开盘价买入. 买卖点: 买入次日开盘价低开3%以上的直接 ...

  9. 【量化交易】永久投资组合,海龟交易法则阅读,回测与讨论

    [量化交易]永久投资组合,海龟交易法阅读,回测与讨论 首先和大家分享一个真实的故事. 根据网上北京市,1991年至2021年平均工资年鉴. 北京市1991年平均工资为2877元,2021年平均工资为1 ...

最新文章

  1. Google AI骗过了Google,工程师竟无计可施?
  2. 直播预告丨如何用 A/B 测试做好一场页面布局试验?
  3. 机器学习模型在携程海外酒店推荐场景中的应用
  4. 小程序短视频项目———上传短视频业务流程简介
  5. ExtJS中listener方法和handler方法的区别
  6. DM8168 DMM(2)
  7. php渲染nodejs api,nodejs通过响应回写渲染页面步骤详解
  8. STL:STL各种容器的使用时机详解
  9. Mysql 配置文件常见配置
  10. 地图比例尺与空间分辨率之间的关系_卫星遥感制图最佳影像空间分辨率与地图比例尺关系探讨...
  11. 双态运维联盟首个“共研基地”落户云南电网信息中心
  12. android x86 安装到u盘分区,安卓X86 U盘启动盘制作教程 PC体验Android x86 4.0系统
  13. Android实现键盘拨号
  14. 商业智能BI与业务管理决策思维之三:业务质量分析
  15. AM5728配置DMM_LISA_MAP修改内存工作模式
  16. 漫话NFT——NFT的应用场景
  17. 微信网页开发wx.getLocation在安卓手机上的一个坑
  18. 关于表单防重复提交一些东东
  19. stl文件html预览,基于SpringMVC对stl文件的3D可视化
  20. mysql5.7增加ssl认证(1)

热门文章

  1. SketchUp 2019 实现 Arboskin Pavilion(ITKE)建模教程
  2. Servlet 的线程安全问题
  3. 配置MacBook Pro新电脑,用于前端开发
  4. 【javascript常见面试题】常见前端面试题及答案
  5. LeetCode | Unique Paths I,II
  6. 微软工程院 硕士_硕士在中科院工作真的那么惨吗?
  7. 联想手机刷机了数据丢失了怎么办?
  8. 全球与中国对羟基苯基丙酸市场深度研究分析报告
  9. “3D打印”的魔法时代还有多远?
  10. Python和ArcGIS自动化制图完全指南(二):制作mxd模板