欢迎光临
专业期货策略平台

量化绝技,当“凯特纳通道”策略遇上三级跟踪止盈

前言

“凯特纳通道”策略,可以说是一个比较简单而经典的趋势策略。该策略以一条简单均线为中轨,并在其基础上增减N倍ATR形成上下轨。

当突破上轨时开多,跌破下轨时开空。

如下图所示:

但是,该策略的退出方法却没有采用跟踪止盈,而是用中轨或海龟通道平仓。当作者加载到15分钟周期上时,策略表现的一塌糊涂!

如下图所示:

因此,作者打算对该策略进行改进,在原策略的基础上增加3项功能,其中比较重要的一项就是k线波幅“三级跟踪止盈”方法。

“凯特纳通道”策略改进三连!

首先来说说,为什么要改进。

让作者想对这个策略改进的原因主要是,当我加载这个原版策略到螺纹钢期货指数15分钟周期上的回测收益非常糟糕。

作者仔细观察后发现,造成这种结果的原因主要有以下:

1.参数太小。

由于所用的k线周期较小,原策略参数是用于日线的,如果将日线参数应用在15分钟上是不科学的。

因此,作者扩大了一个均线的周期参数,原策略是10,现改成60。

2.没有采用跟踪止盈。

该原因,也是造成交易次数猛增及盈亏比和胜率较低的原因。一个大的波段分几次来吃掉,期间就增加了滑点风险和手续费,使得整个策略对滑点手续费比较敏感。

因此,作者将加入最近的所开发出的k线波幅加速三级跟踪止盈算法。

3.修改ATR的周期参数。

我们都知道,凯特纳通道上轨下轨是由中轨+/-N*ATR。现在作者就将ATR周期参数修改成常见的参数14。

小结。

以上就是关于凯特纳通道改进的三个地方。核心在于增加周期参数,跟踪止盈及修改ATR的周期参数。

“凯特纳通道”策略遇上三级跟踪止盈。

1.计算开仓所需要的数值。

其中:

(1)修改ATR的周期参数。AvgRange所用的参数原来是length(10)参数,现在改成14。

KCU = AvgVal + AvgRange*Constt; // 计算通道上轨=均线+1.2倍的14周期真实波动值

KCL = AvgVal – AvgRange*Constt; // 计算通道下轨=均线-1.2倍的14周期真实波动值

(2)将下面的length周期改为60。

AvgVal = Average(Price,Length); // 计算均线 默认10周期

2.增加k线波幅加速三级跟踪止盈算法。

如下图所示:

三级跟踪止盈基本配置:

(1)ATRLength,ATR指标计算周期。

(2)Acceleration,跟踪止盈的初始速度,并按照设定的盈利级别,逐渐降低该速度。

(3)FirstBarMultp,初始止损倍数。如果开多仓,初始止损=最低价-N倍ATR。

3.改进前后效果对比。螺纹钢指数15分钟周期。

(1)改进前。

量化绝技,当“凯特纳通道”策略遇上三级跟踪止盈

信号:

量化绝技,当“凯特纳通道”策略遇上三级跟踪止盈

(2)改进后。

信号:

小结。

以上就是关于凯特纳策略改进的代码实现。扩大周期参数、增加跟踪止盈都能够很好的减少该策略的交易次数,从而提升策略的胜率和盈亏比。

最后

改进策略是比较重要的一项基本技能,因为你的策略开发出来后,第一次回测基本上是不理想的。因此,就要求我们将从多个方面去考虑并改善、提高它的性能。

例如:可以从策略框架和品种过滤两个大方向去改进。重点不是策略本身,而是文章中的改进方法!!!

文章及策略代码仅供学习,切勿直接实盘。

0 0 vote
Article Rating
Click to rate this post!
[Total: 0 Average: 0]
赞(5) 打赏
未经允许不得转载:A期客 » 量化绝技,当“凯特纳通道”策略遇上三级跟踪止盈
订阅
提醒
guest
0 评论
Inline Feedbacks
View all comments

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

0
Would love your thoughts, please comment.x
()
x