English
中文
日本語
ID
Vietnam
한국어
Filipino
 
   学院导航

Expert Advisor 策略设计:外汇交易中订单出场技巧

Expert Advisor Strategy Design: Exit Techniques

在此 Expert Advisor 策略设计文章中,学习如何使用 EA 构建准确的退出技术和设置追踪止损、止损和获利订单。


“每场战斗都在战斗之前就已经赢了……”


-孙子兵法


到目前为止,我们一直在测试我们的趋势,遵循 MACross 策略,退出位置与进入位置相反:


oppositeclose=true // 在相反的信号上关闭订单


通常这是设计和测试良好系统的最简单直接的方法。 你知道你的进入机制是更强大的,如果也可以作为一个好的退出。 大多数趋势跟踪策略受益于一直在市场中,随着每个信号反转。 此外,我们始终要警惕过度优化,避免其风险的方法之一是使策略尽可能简单——不要过多不必要地积累和混合指标、信号、进入和退出技术。 与退出方法相反的信号是保持策略简单且不易出现曲线拟合的一种方法。


然而,有多种原因需要使用退出规则而不仅仅是头寸反转。 首先,您可能想以利润目标剥头皮交易市场。 其次,有时您希望策略是平的,而不是多头或空头,例如当价格收盘低于短期移动平均线且仍高于长期移动平均线时退出。 第三,如果您正在编写一个基于多个必须一致的指标的策略,您可能希望在其中一个或两个指标上退出,等待所有指标都一致后再进入。


除了作为退出的相反信号之外的退出更适合于突破和逆趋势策略而不是趋势跟踪策略。 就其本质而言,这些策略是短期的——并且需要额外的退出,以便在他们的特定情况结束之前让他们获利。 使用像 MACross 这样的趋势跟踪策略,我们必须确保如果退出让我们退出市场,我们有办法重新进入潜在的大动作。 有时,除了相反的收盘价之外,使用退出信号会阻止及时进入市场,并且该策略会错过大动作。


提示

一个指标的任何良好设置或进入技术都可以作为完全不同的基于指标的策略的退出技术进行试验。 例如,如果您发现了一个很棒的 MACross 策略,它的反向入场点可以用作另一个趋势跟踪策略(例如抛物线)的出场点。 然而,请预先警告,因为这种混合搭配方法很可能比原始指标的停止和反转更糟糕。 根据我的经验,每个指标都有一个稍微独特的遗传行为,破坏了大多数杂交育种的尝试,产生的杂交后代比原来的要丑得多。 话虽这么说,做实验并没有坏处


一般止损:止损、获利、追踪止损、追踪利润和盈亏平衡止损

您还应该尝试所有一般类型的退出:止损、获利、追踪止损、追踪利润和盈亏平衡。 所有这些形式的止损通常都以点、美元或百分比为单位进行校准,这些指标要么是预先固定的,要么是根据平均真实范围 (ATR) 动态变化的。 优化引擎当然可以帮助您校准正确的形式和价值作为止损和获利。 它还可以帮助您确定适当的追踪止损和盈亏平衡或根本没有。


所有一般止损的规则是它们不得干扰市场行为。 如果在修正行动中过早触及止损,或者在行动走完全程之前触发利润目标/追踪止损,那么您将干扰该策略的设计运作方式。 必须记住,使用每种类型的止损都有明显的优点和缺点——您必须权衡每一种止损以决定是否使用它们。


止损

止损是止损之王,因为它是用来保护资金免受不利市场走势影响的。 止损是交易者卖出货币并承担交易损失的价格。 也许下一个入场点会在触及止损之前反转头寸,但有时不会——而且您希望确保在任何一笔交易损失太多之前退出。 在我看来,如果策略不是网格或鞅,它只能从止损中获益。


止损通常以点数计算,它有助于确定您愿意在任何一笔交易中承担风险的最大金额。 例如,假设您不想在任何一笔交易中损失超过 2% 的账户,而您的账户规模为 10,000 美元。 这意味着您不想损失超过 200 美元,因此您将交易 0.1 手,止损为 200点子。


