【CTA系列】复合中短周期双均线策略

本篇文章是基于研究报告的复现作品,旨在记录个人的学习过程和复现过程中的一些思路。

感谢中信期货研究员前辈的宝贵思路。

一、策略简介

1.双均线策略

均线是最经典的传统技术指 标之一 ,最早由美国投资专家Joseph E.Granville于 20 世纪中期提出,代表了过去一个时间周期内的平 均走势。双均线策略则是运用两条不同周期的移动平均线的相对大小,判断买 进与卖出时机的策略,具体进场规则为短周期均线上穿长周期均线时做多,短周期均线下穿长周期均线时做多。
2.Aberration 策略
Aberration 策略由 Keith Fitschen 于 1986 年发明,在进场时使用了布林带 通道,是布林带系统的突破式应用。布林带通道由三条通道线组成,中轨为一 定周期的移动均线,上下轨在中轨的基础上加减一定的标准差形成。当价格向上突破上轨时做多,向下突破下轨时做空。
3.MACD 结合均线策略
MACD 指标和 SMA 一样都使用了均线的概念,但MACD使用指数式递减加权来计算均值,即在移动平均线的基础上按照时间进行加权,越靠近当前日期的价格对未来价格影响越大,赋予更大的权重,越远离当前日期价格,赋予越小的权重,可以进一步体现价格趋势变化的快慢。当短期均值>长期均值,且MACDDiff>0,且 DIF>0,且当前价>短均线时做多;当短期均值<长期均值,且MACDDiff<0,且 DIF<0,且当前价<短均线时做空。
4.唐奇安结合均线策略
唐奇安通道的上下轨由前一个周期内的最大值和最小值形成,极易抓住单边行情。当价格向上突破唐奇安上轨,且短期均值>长期均值时做多,当价格向下突破唐安奇下轨且短期均值<长期均值时做空。

二、策略回测

1.回测标的
采用螺纹钢与豆油连续主力合约15分钟bar数据,时间从2020-01-03 14:30:00至2022-11-04 23:00:00。
回测的初始金额为200万元,手续费设置为每次成交金额的0.0001。
所有策略的出场规则都摒弃了原本传统的信号反转出场,调整为盈亏 比率达到固定比率的止盈止损出场,止盈:止损固定为 4:1。
2.SMA策略分析
双均线策略已在第一部分有所介绍,具体进场规则为短均线上穿长均线形 成金叉做多,短均线下穿长均线形成死叉做空,盈亏比率达到固定数值时止盈止损出场。单品种回测下来,回测结果差别很大。从图中可以看出,螺纹钢合约在SMA策略上的表现要优于豆油合约。
图 2.1 SMA策略回测净值

 

表 2.1 SMA策略指标计算结果

虽然两个合约在回测期间均取得了较高的收益,但从夏普比率与最大回测指标来看,螺纹钢合约显然在SMA策略上表现更优,其在取得较高收益的同时回测更小。

3.Aberration 策略分析

Aberration 策略由 Keith Fitschen 于 1986 年发明,在进场时使用了布林带通道,是布林带系统的突破式应用。布林带通道由三条通道线组成,中轨为一 定周期的移动均线,上下轨在中轨的基础上加减一定的标准差形成。当价格向 上突破上轨时做多,向下突破下轨时做空。在均线的基础上叠加标准差可以在 震荡行情中减少频繁开仓止损的情况,对双均线策略进行优化。从回测结果来看,豆油合约的净值表现要优于螺纹钢合约。与前文的SMA策略相比,螺纹钢与豆油的净值表现都出现了较大幅度的下降,这里思考原因,由于豆油合约以及螺纹钢合约在回测周期内的收盘价走势并未表现出过于明显的震荡行情,因此导致信号的准确度不高。
图 2.2 Aberration 策略回测净值

 

图 2.3 合约收盘价走势

 

表2.2  Aberration 策略指标计算结果

 4.MACD 结合均线策略

MACD由快速线 DIF, 慢速线 DEA和柱状图MACDDiff组成。在进场规则的设定中,将原本突破时机的判断方式更改为多种状态同时满足,来缓解均线的滞后性。从回测结果来看,螺纹钢合约的表现要由于豆油合约,且单一合约的表现要明显优于Aberration 策略,可以看出将信号触发条件进行更为严格的要求后,净值的表现得到了提升。
图2.4 MACD 结合均线策略回测净值

 

表 2.3 MACD 结合均线策略指标计算结果

从指标计算结果可以看出,螺纹钢合约的收益率相比于SMA策略而言更高,且最大回撤更小,因此将MACD策略结合SMA策略后,通过叠加 MACD 指标同时放宽双均线的进场要求,可以增加交易频次,增加盈利点,从提升总收益率这个角度优化双均线策略。

5.唐奇安结合均线策略

