EA 与自动交易 本主题第 1 篇,共 4 篇

EA 能赚钱吗?53 个实测 EA 设计给出的答案

EA 能赚钱吗?大多数照原样使用并不能。我们把 53 个标准 EA 设计放进同一套 MT5 测试:11 个的盈利因子达到或高于 1,只有 1 个达到了真正的合格线。本文说明少数赚钱的设计与大多数“差一点”的设计差在哪里,为什么盈利的一年证明不了多少,以及在 EA 实盘交易之前该怎样检查它。

发布于 · 更新于 · 审阅于

EA 能赚钱吗?53 个实测 EA 设计给出的答案

速览

难度
入门
阅读时间
12 分钟阅读
章节
6
已解答的问题
4
已核对的数字
2026-09-27
本指南目录(6 节)

有的能,大多数不能,而能赚钱的那些往往也只是小赚。我们把 AIStrategyMiner Strategy Builder 模板库里 53 个经过实测的智能交易系统设计放进同一套 MT5 测试。11 个的盈利因子达到或高于 1.00,42 个低于 1.00,中位数是 0.92。 只有 1 个设计达到了 Strategy Builder 判定合格所用的门槛。盈利能力属于某一条规则、在某个市场、某段时间里、扣除成本之后的结果。它不是“EA”这类东西自带的属性。

首图卡片提出 EA 是否能赚钱的问题,显示 53 个实测 EA 设计中有 11 个的回测盈利因子达到或高于 1

但这取决于:

  • 规则,而不是标签。 53 个设计中有 29 个落在 0.90 到 0.99 之间。它们会交易,几乎打平,然后慢慢亏损。
  • 你衡量的窗口。 整组最好的设计在测试年份里得到 1.23。在另一次 H1 复测中,同样的默认设置在 2018–21 年只有 0.99。
  • 设置是怎么选出来的。 8 次有记录的参数搜索把样本内盈利因子推到最高 1.37,但没有一次找到能在未参与拟合的窗口上站得住的设置。
  • 为这个结果承担的风险。 整组里最大的净盈利 +304.23 来自一个网格篮子,而它为此经历了 -7.92% 的回撤。
  • 回测与实盘。 这里每一个数字都是策略测试器的运行结果,没有一个来自真实账户。

以上每一点都会在下文用我们自己的数据来检验。

数据说明了什么:53 个 EA 设计,同一套 MT5 测试

Strategy Builder 附带 87 个入门模板,其中 53 个带有实测回测。这 53 个全部只跑了一次,品种、周期、时间段、模型和入金完全相同。这一点比听上去更重要。大多数公开的 EA 对比混杂了不同的经纪商、时间段和账户规模,所以它们之间的差异大多只是测试之间的差异。在这里,唯一的变量是规则本身。我们如何运行和标注这些测试,写在我们的测试方法里。

默认设置下的盈利因子设计数
低于 0.806
0.80 到 0.897
0.90 到 0.9929
1.00 到 1.099
1.10 到 1.191
1.20 及以上1
测试条件
实验编号EXP-TEMPLATE-PROFITABILITY-001
上级实验EXP-BUILDER-TEMPLATE-BASELINE-001
MT5 版本模板清单中未记录
环境MetaTrader 5 策略测试器,Exness MT5,2026-06-18 测得
品种 / 时间周期USDJPYm M5
期间2025-06-01 – 2026-06-09
模型M1 OHLC(Model=1)
入金10,000
最近验证2026-09-27
53 个中 11 个默认设置下盈利因子达到或高于 1.00 的实测 EA 设计
0.9253 个设计的盈利因子中位数
53 个中 1 个达到 Strategy Builder 合格线的设计:盈利因子 1.2、60 笔交易、回撤低于 20%

这个分布的形状就是第一个发现。亏钱的 EA 通常并不惊天动地。53 个里有 29 个落在 0.90 到 0.99 之间,而 53 个设计的回撤中位数只有 -1.33%。一条没有优势的规则不会爆仓;它在每笔交易上付出一点点,然后缓缓下滑。这就是为什么一个亏钱的 EA 可以跑上好几个月,才有人认定它在亏钱。

表格的顶端很短,值得仔细读:

设计模块数交易数盈利因子最大回撤10,000 上的净结果
pending_breakout91641.23-0.21%+38.47
ma_distance_pullback61591.10-0.26%+25.55
mtf_sar_bb_break21201.08-0.10%+3.27
basket_avg_tp_grid78,7651.03-7.92%+304.23
dualpair_rsi_basket1312,9530.87-36.38%-3,433.95

最好的设计一年在 10,000 上赚了 +38.47,不到 0.4%。第三名只建立在 20 笔交易上,那是传闻而不是结果。网格篮子赚得最多,却需要一段比它的利润还大的回撤才能做到。最差的设计在同样的测试里亏掉了账户的三分之一。“盈利”一词涵盖了前四行,而它们根本不是同一类结果。

结论背后的三个回测数字:53 个 EA 设计中 11 个的盈利因子达到或高于 1,中位数 0.92,53 个中只有 1 个达到 Strategy Builder 合格线

在这张表有任何意义之前,有两条限制压在它上面。这是一个品种、一个周期、一年——足以说明一个设计在默认设置下还没完成,却不足以给策略做一般性排名。而且 M1 OHLC 模型会对每根 K 线内部的路径插值,所以绝对数值带着通常的成交价格保留意见(建模质量解释了原因)。

对比:赚钱的 EA 设计与其他设计差在哪里

如果盈利很少见,那么有用的问题就是:赚钱的那些有什么共同点。我们按人们通常归功的几个特征,把同样的 53 条记录重新分组。

分组设计数盈利因子中位数达到或高于 1.00回撤中位数
单一策略,4–8 个模块140.9454-1.025%
单一策略,9–12 个模块180.933-1.165%
单一策略,13 个及以上模块120.944-1.035%
多条规则组成的组合90.910-3.51%
回撤超过 5% 的任何设计8—1—

复杂并没有帮上忙。 三个规模分组之间的差距在 0.015 以内,而整组最好的设计用了九个模块。给规则加过滤条件,改变的是它接哪些单。就这份证据而言,它并不改变这条规则有没有优势。

把规则合在一起反而更差。 全部九个组合模板都落在 0.89 到 0.95 之间,没有一个达到或高于 1.00。它们的回撤中位数为 -3.51%,单一规则为 -1.065%。几条读取同一价格的规则往往意见一致,也一起亏钱。分散化能把正期望摊开,却不能凭空创造正期望。

仓位与杠杆放大的是结果,而不是优势。 有八个设计的回撤超过 5%。其中之一,也就是网格篮子,以 1.03 收在 1.00 之上。其余的包括整组最差的两个结果,都在 -36% 附近。网格交易或加杠杆的手数规则不会把弱信号变成强信号。它只会把每笔交易的小亏损变成大亏损,或者把亏损往后推。

“推荐”说的是连线方式。 模板库把 53 个实测设计中的 40 个标为推荐,而这 40 个里有 10 个达到或高于 1.00。这个标记说明该流程是其模式的一个干净示例,它从来不是关于盈利的说法。

在一个窗口里盈利,与在三个窗口里都盈利

最重要的对比不在设计之间,而在窗口之间,其中八个模板带有一次有记录的参数搜索,能直接说明这一点。每次搜索都在 H1 上调整止损和止盈,最多覆盖三个窗口——用来拟合的时段、它之后的保留窗口,以及一个更早的窗口——并记录它保留下来的数字。单元格为空,表示该记录没有这个数字。

设计默认盈利因子样本内最佳保留窗口更早窗口结论
ichimoku1.031.370.890.80no_robust_edge
ma_crossover(H1)0.951.23—0.98no_robust_edge
cci_level0.951.071.050.92no_robust_edge
adx_trend0.961.040.910.80no_robust_edge
breakout1.051.040.79–0.890.64–0.84no_robust_edge
rsi_reversal0.940.91——no_robust_edge
bb_bounce0.970.91——no_robust_edge
macd_signal0.93—1.14–1.150.74–0.77no_robust_edge

样本内数字最大的那一个跌得最远:ichimoku 的 1.37 变成了 0.89 和 0.80。macd_signal 在保留窗口上达到 1.14–1.15,在更早窗口上只有 0.74–0.77。有两个设计即使在用来拟合的数据上也从未超过 1.0。这就是过拟合最普通、也最出于好意的形态:在一个窗口里拟合得最好的设置,正是吸收了那个窗口最多噪声的设置。