虽然使用止损有很多优点,但缺点是止损价格可能会因货币价格的短期波动而被激活。 关键是选择允许货币波动的止损点,同时尽可能限制下行风险。


通常,确定止损大小的最佳方法是根据您的策略对其进行优化。 在我所有的 MACross 实验中,我总是有 150 点的止损,因为我有一个有根据的猜测,这样的止损最适合 H4 时间框架上的趋势跟踪策略。 有根据的猜测是最好的起点,但您必须看看它是否经得起考验。


让我们采用迄今为止最好的 MACross 策略之一,即 25-250 SMACross (H4) 并将止损从 0(无止损)优化到 500,步长为 50,如您在此处所见:

最佳结果在这里:

如您所见,150 点止损的猜测是正确的。 它为该策略提供了恰到好处的喘息空间,以赚取 7300 美元。 所有其他止损结果相当于业绩的一半或三分之一。


从中受益

止盈是交易者设定价格目标的一种直接方式,在该价格目标下,他们的头寸将自动平仓,以便交易者可以在交易中获利。 这样做的好处是它提出了一种合理的锁定利润的方法。


利润目标的缺点是可能会在交易结束之前过早结束交易,因此您会错失潜在利润。 如果你任意设定一个利润目标数字,那么它总是会打乱你的策略。 确定利润目标的需求和价值的最佳方法是通过优化。


让我们采用我迄今为止创建的最佳 MACross 策略之一,即 25-250 SMACross (H4),并将利润目标从 0(无止损)优化到 1000,步长为 50:

The top 10 results are here:

如您所见,没有止盈 (takeprofit=0) 是最重要的优化。 因为它是 H4 时间框架上的趋势跟踪策略,所以必须给予它捕捉 1000+ 点移动的自由,而不是被过早的利润目标所束缚。 事实上,有趣的是,所有低于 600 点的止盈都会导致负面表现。 如果该策略如此高度依赖移动自由度(如本利润目标优化所示),则预示着它不会善待任何形式的过早更改,例如追踪止损、追踪利润或盈亏平衡。


追踪止损

追踪止损是一种在交易方向上不断自我调整 n 点以帮助锁定利润的止损。 理想的止损是允许有足够的“移动空间”并因此允许利润运行的止损,当然最终当交易对你不利时让你退出。


大多数标准追踪止损会在价格每上涨 x 点时自动调整追踪止损 n 点。 这是非常基本的,可能不是很有用。


Funyoo 的模板为试车站提供了一个重要的多功能性提升。 以下是 EA 属性选项卡中关于追踪止损的主要变量:

Funyoo 的追踪止损代码有许多不同的组合,了解其中至少五个是很有用的:


Trailing mode=0, trailingstart=0, and trailing stop> 0


Trailing mode=0,trailingstart>0,trailingsto>0


Trailing mode=1, stoploss=0, trailingstart=0 and trailing stop>0


Trailing mode=1,stoploss=0,trailingstart>0,trailingstop>0


Trailing mode=1,stoploss>0,trailingstart>0,trailingstop>0


我们将简要描述每一个。


组合 #1:假设我们有 trailingmode=0、trailingstart=0 和 trailingstop = 15。这将立即使止损为 15 点(从入场开始),无论原始止损大小如何。 从那里开始,每次入场价格上涨时,止损将自动增加(在多头头寸上)。 这是追踪止损的常见形式——但却是最不有效的一种。


组合 #2:假设我们有 trailingmode=0、trailingstart=40 和 trailingstop=15。 如果市场上涨 40,它保护 30(40-15),并且从该点开始随着市场不断上涨。 这个组合可能是五个中最有效的。


组合 #3:假设我们有 trailingmode=1、stoploss=0 和 trailingstop=15。 这将立即使止损为入场 15 点。 从那里开始,价格每增加 15 个点,止损将自动增加(在多头头寸上)。 因此,尾随止损作为此组合的步进阈值,而不是组合 #1 的持续增加。 该策略将在头寸上涨 15 点时实现盈亏平衡,并在头寸上涨 30 点时保护 15 点,等等。


组合 #4:假设我们有 trailingmode=1、stoploss=0、trailingstart=40 和 trailingstop=15。 这里价格没有变化,除非市场将其 trailingstart 大小翻倍。 如果市场上涨 80,它保护 40,然后每增加 15 点,它又保护 15 点。


