龙听期货论坛's Archiver

龙听 发表于 2021-7-29 08:36

Multicharts用ATR进行棘轮移动止盈模块【ATR ratchet :盈利达到N*ATR后以10日低点+持仓bar数*M*ATR做为止盈出场】

下面介绍一个用ATR进行移动止损的方法ATR Ratchet (by Chuck LeBeau)。

  (ATR:每天平均波动,欧元大概是80-150,GBP大概是100-200.和常用的%数不同,这个数值在激烈不同的市场时期波动会变化)

  基本思想是非常简单的,我们先选定一个合理的起始价格,然后每天加某一倍数的ATR,得到一个跟踪止损点。由该方法生成的止损点不仅能随着时间的增加不断上移而且同时也能适应市场波动性增减。与我们以前采用的由抛物转向指标得到的止损点相比,其优点在于:使用ATR Ratchet,我们能更自由的选择起始价格和增减速度。此外我们还发现基于ATR的止损点能更快更准确的反映波动性变化,从而使我们能比传统的跟踪止损法锁定更多的利润。

  例如,当我们1ATR以上的盈利目标实现时,我们选择一个近期低点(比如最近十天的最低价)作为起始价格,然后根据我们持仓天数每天将最低价增加零点几倍的ATR(比如0.05ATR)。如果我们已经持有仓位15天了,那么我们把0.05ATR乘以15天,然后将其乘积0.75ATR加到起始价位上。20天后,我们将把1.0ATR(0.05乘以20天)加到最近十天的最低价上。

  该策略不象抛物转向指标,ATR Ratchet能非常容易的在我们交易过程中的任何时候使用。我们可以在进入交易的第一天就开始使用这种止损策略,也可以等发生某些有利事件后再使用止赢 策略。我建议等到实现盈利后再使用该止损策略,原因正如你我都看到的那样,这种止损点会在有利的市场环境中迅速向上移动。

  波动性增加会使止损点上移速度增加,这是ATR Ratchet策略的重要特征。在一个快速移动的市场中,你会看到许多缺口和长长的 K线图。市场趋势加速时市场波动性也会增加,因而在我们盈利迅速增加时,ATR也会迅速增加。由于我们要往起始价格中增加一定数量的ATR,所以ATR的每一次增加都会使止损点突然向上跳跃,止损点就变得更靠近入场后的最高价。如果我们已经持有仓位40天,那么ATR的任何增加都会对止损点产生40倍的影响。这正是我们想要的。我们发现,当市场给我们丰盛的盈利时,ATR Ratchet止损点也会令人惊讶的迅速上移从而很好的为我们锁定浮动盈利。

  这个方法有以下几个参数:

  起始价格:

  ATR Ratchet的一个非常好的特性是我们可以在任何我们中意的地方设置起始价格。例如我们可以象抛物转向指标一样在一些重要的低点设置起始价格,我们还可以在摆动区间的底部,或支撑水平,或某某通道得底部,或者低于入场点一定数量ATR的地方设置起始价格。如果我们等到账面产生数量可观的盈利后,我们可以把起始价格设置在甚至是高于入场点的地方。这样就可以和自己所使用的交易系统配合.

  ATR Ratchet的启动时机:

  优先采用基于时间而不是价格的参数(或者是时间和价格的参数组合)来启用上述的离市策略。例如,我们启用离市当且仅当一项交易开仓至少十个交易日之后并且获利超过一个ATR的幅度。总体的感觉,只有在交易达到了相当大规模的盈利目标之后才是ATR Ratchet启动的最佳时机。这看起来是一种很好的获利平仓策略,但需注意的是如果在一次交易获利之前就启动Ratchet有可能让你过早出局而丧失此次机会。

  如上所述,ATR Ratchet最引人入胜的一点在于它的适用性和灵活性。下面介绍怎么启用Ratchet策略的另一种思路。我们可以在15根条形图之后再启用ATRRatchet而不必计算这前期的15步运作过程。在编制程序代码时,我们可以设置在交易的第15根条形图之后再启用Ratchet而用交易产生后的条形图数量减去10再乘以ATR的单位值,或者用交易产生后的天数先除以某一个常数后再乘以ATR的单位值。这种方法将简化Ratchet的计算程序,尤其是在交易初期首次启用离市策略的时候。好好琢磨琢磨ATRRatchet,看看你能够由此产生一些什么样的创造性思维。

  ATRRatchet每天移动量:

  刚开始研究使用的ATRRatchet每天移动量经测试表明太大了。对于我们的交易时间框架来说,太大的ATRRatchet每天移动量(百分之几的ATR)会让我们的止损点向上移动的过分快。经过一段时间的试验和失败后我们发现用我们的持仓天数乘以ATRRatchet每天移动量0.05~0.10ATR(5%至10%ATR(20天期))能让止损点上移的速度比你想象的要快得多。

  作为该策略的变通方法,我们可以在最初使用较小的ATRRatchet每天移动量,然后一旦我们获得很大的浮动盈利,我们就可以使用较大的ATRRatchet每天移动量。

  ATR周期长度:

  正如我们在以前使用ATR过程中发现的,我们用来计算ATR的时间周期长度是非常重要的。如果我们希望ATR能快速反应市场短期波动区间的变化,我们可以使用较短期的均值(比如4止5根K线);如果我们希望一个更加平滑的ATR,不会对一两天的异常波动敏感,我们可以使用长期均值(20至50根K线)。我在工作中使用的ATR大部分是20天均值,除非我有充分理由希望ATR变得更敏感或更不敏感。

  总结:ATRRatchet做为一种赢利工具,我们尤其喜欢它带给我们的灵活性本。

