![以马丁格尔(翻倍加仓)为基础的长线交易策略](https://c.mql5.com/i/articles/overlay.png)
以马丁格尔(翻倍加仓)为基础的长线交易策略
概述
马丁格尔是一套众所周知的交易系统。 它有许多优点:易于使用,无需使用严苛的止损,这减少了心理压力,用户需要投入的交易时间相对较短。
当然,该系统也有巨大的缺点。 它们当中最严重的是将整个存款亏空的概率很高。 如果您决定使用马丁格尔技术进行交易,则必须考虑这一事实。 这意味着您应该限制平均持仓操作的最大数量。
经典马丁格尔策略的基础
根据经典马丁格尔系统,如果前一笔成交以亏损平仓,那么下一笔成交的交易量应该加倍。 在此情况下,翻倍交易量的成交利润可以弥补之前的亏损。 该系统建立在您最终会走大运的梦想。 即使行情没有逆转至预期的方向,您也可以从调整中受益。 从这一观点出发,依据概率,这个策略应该可行。
在这种形式下,马丁格尔可与任意交易系统结合使用。 例如,在基于价位的交易中,您可以在一笔亏损交易后开立一笔翻倍成交量的交易。 甚或,由于在价位交易中止盈通常是止损的三倍或更多倍,因此您不必在每笔亏损后增加成交量。 可以在两三次亏损之后再这样做,或者成交量可以乘以 1.1 或任何其它优选值而非倍增。 该策略的主要思路是由此产生的最终利润应该完全弥补之面的连串亏损。
马丁格尔也可用来增加部分持仓的仓量。 起初,我们以较小成交量开仓。 如果价格向逆反方向迈进,我们将剩余交易量分成一笔或多笔成交开仓,从而得到较低的平均价格。
至于持仓,如果行情走势与您的初始持仓相反,则马丁格尔可在同一方向上以相同或递增的交易量附加开仓。 在本文中将讨论这种类型的马丁格尔。
例如,如果您开立一笔多头持仓且行情开始下跌,那么您无需将这笔持位平仓,而是开立另一笔多头持仓 - 这次会在更好的价位开仓。 如果行情继续下跌,可在新的更好价位开立另一笔多头持仓。 连续开仓,直到价格转向正确的方向,或达到您设置的确定最大持仓数。
根据经典马丁格尔技术,每次应以双倍交易量开新仓。 但这并无必要。 如果您使用双倍交易量,只要价格开始向有利方向移动,您就可以更快地达成所有持仓的总盈利目标。 在这种情况下,您不必等到价格达到第一笔开仓时的价位即可盈利。 因此,即便只是价格调整,也可以弥补所有仓位的亏损,而无需行情完全逆转。
此外,您可以持有先前开立的仓位,或将之平仓。 不过,如果您决定平仓,新仓位必须增加交易量。
马丁格尔会运作吗?
我不敢自夸马丁格尔专家。 我们一起来推理。 该交易系统能否展示可接受的结果?
任何行情走势都具有波浪特征。 在一个方向上的单边强劲走势,几乎总是伴随着相反方向上的修正回调。 根据这一规律,基于马丁格尔的系统即可运作。 如果您可以预测回调开始,并在适当的时间执行相应的买入或卖出交易,您当然可以弥补损失甚至扭亏为盈。 如果行情不仅是回调,而是转向您的获益方向,您可以获得丰厚的盈利。
然而,有时强劲的价格走势几乎没有回调。 在这种情况下我们唯一可以做的就是等待,并希望存款足以承受损失,直到价格找到底部并开始逆转。
选择市场
马丁格尔操作在不同的市场也许有所不同。 因此,如果可能的话,最好选择最适合这种交易策略的市场。
外汇市场被认为是一种范定化。 股票市场被认为是一种趋势化。 由此外汇可能更适合马丁格尔技术。
在股票市场中运用这种策略则存在很多危险。 其中最重要的是股票价格可以等于零。 这就是为什么对于股市来说运用马丁格尔技术进行长线交易非常危险的原因。 短线交易可能更加危险,因为股票价格可能会飙升到意想不到的高位。
外汇市场的货币报价不能等于零。 如果货币汇率飙升,必然会发生令人难以置信的事情。 汇率通常在一定范围内波动。 我们怎样才能从中获益?
举例,我们查看外汇品种报价的月度图表。 我们从 USDJPY 开始:
NZDUSD:
NZDJPY:
至于其他市场,它们也适用于马丁格尔技术。
例如,我们看看可可豆市场:
这是布伦特原油市场:
或大豆市场:
马丁格尔技术更适合金融产品,这些金融产品在任何时间帧内都有一定的范围(用于交易范围边界)。 另一个可接受的交易选择是针对已在一个方向上移动数月的品种,且没有显著的回调(依照走势方向交易)。
选择方向
如果您打算运用马丁格尔技术,请确保所有因素对您有利。 我们已分析了市场。 现在我们需要选择正确的方向。
股票市场。 在股票市场上也许无法总能找到正确的方向。
当进行做多交易时,隔夜利息对您不利。 这意味着您必须支付第二天移仓的费用。 您被收取的金额可能非常大,如您持仓若干月份,则隔夜利息可与该笔持仓的预期盈利相抵。
虽然,一些经纪商提供的做多点差远低于做空点差。 但如果与获利值相比,此隔夜利息金额可能足够少。 在这种情况下,购入股票份额则不失为优选。
当做空交易时,您也要被收取隔夜利息(取决于您的经纪商),或可能会损失股息。 对于空头持仓,您需要支付股息,而不是支付给您。 所以,在做空交易时,建议选择无股息的股票,或在相关股息配发完毕后入场。
支付股息之前的时间对于空头持仓不利的另一个原因是许多交易者会以配股的形式获得股息。 这意味着股价有可能上涨。
其他市场。 在其他市场中,建议选择有利的方向。 那就是隔夜利息正数值的方向。 在这种情况下,每个持仓日您均会收到隔夜利息。
但是,没有此类品种的统一列表。 一些经纪商为某些产品的空头持仓支付正数值隔夜利息。 而另一些经纪商为相同的品种提供负数值空头隔夜利息。
所以,在使用马丁格尔策略之前,请确保您的经纪商在您要交易的方向上提供正数值隔夜利息。
若要检查隔夜利息,请打开终端的 品种 窗口(Ctrl+U)。 之后,选择所需的品种,并在其设定中找到 多头隔夜利息 和 空头隔夜利息:
但手工检查所有品种很不方便。 因此,我们修改品种选择和导航实用程序,这在以下文章中讨论过:
我们添加一个新的枚举类型输入 Hide if the swap is negative,值为 Do not hide,Long 和 Short:
enum NegSwap { neg_any,//无需隐藏 neg_short,// 空头 neg_long,// 多头 }; input NegSwap hideNegSwap=neg_any; // 如果隔夜利息为负数值则隐藏
若要启用此参数,我们在 skip_symbol 函数中添加以下品种过滤代码:
if(hideNegSwap==neg_short && SymbolInfoDouble(name, SYMBOL_SWAP_SHORT)<0){ return true; }else if(hideNegSwap==neg_long && SymbolInfoDouble(name, SYMBOL_SWAP_LONG)<0){ return true; }
修订后的实用程序版本附带于下。
现在我们可以很容易地看到经纪商提供的多头或空头隔夜利息为正数值的品种列表。
举个例子,我们比较三个不同经纪商提供的具有正数值隔夜利息的产品清单。
- 第一经纪商; 多头隔夜利息为正数值或零:USDJPY,SurveyMonkey(股票的多头隔夜利息为零,这是一种非常罕见的情况),XMR BTC,ZEC BTC。
- 第二个经纪商; 多头隔夜利息为正数值或零: AUDCAD, AUDCHF, AUDJPY, CADCHF, CADJPY, GBPCHF, NZDCAD, NZDCHF, NZDJPY, USDCHF, USDDKK, USDNOK, USDSEK。
- 第三个经纪商; 多头隔夜利息为正数值或零: AUDCAD, AUDCHF, AUDJPY, AUDUSD, CADJPY, NZDCAD, NZDCHF, NZDJPY, NZDUSD, USDJPY。
- 第一个经纪商; 空头隔夜利息为正数值或零: EURMXN, USDMXN, XAGUSD, XAUUSD, BRN, CL, HO, WT, 加密货币和股票。
- 第二个经纪商; 空头隔夜利息为正数值或零: EURAUD, EURNZD, EURRUR, GBPAUD, GBPNZD, GOLD, SILVER, USDRUR, USDZAR, GBPUSD, EURUSD。
- 第三个经纪商; 空头隔夜利息为正数值或零: EURAUD, EURNZD, EURPLN, GBPAUD, GBPNZD, GBPUSD, USDPLN, USDRUB。
如您所见,列表不匹配。
为交易选择品种
当为马丁格尔交易选择品种时,我们已定义了两个要注意的因素。
第一个因素是市场。 外汇是最适合马丁格尔策略的市场,因此我们将针对外汇品种操作。
另一个层面是在期望方向上的正数值隔夜利息。 由于我们开仓后无时间期限,所以时间有利于我们是很重要的。
由于不同的经纪商提供的具有正数值隔夜利息的品种集合不同,我们将从上述经纪商当中选择隔夜利息为正数值的一个。
还有一个层面需要考虑。 这就是当前的品种价格。 如果当前时间交易的品种接近历史最小值,则开立长线空头持仓很不合理。
如果产品价格在交易时间的 90%处于价格区间的中间位置,或高于此中间位置,则可以开立空头持仓。
为了做多交易,该产品应低于该范围的中间值。
我们看几个示例。
其中之一是 USDJPY 图表,如上所述。 价格大约在中间范围内。 其中一个经纪商提供正数值的多头隔夜利息。 因此,我们可以尝试运用马丁格尔系统进行做多交易。 如果价格低于一格,那就更好了:
EURAUD 也处于其走势范围的中间位置,直接低于强阻力位。 我们尝试做空交易,因为许多经纪商为这个方向提供了正数值点差。 我们可以现在开始或等待价格向上移动一格。
EURPLN 高于中间区间,且一些经纪商提供正数值空头隔夜利息:
USDPLN 的价位甚至优于 EURPLN。 我们可以进行做空交易:
USDRUB, 也可做空:
一些经纪商为 AUDCHF 提供正数值多头隔夜利息,且其价格接近最低价范围:
接下来我们考虑其他一些交易可能性。
创建网格
下一步要做的是确定以下内容:
- 我们的资金;
- 用于第一笔交易的金额;
- 如果价格向不利方向移动,何时开始进一步交易;
- 最大交易数量。
当运用马丁格尔系统时,我们应始终准备着价格向不利方向上移动的情况。 在这种情况下,下一步递增的交易量不应小于前值。 考虑到这一点,以及基于最大加仓步数,我们将计算第一笔交易量。 不要忘记交易操作时,账户上冻结的维持保证金。 确保在最后一个加仓步骤后留有额外的自由余额,以便应对无法预料的事件。 对于一个或更多的马丁格尔交易链而言,更优先的是拥有足够的可用余额,以防当前交易链以止损了结。
作为一条规定,止盈值等于马丁格尔交易的止损。 它也可以放置在等于 1 到 2 个止损值的距离处。 考虑到止盈,您可以选择增加持仓交易量,以便在行情调整或逆转时弥补亏损。 后续成交的交易量越大,您弥补亏损的时间越早。 但更大的交易量需要更大的余额。 甚或,如果走势继续超错误方向迈进,您的损失将更高。
在谈到止损时,此处我们的意思是在旧有持仓不平仓的情况下开新仓。 因此,在达到最大步数之前,不会执行实际的止损。
我们所有的研究都只是基于理论,而未经测试。 不过,我们将交易链的最大成交数设置为 7。 这意味着我们准备开立 7 笔成交,期望价格最终会转向有利的方向。
止盈大小等于止损。 止损将设置为 1 美元。 出于便利起见,第一笔成交的交易量将等于 1 手。
步数 | 手数 | 毛亏损 | 盈利, 1 比 1 |
---|---|---|---|
1 | 1 | -1 $ | 1 $ |
2 | 1 | -3 $ | 1 $ |
3 | 2 | -7 $ | 1 $ |
4 | 4 | -15 $ | 1 $ |
5 | 8 | -31 $ | 1 $ |
6 | 16 | -63 $ | 1 $ |
7 | 32 | - 127 $ | 1 $ |
此为最小手数的几何级数,相对于起始手数的必须加仓买入。 在第 7 步,我们的亏损超过可盈利 127 倍。 如您所见,使用经典马丁格尔会导致资金彻底亏空。
如果我们将止盈设置为止损大小的 2、3 倍或更多倍数,则后续成交的交易量可以小得多,因此整个交易链上的总损失将会减少。 不过,这令我们不能从调整中盈利。 在这种情况下,我们不得不等待行情逆转,这在某些情况下可能不会发生。
例如,如果止盈是止损的两倍,我们考察必要的最小交易量。
步数 | 手数 | 毛亏损 | 盈利, 2 比 1 |
---|---|---|---|
1 | 1 | -1 $ | 2 $ |
2 | 1 | -3 $ | 3 $ |
3 | 1 | -6 $ | 3 $ |
4 | 1 | -10 $ | 2 $ |
5 | 2 | -16 $ | 2 $ |
6 | 3 | -25 $ | 2 $ |
7 | 4 | -38 $ | 1 $ |
差异是惊人的。 我们得到一个小得多的比例 38 比 2(均摊),替代了 127 比 1。 然而,在这种情况下,触发止损的可能性更高。
如果止盈比止损大 3 倍,则总利润进一步减少,约等于 29 比 4。
步数 | 手数 | 毛亏损 | 盈利, 3 比 1 |
---|---|---|---|
1 | 1 | -1 $ | 3 $ |
2 | 1 | -3 $ | 5 $ |
3 | 1 | -6 $ | 6 $ |
4 | 1 | -10 $ | 6 $ |
5 | 1 | -15 $ | 5 $ |
6 | 1 | -21 $ | 3 $ |
7 | 2 | -29 $ | 3 $ |
如您所见,通过设置更大的止盈,我们可以减少损失整个存款的机会。 但在这种情况下,当您有充分理由相信价格将在现在或不久的将来朝着预期的方向发展时,则应入场交易。 这意味着止盈与止损的比率大于 2 比 1,更适合在趋势方向或从范围边界向中间价回调时交易。
加仓之间的距离。 另一个尚未得以解决的问题是,如果价格朝向不利的方向,加仓的距离。 正确的方式是使用之前在图表上形成的级别。 但在这种情况下,交易之间的距离会不相等,并且计算新的成交量将更加困难。
因此,最好在成交之间使用相等的间隔,如上表所示。 为避免复杂的计算,距离可由图表网格确定。 如果仔细观察,可以看到范围边界通常位于正方格的边界处。
用于产品开立长线持仓的参数
我们尝试从品种图表当中找到立即或稍后风险最小的开仓价位。 然后我们将在图表上绘制买入加仓交易的可能点数。
AUDCHF 做多交易。 空间足够 4 笔买入成交。 但如果价格走至更低,可以增加更多成交。 尽管图表指向朝下,但盈利与损失之比等于 1:1,价格可以在未来的第一笔成交时达到必要的距离。
CADCHF 做多交易。 状况类似,但价格甚至低于 AUDCHF。
GBPCHF 做多交易。 此处的价格非常接近最低价。
CADJPY 做多交易。 在这种情况下,最好等到价格向下移动一格,然后尝试执行买入操作。
USDZAR 做空交易:
在短线和中线交易中运用马丁格尔
马丁格尔不仅可用于长线交易。 任何范围内的品种交易,都可以划分为类似的成交级别。 赚取盈利的可能性一直持续到品种离开当前范围。 在短线范围内操作时,您可将盈亏比率设置为 3:1 或更高。
出于演示目的,此处设置了步数。 您可以使用更少的步数,在这种情况下,通过止损将整个交易链平仓的紧迫性降低。
例如,如果盈亏比为 3:1 且您在交易链中有 4 步,则您完成 2 笔正收益成交即可弥补不成功交易链的损失。
如果一条交易链只有 3 步,那么亏损就可以通过一笔盈利成交来弥补。 首笔成交先走错方向,但最终由止盈平仓。 如果它们立即朝着正确的方向前行,那么 2 笔成交就可弥补相同的损失。
使用 RevertEA 测试自动交易
由于 RevertEA 智能交易系统是早前为了测试逆转策略 (逆转:圣杯或危险的妄想? 和 逆转:减少最大回撤并测试其他市场,以及 逆转:将入场点形式化并开发手动交易算法) 而创建的,支持运用马丁格尔技术进行交易,我们尝试在自动模式下测试这种交易策略。
我们不设定允许 EA 入场交易的价格。 只要测试品种没有持仓,它就会执行入场。
EA 操作与上述示例的另一个不同之处在于它将使用止损。 即,如果价格走向错误的方向,EA 将之前的成交平仓,并以更好的价格开新仓。
智能交易系统设定。 我们为 RevertEA 的优化设置以下参数:
- 止损动作: 马丁格尔 (同向开仓);
- 手数: 0.01;
- 成交量递增类型;
- 止损类型: 按照点数;
- 止盈类型: 止损倍数;
- 止盈: 从 1 至 2,增量 0.1;
- 逆转和马丁格尔期间最大 手数倍数: 8。
优化模式: M1 OHLC。 之后,将在 基于实际即时报价的每次即时报价 模式中另行测试最佳测试结果。 请参阅下面的盈利能力结果图表。
测试区间: 自 2006 年。
测试结果。 测试结果无法令人印象深刻。 只有布伦特原油展示出一个有趣的盈利图表。 在所有其他品种中,运用马丁格尔时若对第一笔开仓没有任何限制,则其结果并非是最佳解决方案。 另一方面,我们避免了总存款的亏损。
USDJPY 做多交易,止盈等于 1.9 * 止损,止损等于 100 点:
GBPAUD 做空交易,止盈等于止损,止损等于 120 点:
EURUSD 做空交易,止盈等于 1.3 * 止损,止损等于 110 点:
EURAUD 做空交易,止盈等于 1.6 * 止损,止损等于 80 点:
最后,我们测试布伦特原油做空交易,止盈级别等于 1.1 * 止损,止损为 200 点:
所有策略测试程序报告,以及含有测试参数的 SET 文件都附带于下。
结论:值得运用马丁格尔技术吗?
本文中给出的所有研讨都是理论上的。 从测试结果可以看出,若无适当规则的马丁格尔自动交易并不能一直带来良好的利润。
然而,我相信更严肃的方法来开发基于马丁格尔的交易策略,包括以更恰当的价格入场开仓,可能有助于赚取一些利润。 与需要持续监控的其他系统相比,此类系统的优势在于您需要投入的交易时间最短。
附件
以下文件附于此处:
- _finder4.mq4, _finder4.ex4, _finder.mq5, _finder.ex5: 用于 MetaTrader 5 和 MetaTrader 4 平台的品种选择和导航实用程序的 1.2 版;
- RevertEA.zip: MetaTrader 5 的智能交易系统 1.3 版;
- tests.zip: 策略测试器报告;
- SETfiles.zip: RevertEA 参数 SET 文件。
本文由MetaQuotes Ltd译自俄文
原文地址: https://www.mql5.com/ru/articles/5269
![相关性在交易中的实际应用](https://c.mql5.com/2/35/Correlation.png)
![MеtaTrader5 图表上的水平示意图](https://c.mql5.com/2/33/HorizontalVolumesM0taTrader5.png)
![ZigZag(之字折线)的力量(第一部分)。 开发指标基类](https://c.mql5.com/2/35/MQL5-avatar-zigzag_head.png)
![蒙特卡罗方法在强化学习中的应用](https://c.mql5.com/2/32/family-eco.png)
马丁格尔最终的归宿是:爆仓爆仓爆仓!