组合 #5:假设我们有 trailingmode=1、stoploss = 100、trailingstart=40 和 trailingstop=15。 如果市场上涨 40,则它会将原始止损向上移动跟踪止损的值或 15 点,因此止损现在是 85 而不是 100 (100-15)。 每增加 15 点,止损就会按比例增加。 盈亏平衡点在市场移动了止损点加上尾随起点的距离(100+40 = 140 点)后达到。 当价格移动到止损加上 trailingstart 和 trailingstop (100+40+15=155) 的距离时,15 个点的利润得到保护。


借助优化的力量,您可以尝试所有组合。


在检查了所有组合之后,combo2 可能是最好的。 它具有在启动追踪止损之前必须达到的经典利润阈值。 它也是唯一一个保持原始止损金额不变的工具。


追踪止损背后的想法是,它允许您让利润运行,同时保证至少获得一些已实现的收益。


追踪止损的缺点通常是,无论选择哪种组合,或者变量优化得如何,追踪止损都会破坏大多数系统的性能。 货币通常具有广泛的交易范围,这使得追踪止损的使用存在问题。 大范围和频繁的微收缩触及追踪止损并阻止该策略运行完整过程。 您会注意到,市场经常回撤至追踪止损,然后发现第二波上涨至更高的价格,而您过早的追踪止损阻止了您获利。 追踪止损的最佳用途可能是短期或剥头皮策略。


对于像 H4 时间框架上的 MACross 这样的中期趋势跟踪策略,每个追踪止损组合都会破坏其性能。


追踪利润

追踪利润是追踪止损的反向变化。 大多数追踪止损组合需要价格在启动和向上移动止损之前增加价值。 相比之下,尾随利润需要价格与头寸走势相反——并且它会在价格向南移动的每个点间隔内将利润目标修改得更低。


Funyoo 的模板极大地促进了试车——多功能性。

以下是关于追踪止损可以操纵的主要变量:


Funyoo 的 trailingprofit 代码有几个值得了解的组合:


Trailingstart=0 且 trailingprofit> 0


Trailingstart > 0 和 trailingprofit > 0


组合 #1:假设我们有 trailingstart=0 和 trailingprofit=15。 这将立即使止盈为 15 点(从进场开始),无论原始止盈如何。 从那里开始,每次入场价格下跌时,止盈将自动降低(在多头头寸上)。


组合 #2:假设我们在多头头寸上有一个 trailingstart=40 和 trailingstart=15。 这意味着如果市场下跌 40 点或更多,则将连续调整的止盈 15 添加到市场低点。 即时ce,如果您在 1.2813 做多 EURUSD,并且跌至 1.2772(或 40 点),则止盈将在 1.2787(低点 15 点)处激活。


trailingprofit 是一种非常罕见的退出方法,应谨慎使用。 我在剥头皮系统上看到过它,这可能是它更有潜力的地方。


除了回溯测试之外,请注意在真实模拟账户上测试追踪止损和追踪利润功能,因为 MT4 策略测试器难以描绘依赖于不断更新止损或获利的回测系统的准确性。


盈亏平衡点

盈亏平衡止损在预定义的水平开始,然后将止损转移到盈亏平衡点加上可变点数,例如 1。它的目的是让您的利润运行,同时保证至少您不会亏钱 在逆转。 从某种意义上说,盈亏平衡点是有利的,如果市场以 x 点对您有利,那么止损将调整至盈亏平衡点,您将仅在获利的风险下进行交易。


以下是关于盈亏平衡止损可以操纵的主要变量:


盈亏平衡收益表示在止损转移到盈亏平衡之前您希望获利的预定水平。 盈亏平衡变量允许您将 0 表示盈亏平衡,或任何其他数字,正数表示盈亏平衡 + n 点利润,负数表示盈亏平衡 - n 点亏损。 我喜欢你能够调整这个盈亏平衡收益和盈亏平衡金额,因为它允许你玩更多的可能性,而不仅仅是简单的盈亏平衡收益。