唐奇安通道指标由 Richard Donchian 发明,在 1983 年被推举为首届“最佳 获利奖”,著名的海龟策略在进场时就是使用了唐奇安通道。唐奇安通道的上下 轨由前一个周期内的最大值和最小值形成,极易抓住单边行情。但在短周期内 单独使用唐奇安通道对参数周期依赖性严重,信号触发极不稳定。两者叠加使 用后,双均线能增强原本唐奇安进场信号的稳定性,唐奇安通道能弥补双均线指标滞后的缺点,有如虎添翼的作用。
从回测结果来看,虽然螺纹钢与豆油合约在周期内取得了正向收益,但是 唐奇安结合均线策略的表现明显不如SMA策略。这里思考,可能是由于 唐奇安通道指标的计算周期数值设置不同造成的,后续可以研究策略收益与周期窗口的敏感性分析。
图 2.5 唐奇安结合均线策略回测净值

表 2.4  唐奇安结合均线策略指标计算结果

 

6.策略综合对比

将上述四个策略在两个品种合约下的回测数据进行同一对比。从净值曲线来看,豆油合约与螺纹钢合约在相同策略下的表现不尽相同,但是两个品种中,表现最优的策略均为MACD策略结合SMA策略。

图 2.6策略回测净值

 

 表 2.5 豆油合约策略指标计算结果

 表 2.6 螺纹钢合约策略指标计算结果

理论上分析,MACD 结合均线策略和唐奇安结合均线策略主要是从改善均线滞后性这 一角度进行优化的,改良后的策略能更快地抓住单边行情,从而提高策略收益。但是从回测的情况来看,这两个策略的实际表现却出现明显分化,MACD 结合均线策略收益表现明显由于唐奇安结合均线策略的收益表现,这可能与唐奇安通道的计算周期有关,也是后续进一步研究的内容。
参考资料:
期货择时系列(二): 复合中短周期双均线策略简览.中信期货

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/59461.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

马斯克收购 Twitter:把你们的代码都打印出来

转自&#xff1a;量子位 | 公众号 QbitAI 来&#xff0c;将付费服务涨价3倍&#xff0c;一周干不好就卷铺盖走人&#xff01; 没想到&#xff0c;马斯克对推特员工下的第一个“最后通牒”&#xff0c;竟来得这么快。 既压榨了员工&#xff0c;又是在为公司谋利&#xff0c;这一…

马斯克想退居 Twitter 二线,发起“是否该卸任”投票,近 6 成网友大力支持!...

认真对待你的愿望&#xff0c;也许它会实现。 整理 | 苏宓 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 久经争议&#xff0c;或许连马斯克自己都陷入了迷茫之中。当地时间 12 月 19 日 7:20&#xff0c;马斯克做了一件令人意想不到的举动&#xff0c;他将自己…

罕见!嘲讽 Twitter 被裁员工后,马斯克公开道歉

整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 当初马斯克收购 Twitter 时&#xff0c;我们认为他简直是“灭霸式”裁员。但现在看来&#xff0c;这个说法可能并不准确——他比灭霸还狠。接管 Twitter 还不到 5 个月&#xff0c;马斯克已裁员近 75…

腾讯 pcg 移动端开发 春招 一+二+三+hr面(已oc)月薪25K

3.31日早上电话突击面试&#xff0c;当时我还在睡觉&#xff0c;迷糊中接到了电话&#xff0c;一开始以为他只是和我确认时间&#xff0c;没想到问完信息之后直接开始问问题了&#xff0c;我当时没反应过来&#xff0c;说我现在不太方便&#xff0c;等20分钟再电话面的。我没想…

牛!又一顶级大厂开招.NET,5年35k!

继腾讯阿里百度京东华为招.NET Core后&#xff0c;又一顶级大厂开招.NET Core了&#xff1a;美团上海总部&#xff0c;住宿业务线别样红业务部招.NET开发&#xff0c;25~35k&#xff0c;具体参见【招聘(上海)】美团酒店招聘 .NET 高级开发。大厂遥不可及的认知该放下了&#xf…

【A卡,Windows】stable diffusion webui下载安装避坑指南

观前提醒 本文内容都是本人亲身经历的&#xff0c;一个一个安装下载测试所感&#xff0c;当然如果你更想用傻瓜式集成包的&#xff0c;那还是跳过这篇文章吧。 当然我不推荐这篇文章的操作&#xff0c;因为我用了差不多1h才有一副图&#xff0c;有N卡&#xff0c;就用N卡&…

疑似通过GPT3.5白嫖GPT4

前言 仅供参考&#xff1a; 通过测试&#xff0c;发现使用特定的提示&#xff08;prompt&#xff09;可能会让chatGPT-3.5具备chatGPT-4的能力。 怀疑可能是早版本的GPT-4 测试过程 测试内容 # 叔叔把二叔叔带到三叔叔家&#xff0c;说四叔叔被五叔叔骗到六叔叔家&#xff0…

第三方登录的实现