唯一拥有干净三窗口记录的设计,就是上表里最好的那一个。它的 1.23 来自 M5 测试。之后 pending_breakout 又在 USDJPY H1 上、以固定点差 20 单独复测了 2018–21、2022–24 和 2025–26 三个时段:

  • 默认设置(SL 40 / TP 80 点),也就是在 M5 测试中得到 1.23 的那一个,在 H1 复测的 2018–21 年只有 0.99。
  • 样本内最佳(SL 50 / TP 120)达到 1.31,在 2018–21 年跌到 0.98。
  • 有两个设置在三个窗口里都保持在 1.00 以上:SL 30 / TP 120 为 1.12 / 1.16 / 1.14,SL 30 / TP 80 为 1.09 / 1.15 / 1.10。它们是比较平淡的那两个。记录注明这是 USDJPY 特有的结果:在 EURJPY 和 GBPJPY 上的交叉测试在样本内就是亏损的。

所以,在一次 53 个设计的测试里看起来最赚钱的 EA,在一次测试中越过了门槛,在更早的窗口上却停在 0.99。它稳健的版本赚得更少。这不是令人失望的结果;一个真实而微小的优势,被诚实检验时本来就是这个样子。

对比卡片:同一个 EA 设计的默认设置在 M5 测试中为 1.23、在 H1 复测的 2018 到 2021 年为 0.99,对照一个在三个窗口里都保持在 1 以上的设置

在相信一个盈利因子之前该看什么

有四项检查,能把一个有意义的数字和一个只是好看的数字区分开来。无论是你自己搭的 EA,还是别人拿给你看的 EA,都适用。

1. 比值背后的交易笔数。 建立在 20 笔交易上的盈利因子,只是带小数点的噪声。Strategy Builder 的 Measure 面板不会把少于 60 笔交易的结果判为合格,而一年 164 笔交易也仍然偏少。每一次都先看笔数,再看比值。

2. 一个设置从未见过的窗口。 要求看同一条规则在更早时段、或在拟合窗口之后的保留窗口上的结果。在我们的八次搜索里,没有任何设置在所有测试窗口上都保持在 1.00 以上,还有两个即使在拟合所用的数据上也从未超过 1.00。如果只有一个窗口,你看到的是一次拟合,而不是一项发现。前推分析就是这项检查的系统化版本。

3. 为净结果付出的回撤。 把最大回撤和净结果放在一起看。网格篮子的 +304.23 伴随着 -7.92% 的回撤,也就是说,账户曾经沉到的深度,比它最终盈利的幅度还大。这可以是一笔理性的交换,但它应该是你主动选择的。

4. 超出成本的余量。 盈利因子 1.03 意味着毛盈利比毛亏损大 3%。任何在亏损一侧增加约 3% 的东西——比测试器更宽的点差、佣金、关键入场上的滑点——都会把它抹平。高出 1.00 的余量越薄,结果就越依赖你的经纪商与测试条件一致。

实际运行一个 EA

日常运行大部分并不是干预,而是提前决定什么情况会让你停手,并确认 EA 的表现仍然与它的记录相符。

  • 先在你自己的经纪商上重跑。 打开策略测试器(Ctrl+R),选择 EA,用你的经纪商的历史数据,在你要交易的品种和周期上测试。某家经纪商 USDJPY M5 上的记录,对另一家的 EURUSD H1 什么也说明不了。
  • 比较时要对齐模型。 上面的记录使用 M1 OHLC。改用 Every tick based on real ticks 重跑会改变成交,所以“不一样”的结果可能只是另一次测试,而不是另一个 EA。
  • 先模拟,再投钱。 在模拟账户上运行足够久,直到看见一段亏损期。你需要的数字不是收益率,而是当回撤走到你测过的最深处时,你是否还会让它继续跑。
  • 看对标签页。 工具箱(Toolbox)的 Experts 标签页记录 EA 自己的日志行;Journal 标签页记录终端的执行记录。一个“不交易”的 EA,原因多半是某个开关,而不是策略。Algo Trading 必须在两个地方开启:工具栏按钮,以及 Tools > Options > Expert Advisors > Allow Algo Trading。
  • Strategy Builder 生成的 EA 需要多一步设置。 在 Strategy Builder 中编译的 .ex5 启动时会与 https://aistrategyminer.com 进行确认。请把这个地址加到 Tools > Options > Expert Advisors > Allow WebRequest for listed URL 下,否则 EA 会以 aistrategyminer.com authorization failed - EA disabled 停止。策略测试器会跳过这项确认。
  • 拿记录来比,而不是拿零来比。 一个下跌 1% 的 EA,如果它的记录里有 5% 的回撤,那就是正常表现。一个交易频率是记录三倍、或者沉得比记录中任何时候都深的 EA,正在告诉你一件规则本身无法察觉的事。