因为盈亏平衡止损设置了一个预先确定的水平,而不是像追踪止损那样不断向上调整止损,所以它能更好地为交易提供更多的喘息空间。 它可以像追踪止损一样保护利润,但不会经常受到打击。


盈亏平衡的问题在于,如果盈亏平衡收益设置得较低,您的止损可能会立即被击中。 除非你使用剥头皮策略,否则我会确保盈亏平衡收益不少于 30。你应该准备好为你的特定策略优化盈亏平衡变量以找到合适的。


然而,无论盈亏平衡参数优化得多么好,盈亏平衡止损很可能会影响策略的性能。 尽管它本质上比让策略呼吸的追踪止损更好,因为它是静态的而不是自动调整的,但它仍然限制了策略。 范围广泛且频繁的微观合约可能会触及盈亏平衡点并阻止该策略运行其真正的路线。 你可能认为你在保护你的策略,而实际上你可能这样做弊大于利。 盈亏平衡的最佳用途是短期或剥头皮策略。


动态止损

确定一般止损的另一种方法是在平均真实范围 (ATR) 上设置动态止损。 ATR 有助于确定交易区间的平均大小。 换句话说,它表明市场的波动性以及它从一个点移动到另一个点的程度。 它是动态的,因为它为每种货币和时间范围提供了不同的点值水平——这些水平随着市场的波动而变化。


以下是可以为动态止损操作的主要变量:


Atrdynamics=true 是激活动态止损的方法。 atrtimeframe 是 ATR 的时间范围,用数字表示,例如 60 = H1。 atrperiod 默认值为 14,因为这是 Wilder 在发现 ATR 时想到的周期。


每当你想在特定的一般止损上激活 atrdynamics 时,该止损的因子必须大于 0。例如,如果你想激活动态止损,你必须指示 slfactor=1——这将打开 止损为 H1 的 ATR (14)。 如果您指定 slfactor=2,则表明您希望将止损设置为 H1 的 ATR (14),为 2 的倍数。


该因子(或 ATR 的倍数)通常会取代我们探索的与每个一般止损相关的所有点值。 相同的潜在好处和注意事项适用于所有一般停止。 它们的 ATR 动态版本增加了这些一般止损水平的额外好处,可以根据货币的特定范围和波动性和策略的时间框架自动调整。


如果您想激活 ATR 动态止损来替代止损或止盈,您必须确保您也正确校准了止损水平,因为它旨在指示最小止损和止盈水平。 在上图中,我正在设置优化所有三个参数,slfactor、tpfactor 和 Stoplevel。


动态 ATR 一般止损具有独特的能力来定制

每种货币范围的特殊性的一般止损和

波动性,所以他们应该根据你的策略进行优化,看看是否

它们可能有任何好处,也可能没有。


结论

交易者应始终为他们的策略配备明智的退出方式。


策略自身进场逻辑的反向收盘退出规则通常可以证明是最好的退出形式。 它简单明了,不易过度优化。 然而,只要意识到交叉杂交中固有的危险,就可以创造性地尝试其他指示剂的其他类型的相反闭合。


无论是固定的还是动态的,一般的止损订单,如止损、利润目标、追踪止损、追踪利润、盈亏平衡都是简单的工具,但许多人根本没有使用它们,或者没有正确使用它们。 它们都可以帮助防止过度损失或锁定利润,大多数交易策略都可以从中受益——尤其是止损。 止损应被视为一种保险政策:您希望永远不要使用它,但很高兴知道您在需要时可以获得保护。


想要保护您的利润很好,但也必须记住,策略需要喘息的空间。 货币市场摇摆不定,这种摇摆不定可以在交易开始之前取消大多数保护性止损机制——例如追踪止损或盈亏平衡。 这些止损类型的使用可能是一把双刃剑:如果我们没有在潜在利润反转之前保护我们自己,我们就会踢自己,但如果这些保护性利润止损在交易发生之前使交易短路,我们就会踢自己更多 成熟的时间。


最后,探索退出和停止的可能性范围很广,发现正确组合所需的工作量与设置所花费的工作量一样多。 请记住,最简单的方法往往是最好的,离场和止损的积累越多,利润受限和过度优化的危险就越脆弱。