业内现在第三方注册的流程一般是什么样的&#xff1f; 前端通过授权方式获取第三方账号对应的unionId或openId&#xff0c;把它传给应用服务器&#xff0c;服务器判断这个第三方id有没有注册过如果没有就创建一个对应的新账号。 问题是&#xff0c;按照上面这种流程&#xff0…

第三方登录:QQ登录接入指南

现在互联网应用一般都会接入QQ登录。但是在接入QQ登录的时候就有点犯晕了。因为摆在他们面前的有2个平台。 一个是 腾讯开放平台&#xff0c;一个是 QQ互联。 QQ互联&#xff08;QQ开放平台&#xff09; 如果只是单纯的想要QQ授权登录、分享&#xff0c;而不需要进入腾讯应用…

第三方登录实现

第三方登录 自建了一个网站&#xff0c;想要增加一个登录入口&#xff0c;但是自己实现登录又很麻烦&#xff0c; 那么就可以尝试使用第三方登录的方式。 谈到第三方登录就不得不提到OAuth&#xff0c;OAuth是Open Authorization的简写,它就是一种授权机制。数据的所有者告诉…

登录等第三方认证-outh2原理与分析

看了很多关于outh2应用文章&#xff0c;介绍都比较晦涩难懂&#xff0c;同时没有一个实际案例说明&#xff0c; 下面&#xff0c;我将使用securityouth2简单案例讲解&#xff0c;并通过微信认证流程解释为什么这种实现方式是最佳的。 1. Security实现Outh2登录 1.1 项目环境搭…

论文管理系统(登录功能)

目录 一、后端部分 1.1 实体类 1.2 UserMapper类 1.3 Service层 接口 实现类 1.4 controller层 1.5 拦截器 二、前端部分 效果图 源码如下 代码讲解 准备工作和数据库都已经准备好了,接下来我们来写登录功能,登录功能我们通过mybatisplus来码写,所以不需要在UserMapper.…

行人仿真仿而不真——基于Unity将外部仿真数据可视化

0 前言 Unity作为一款生态成熟、扩展性强、学习成本较低的三维引擎&#xff0c;近年来受到各领域研究者的青睐。具体到行人仿真领域&#xff0c;相较于传统的C/Python平台&#xff0c;Unity在效果呈现及数据交互方面具备无可比拟的优势&#xff0c;国外开发者基于Unity已经实现…

教你怎样用Python画了一棵圣诞树,快来学习

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。 以下文章来源于IT入门 分享给大家一篇文章&#xff0c;教你怎样用Python画了一棵圣诞树&#xff0c;快来学习。 如何用Python画一个圣诞树呢&#xff1f; 最简单&…

分享10个Python绘制圣诞树的源码,拿来即用

大家好&#xff0c;我是丁小杰。 圣诞节就要到了&#xff0c;作为一个的“程序猿”&#xff0c;怎么能够少得了绘制圣诞树呢&#xff0c;今天就和大家分享 10 个圣诞树的绘制源码&#xff0c;拿来即用&#xff01; 搞笑版 height 5 stars 1 for i in range(height):print((…

Python代码画圣诞树--turtle绘图

效果图 代码如下 import turtle as t import random import pygame import threading import time import tkinter as tkt.screensize(bgblack) # 定义背景颜色&#xff0c;可以自己换颜色def loving_heart(r):l 2 * rt.left(45)t.forward(l)t.circle(r, 180)t.right(90)t.c…

教你用 python 画圣诞树

圣诞节快到了&#xff0c;教你用 python 画圣诞树&#xff0c;送给你女朋友&#xff0c;博主给了三个版本的圣诞树。 博主没有下载专门写 python 的 pycharm&#xff0c;用 VSCode 替代&#xff0c;因为 VSCode 也可以运行 python 代码。 还需要下载一个 python 运行环境&…

用python画圣诞树-使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例

今天为大家介绍几个Python"装逼”实例代码&#xff0c;python绘制樱花、玫瑰、圣诞树代码实例&#xff0c;主要使用了turtle库 Python绘制樱花代码实例 动态生成樱花 效果图&#xff08;这个是动态的&#xff09;&#xff1a; 实现代码 import turtle as T import ra…

【圣诞快乐】如何用代码画一颗圣诞树?

文章目录 一、前言二、创意角度三、java swing版 效果展示四、java swing版 实现步骤&代码五、springboot项目banner版 效果展示六、springboot项目banner版 实现步骤七、 linux shell界面打印版 效果展示八、 linux shell界面打印版 实现步骤 一、前言 一年一度的圣诞节来…

美美的圣诞树画出来-CoCube

2022年圣诞节到来啦&#xff0c;很高兴这次我们又能一起度过~ CSDN诚邀各位技术er分享关于圣诞节的各种技术创意&#xff0c;展现你与众不同的精彩&#xff01;参与本次投稿即可获得【话题达人】勋章【圣诞快乐】定制勋章&#xff08;1年1次&#xff0c;错过要等下一年喔&#…