风险与回撤的现实

有三条限制应该和这些数字放在一起。

过去的结果不会延续到未来。 盈利因子描述的是一段已经发生过的时间。pending_breakout 的记录就是这里最清楚的例子:同样的规则和设置,在 M5 测试中得到 1.23,在 H1 复测的更早窗口上是 0.99。

筛选决定了你看到什么。 一个只列出赚钱 EA 的页面,给你看的是通过了某道筛选的幸存者,而那道筛选恰恰是你看不到的部分。上面这 53 个设计没有按结果筛选,所以你能看到亏钱的那 42 个。向任何来源追问:为了找到它给你看的那些,它一共测试了多少个设计。

小优势仍然是优势——也仍然很小。 我们数据中最稳健的设置,盈利因子在 1.09 到 1.16 之间。这是真实的结果,也是单薄的结果,很容易被你没有建模的成本吃掉。任何结果都没有保证,亏损是本页每一条记录的组成部分。

下一步

接下来:

常见问题

EA 智能交易系统真的能赚钱吗?
有一些能,而大多数标准设计在默认设置下不能。我们把 AIStrategyMiner Strategy Builder 模板库里 53 个经过实测的 EA 设计放进同一套 MT5 测试——USDJPY M5,2025 年 6 月到 2026 年 6 月,入金 10,000。其中 11 个的盈利因子达到或高于 1.00,42 个低于 1.00,中位数是 0.92。真正赚钱的 EA,靠的是某一条规则在某个市场、某段时间里扣除成本后仍然有优势。“EA”这个标签本身并不会让好结果变得更可能。
EA 的盈利因子多少算好?
盈利因子高于 1.00 只说明在那次测试里毛盈利超过了毛亏损。Strategy Builder 的 Measure 面板把合格线定为 1.2,同时要求至少 60 笔交易、回撤低于 20%;在我们实测的 53 个设计中,默认设置下三项全部满足的只有 1 个。更有力的检验是换一个时间窗口:我们记录的参数搜索中,样本内盈利因子最高达到 1.37,但没有一次搜索找到在所有测试窗口上都保持在 1.0 以上的设置。一个在三个窗口里都站得住的普通数字,胜过一个只在一个窗口里好看的高数字。
越复杂的 EA 越赚钱吗?
我们的数据不支持这个说法。把 44 个单一策略设计按规模分组:4 到 8 个模块的盈利因子中位数为 0.945,9 到 12 个模块为 0.93,13 个及以上为 0.94。整组里最好的结果来自一个 9 模块的设计;而把几条规则合成一个组合反而更差:9 个组合模板全部落在 0.89 到 0.95 之间,回撤中位数为 -3.51%,单一规则为 -1.065%。
这些结果来自真实账户吗?
不是。本页每一个数字都是 MT5 策略测试器在 M1 OHLC 模型下的回测,这个模型会在每根 K 线内部插值出价格路径,而不是读取真实 tick。回测框定的是一套规则在已记录的价格上本来可能做到什么。它不包含重新报价、不包含延迟,也不包含信号触发那一刻的点差扩大,而这些都会侵蚀优势。请把这里的每个数字都当作同一条规则在实盘中表现的上限。

接着读

先是本主题的下一篇指南,其余按建议的阅读顺序排列。

把学到的做成 EA

在 AIStrategyMiner Strategy Builder 中用模块搭出进场和出场规则,再用你自己的价格历史测试,之后再做任何决定。

  • 为 MetaTrader 5 编译标准的 .ex5 文件,并在 Strategy Tester 中检查。

在依赖任何 EA 之前,先在 MetaTrader 5 的 Strategy Tester 中测试。过去的结果不能预示未来的结果。

AIStrategyMiner Strategy Builder:画布上相互连接的策略模块,右侧为属性面板