无指标网格EA的实战哲学与风控
🤖

无指标网格EA的实战哲学与风控

从ATC冠军访谈看逆势加仓与多货币分散

技术分析基础 难度 · 进阶 2026-03-22 6 分钟阅读
#网格EA#无指标交易#ATC2010#逆势加仓

谁是 Dimitar Manov 与 ATC 2010

Dimitar Manov 是一位来自保加利亚的自动化交易开发者,早在1985年就开始用 BASIC 写程序,后来转向 Pascal 与 C,并在1994年取得经济信息处理的学位。六年前他接触到 MQL4,迅速被自动化交易的威力吸引。在2010年自动交易锦标赛(ATC 2010)中,他的 Expert Advisor 被赛事观察员 Boris Odintsov 评为最稳定、最可靠的 EA 之一。这次访谈揭示了其无指标网格策略的核心思想,对中文交易者理解‘不依赖历史指标’的系统性交易有重要参考价值。

ATC 是 MetaQuotes 举办的年度算法交易大赛,要求参赛 EA 在真实或模拟环境中以统一规则运行。2008年 Dimitar 曾参赛但失利,2010年他带着改良版多货币 EA 重返赛场。理解他的演变路径,有助于我们看清网格类策略在不同市场环境下的生存边界。

为什么放弃指标与传统止损

Dimitar 明确指出,他尝试过各类振荡器、鳄鱼与分形组合,但长期实盘账户依旧爆仓。他认为指标只反映历史,而当前价格运动与历史无关;图表也仅是事后修正的痕迹。因此他的 EA 完全不使用技术指标,仅监控当前价格与持仓加权均价之间的点差。

传统止损止盈被他视为与‘低买高卖’逻辑矛盾。他用加仓代替止损:当浮亏扩大,不以止损退出,而是递增仓位使持仓均价快速靠近市价;当盈利回撤达到设定值,才用追踪止损平仓。这种思路把‘出场’而非‘入场’作为核心,类似马丁格尔但不等同,因为他强调外汇不是赌场,需要周期修正假设。

⚠ 常见坑:误把逆势加仓当万能
逆势加仓在单边千点无修正行情中会迅速导致 stop-out。Dimitar 也承认,若价格走出1000点不回调,他的 EA 没有步长递增功能,会很快爆仓。普通交易者切勿在无最大回撤限制下直接套用。

无指标网格的核心工作原理

他的 EA 逻辑极简:价跌则买,价涨则卖,本质是网格化摊平。每对货币有虚拟挂单(BUY_LIMIT/SELL_LIMIT),价格触及时成交并布新单。系统监控‘当前价与持仓总价差’,差大则减仓差,盈利则按币种不同参数挂追踪止损。

加仓步长递减,使持仓均价快速追赶现价;平仓方向与上笔相反——盈利平多后开空,再等修正。他交易12个货币对,以分散风险。参数按保证金占用与波动性设定:占用保证金多的品种最小利润目标更大,波动小的品种交易次数少、利润薄。

与纯马丁格尔的本质区别

Dimitar 强调外汇不是赌场,纯马丁格尔在单品种强趋势无修正时毫无希望。他的 EA 虽含加仓,但逻辑建立在‘周期必然修正’信念上,且通过多货币分散降低相关性风险。入场方向不重要,出场与修正才是关键,这与‘战争或爱情不在乎开头而在结尾’的比喻一致。

在2008年 ATC,纯马丁因雷曼破产引发的巨幅波动且无回调而失败;2010版加入多货币与去止损逻辑,但去掉了资金管理与风控函数(因回测慢且不适应赛规)。这提醒我们:实盘必须保留独立风控模块,竞赛代码不能直接实盘。

✦ 策略对比
指标型 EA 依赖滞后信号,网格无指标 EA 依赖均值回归与周期修正。前者在震荡中优,后者在长趋势中危;多货币网格通过低相关分散,比单品种马丁存活率高。

多货币分散与杠杆风控

杠杆是双刃剑,Dimitar 称任何低估都会致 crash。他的体积由价格运动决定,每笔加仓步长递减。 aggressiveness 可通过缩小加仓步长与总手实现,但回测计算耗时限制了他。12个货币对让他相信当前回撤安全,但赛规迫他移除 MM/RM 函数。

中文交易者常忽视:多货币 EA 降低风险同时增加潜在利润,但需逐个品种按回撤优化。他用最小回撤值优化参数以确保长期盈亏平衡。这种‘先多货币后逐对调回撤’的流程,比盲目上多品种更严谨。

从访谈提炼的实操构建步骤

若想复刻此类无指标网格,可参考以下路径:第一步,确定逆势分层逻辑与虚拟挂单间距;第二步,用持仓均价与现价差触发加仓,步长递减;第三步,逐货币对写不同追踪止损与目标,用历史最小回撤优化;第四步,组合低相关品种分散;第五步,保留独立杠杆与总回撤熔断,不可删 RM。

// 简化的虚拟网格加仓伪代码框架
input double GridStep = 50;      // 网格点距
input double LotStep = 0.01;     // 基础手数
double avgPrice;                 // 持仓均价
void OnTick()
{
   double posProfit = PositionGetDouble(POSITION_PROFIT);
   double curPrice = SymbolInfoDouble(_Symbol, SYMBOL_BID);
   if(MathAbs(curPrice - avgPrice) >= GridStep * _Point)
   {
      // 逆势加仓,步长递减
      double lot = LotStep * MathPow(0.9, PositionsTotal());
      trade.Buy(lot, _Symbol);
      avgPrice = (avgPrice * oldVol + curPrice * lot) / (oldVol + lot);
   }
   if(posProfit > TargetProfit) trade.PositionClose(_Symbol);
}

普通交易者的适用与禁忌

该策略适合有编程能力、能接受长尾回撤、明白均值回归前提的进阶用户。禁忌包括:直接实盘竞赛版、单品种重仓、无最大回撤开关、在央行暴雷事件前满网格。Dimitar 自嘲若出错两对的追踪止损等于最小目标,会导致零利润平仓,说明参数细调极关键。

⚠ 实盘前必做
务必加入总权益回撤硬止损(如20% stop-out),并在多品种间做相关性分析;不要因为‘EA无恐惧’就忽略黑天鹅。原文链接:https://www.mql5.com/zh/articles/536

总之,这篇访谈价值在于用选手第一视角拆穿了‘指标崇拜’与‘止损教条’,示范了以均价回归与多货币分散为核心的生存型网格。但它不是圣杯,而是风险可视化的思维训练。中文社区常转述‘网格稳赚’,却忽略 Dimitar 对 extraordinary situations 的恐惧——这才是专业者与赌徒的分界线。

常见问题

他用逆势加仓代替固定止损:浮亏扩大时递减步长加仓,使持仓均价快速贴近现价;盈利后按币种设定追踪止损,回撤达值才平仓,不使用传统 Stop Loss。
纯马丁是单品种倍投赌反转,无修正必爆;Dimitar 的网格是多货币虚拟挂单逆势摊平,依赖周期修正与低相关分散,且入场不重要、出场与均价差管理才是核心,不属于赌场倍投。
因他交易12货币对分散,普通波动可被网格吸收;但如2008雷曼式千点无回调单边,其 EA 无步长递增会迅速 stop-out,故只怕 extraordinary situations。
必须保留独立风控:总权益回撤硬止损、逐品种最小回撤优化、相关性分析;不可直接用竞赛去 RM 的 EA;杠杆谨慎,避免单点暴雷。