龙听 发表于 2021-7-31 11:45

[b]确定一下要素:[/b]

1、启运ATR Ratchet 棘轮止盈的条件:(1)、盈利已经达到1个ATR。

2、然后确定起始价格:盈利达到1个ATR那一个bar时10周期的低点,即从达到1个ATR盈利时当天BAR往前数9个BAR,在这10个BAR内的最低点做为起始价格。

3、根据持仓天数N来乘一个基础的ATR增加量(M:0.05)若是持仓有15个 BAR,则ATR止盈需要抬升的数值是M*N即 15 个bar * 0.05个ATR增量即 = 0.75个ATR。

4、如何超过maxperiod(20)周期仍然没有盈利达到1个atr,则清仓。

龙听 发表于 2021-7-31 12:01

ATR-RATCHET-LONG模块:
**** Hidden Message *****

龙听 发表于 2021-7-31 13:16

做多平仓的效果:
[attach]28537[/attach]

龙听 发表于 2021-7-31 13:22

结论:

1、参数设置不合理。

2、棘轮止盈几乎没有发挥效果。

3、需要重新设置参数。
现如下设置:

[attach]28538[/attach]


修参数后的效果:(棘轮发生作用了)。

[attach]28539[/attach]

龙听 发表于 2021-7-31 13:58

[attach]28540[/attach]
最后修定主要侧重于止盈线显示效果。

平仓源码没有变动。

龙听 发表于 2021-7-31 13:59

最后定稿:
ATR-RATCHET 多单模块:

**** Hidden Message *****


ATR-RATCHET空单模块:

**** Hidden Message *****

龙听 发表于 2021-7-31 14:02

最后参数设置如下:
[attach]28541[/attach]

这是在螺纹上面的,大家对于自己的喜欢品种可以根据自己的情况进行修改。并没有一个一定好或不好的参数。

下次了 发表于 2021-8-1 02:53

谢谢

未来货 发表于 2021-8-2 09:12

Thank you very much

楊士 发表于 2022-10-27 20:03

感謝您的分享

公孙左吾 发表于 2022-11-2 11:19

学习

大鸟怪 发表于 2023-6-27 16:09

谢谢老师

小天使 发表于 2023-6-28 06:49

Thank you very much

龙听小虎 发表于 2023-11-5 21:41

{:86:}

阳光灿烂 发表于 2024-9-14 11:03

感谢楼主的分享,认真学习了

千日醇 发表于 2024-10-3 10:15

感謝您的分享

页: [1]