- 9/4/2026
- 9/3/2026
Powerhouse EA 测试报告:实盘结果、功能与交易者体验
9/3/2026
风险提示: 杠杆产品给你的资本带来巨大风险。没有任何自动化系统能保证盈利,且下文讨论的数据来自历史模拟而非实盘账户。请先在虚拟账户上进行测试。
直接回答
我采用布林带设置,将其条件编写成专家顾问(EA)可以评估的代码,然后让该文件通过观察已完成的 K 线来监控市场,而不是由我亲自监控。
三个指标共同完成这项工作。布林带产生信号,Awesome Oscillator 进行确认,而 Envelopes(包络线)处理三种可能的退出方式之一。该文件进入 MQL4 Experts 文件夹,通过导航器面板进行编译,然后附加到 EURJPY H1 图表并开始交易。
以下内容涵盖了确切的交易条件、输入值、安装、回测,以及关于该系统尚未证实的章节。最后一部分非常重要,因为该页面的早期版本在没有公布任何数据的情况下,就称结果非常出色。
指标输入
三个指标,一个图表,且它们都没有使用默认配置。
| 指标 | 参数 | 值 |
| Bollinger Bands | 周期 | 13 |
| Bollinger Bands | 偏差 | 1.87 |
| Awesome Oscillator | 无 | 不存在参数 |
| Envelopes | 周期 | 27 |
| Envelopes | 偏差 | 0.66 |
| 图表 | 交易对 | EURJPY |
| 图表 | 周期 | H1 |
如果布林带使用 20 和 2 的默认值,会产生完全不同的结果,所以在假设任何内容匹配之前,请先检查你的平台加载了什么。
Awesome Oscillator 完全没有配置。它在零线周围绘制直方图,动能增强时为绿色,减弱时为红色,无需调整。

做多规则
Original wording described the entry as a candle opening above the lower band after one opened below it. Accurate as far as it went, though it left several questions unanswered, which is why the rules below spell out timing explicitly.
| 组件 | 做多条件 |
| 信号 K 线 | 前一根已完成的 K 线在布林线下轨下方开盘 |
| 触发 K 线 | 当前 K 线重新回到该线上方开盘 |
| 确认 | Awesome Oscillator 读数高于前一根 K 线 |
| 订单时机 | 在触发 K 线开盘时 |
| 保护性退出 | 在入场价下方 90 点 |
| 目标 | 在入场价上方 100 点 |
| 指标退出 | 价格移动到 Envelopes 上轨上方,然后一根 K 线重新回到通道内开盘 |
| 哪个退出条件适用 | 以先到达的条件为准 |
确认的定义很重要。上升意味着当前直方图值超过前一个值,且仅在已完成的 K 线上进行评估。不是连续两根上升 K 线,不是颜色变化,也不是相对于零的位置。仅进行一次比较,回溯一根 K 线。
在录制过程中,我观察到一个教科书式的带状信号触发,但当时震荡器是在下降而非上升。因此没有进行交易。这个过滤器拒绝了相当一部分看起来很有吸引力的设置,而这正是它存在的全部原因。
做空规则
规则是对称的,但有一个需要特别说明的修正。
| 组件 | 做空条件 |
| 信号 K 线 | 前一根已完成的 K 线在布林线上轨上方开盘 |
| 触发 K 线 | 当前 K 线重新回到该线下方开盘 |
| 确认 | Awesome Oscillator 读数低于前一根 K 线 |
| 订单时机 | 在触发 K 线开盘时 |
| 保护性退出 | 在入场价上方 90 点 |
| 目标 | 在入场价下方 100 点 |
| 指标退出 | 价格移动到 Envelopes 下轨下方,然后一根 K 线重新回到通道内开盘 |
| 哪个退出条件适用 | 以先到达的条件为准 |
这里是修正之处。2023 年的版本称保护性退出位于入场价上方 90 点,目标位于下方 100 点,并表现得好像这适用于所有情况。这些数字仅适用于空头头寸。
这些数字从何而来?来自原始录制中的一个示例:空头在 146.64 左右入场,保护水平在 147.54,目标在 145.64。进行计算,这两个距离对于向下头寸都是吻合的。如果应用于多头,同样的指令会将你的保护水平放在入场价上方,目标放在下方,这完全颠倒了逻辑,会导致每一笔盈利交易都产生亏损。
任何将这些数字字面复制到多头设置中的人,都理应得到道歉,而我在这里表示歉意。
Envelopes 退出

存在三种退出方式,其中任何一种都可以关闭头寸。先触发者胜。
基于指标的退出方式如下:价格向你交易的方向推向外侧线,然后回调,第一根在通道内开盘的 K 线将让你平仓。
有时它会大幅超越固定目标。在录制的示例中,如果让通道管理退出,捕捉到的利润会比 100 点目标更多,因为价格在达到目标水平后仍在继续运行。其他时候则相反,你会回吐掉本可以通过固定目标锁定的利润。
哪种更好?我真的不知道,我也不信任任何在没有对两种变体进行大规模样本测试的情况下就声称有把握的人。我的直觉倾向于在这个品种上使用指标退出,尽管直觉正是自动化想要消除的东西。

头寸规模与风险敞口
在原文中完全缺失,这是一个疏忽。
固定的距离使规模计算变得简单直观:
- 选择每笔交易愿意承担的最大余额比例。建议保守一些。
- 你的保护距离是固定的 90 点。
- 将你的风险金额除以 90,即可得到每点价值。
- 使用你账户货币中 EURJPY 的点值,将其转换为交易量。
在正式运行前,值得设置的额外限制:
- 每个图表一次仅一笔交易: 信号堆叠会增加风险敞口,但并不会增加优势。
- 最大点差过滤器: 当行情异常宽时,跳过入场。
- 每日亏损上限: 在达到定义的回撤后停止,而不是让糟糕的交易时段产生复利效应。
- 关注预定的发布时间: 日元货币对在银行日本宣布消息前后会剧烈波动。
这里的风险回报比是 100 对 90,几乎仅为 1。这意味着该系统需要远高于 50% 的胜率才能覆盖成本,这也是我在任何测试报告中首先会检查的内容。

EA 是如何构建的
直接回答:它是生成的而非手工编写的,然后经过了审核。上述条件可以清晰地转化为机器逻辑,因为每一个条件都是在已完成的 K 线之间进行两个数字的比较,这正是生成器擅长处理的任务。
实际意义在于:运行它不需要 MQL4 知识,但如果你想修改它,则需要一些知识。编译后的文件无法进行有意义的编辑,因此任何想要调整保护距离或更换确认指标的人都需要源代码,而不是编译版本。
将其加载到 MetaTrader 4
- 打开平台,点击“文件”,然后点击“打开数据文件夹”。
- 进入 MQL4 文件夹,然后进入 Experts 文件夹。
- 将文件粘贴到那里。
- 返回平台,在导航面板中右键点击“专家顾问 (Expert Advisors)”,选择“刷新”。这将完成编译。
- 编译成功后,名称会出现在列表中。
- 在 H1 时间框架上打开一个 EURJPY 图表。
- 将文件拖动到该图表上。
- 在出现的对话框中检查输入值,然后确认。
- 在“工具”中允许算法交易,然后进入“选项”标签页的“专家顾问”选项卡。
- 点击工具栏中的“自动交易 (AutoTrading)”按钮。
- 检查图表角落显示的是笑脸而不是哭脸。
- 打开终端窗口中的“专家 (Experts)”选项卡,阅读日志中的错误信息。
第十一和第十二步经常被跳过。哭脸意味着无论你的规则多么正确,都不会执行任何操作,而日志会用通俗易懂的语言告诉你原因。
错误的图表或错误的时间周期会导致产生与测试内容毫无关系的测试结果。这听起来显而易见,但每周都会发生。
运行回测
通过“视图”菜单打开“策略测试器”,选择文件,然后进行配置。
| 字段 | 设置内容 |
| 交易品种 | 你经纪商的 EURJPY,包含任何后缀的准确名称 |
| 周期 | H1 |
| 模型 | 每个跳动点(Every tick),尽管需要等待 |
| 日期范围 | 尽可能回溯到数据允许的范围 |
| 点差 | 当前值,或一个保守的固定数值 |
| 入金 | 符合你实际情况的数值 |
| 交易量 | 匹配你之前计算的规模 |
点击“开始”,等待,然后打开“报告”选项卡查看完整统计数据。
关于模型选择有两点。仅使用开盘价(Open prices)运行速度较快,且每根 K 线仅评估一次条件,这非常适合本系统,因为入场发生在 K 线开盘时。但它不会模拟 K 线内部发生的情况,而保护水平和目标位都在 K 线内部。在关键时刻使用“每个跳动点(Every tick)”,在这里确实如此。
数据质量也会限制模拟所能提供的信息。稀疏的历史记录会产生缺口,测试器通过插值来填补缺口,从而凭空创造出从未发生过的波动。
该系统尚未证明的内容
原页面将该 EA 描述为高效且能产生卓越结果。这两项主张均未得到支持,且现已删除。
以下是原始资料实际确立的内容:一条在约 15 年间表现为稳定的资金曲线,在此期间大约有 300 多次交易。
现在把这两个数字放在一起看,因为它们的关系才是有趣的所在。15 年内 300 次入场,平均每年约 20 次,甚至每月不足 2 次。对于小时图来说,这非常罕见,它告诉你在确认过滤器中,绝大多数的带状信号都被拒绝了。
样本量少是一把双刃剑。较少的入场次数意味着较低的累计交易成本,这很有帮助。但也意味着基于这些数据计算出的任何统计数据都具有很大的不确定性,且一个基于 15 年 300 次结果构建的平滑资金曲线,其说服力远低于基于 3,000 次结果构建的曲线。
从未公布的内容:
| 缺失数值 | 为什么重要 |
| 测试开始和结束日期 | 15 年涵盖了截然不同的市场环境 |
| 经纪商和数据源 | 数据馈送质量会改变结果 |
| 初始入金 | 将货币金额转换为百分比 |
| 使用的成交量 | 决定数值是否按比例缩放至你的账户 |
| 净利润 | 缺失 |
| 盈亏比 | 缺失 |
| 胜率 | 由于盈亏比接近 1,这一点至关重要 |
| 最大回撤 | 决定你是否能挺过难关的数值 |
| 每笔交易的平均结果 | 揭示成本是否消耗了优势 |
| 假设的点差和佣金 | 在日元交叉盘上,点差变化很大 |
| 滑点 | 模拟通常假设没有滑点 |
| 样本外部分 | 将真实的优势与拟合的优势区分开来 |
| 前向测试记录 | 不存在模拟或实盘对比 |
运行你自己的测试,你将获得比我发布的更好的证据,而我的标准并不高。上表列出了需要记录的内容。
为什么要结合使用而非使用单一指标
这是一个合理的问题,答案部分在于历史原因而非分析原因。
单纯的带状触碰系统会产生大量的信号,其中大部分都毫无作用。价格在通道之外停留的时间很长,尤其是在趋势运动期间,而每一次回归通道内部的买入都意味着在反复买入下跌。任何观察过强趋势阶段中均值回归设置的人都会明白这种感觉。
加入动量确认可以过滤掉这些信号。振荡器比较在每次入场前都会问一个简单的问题:短期动量目前是否正朝着我即将采取的方向移动?当答案是否定时,什么都不会发生,之前的录音示例正好展示了这种情况:由于直方图在下降而非上升,一个清晰的带状信号被拒绝了。
随后,通道退出解决了另一个弱点。固定目标无论运动是否仍有动量,都会在设定的距离机械地关闭头寸,对于能够进行长时间运行的货币对,这会让你错失利润。让外线来管理退出,可以适应实际运动的任何变化。
三个条件,三个不同的任务。这种组合是否优于其中任何一个单一指标尚未经过测试,我再次说明这一点,因为这是诚实的立场。
优化与过拟合陷阱
在开始调整数值之前,值得了解一下。
这里的参数很不寻常:周期为 13 而不是 20,偏差为 1.87 而不是 2,包络线为 27 和 0.66。这些不是整数,而非整数通常意味着有人专门寻找过它们。
寻找并不自动意味着错误。每个参数都必须有来源。危险在于,任何针对足够多的组合进行搜索的行为,都可能找到一个完美拟合过去数据但无法捕捉任何可重复模式的东西。
优化过度迹象:
- 微小的参数变化会导致巨大的业绩波动。稳健的配置会缓慢退化。
- 选定的值位于孤立的峰值上,而不是位于包含良好结果的宽阔高原内。
- 在搜索从未触及的数据上,表现崩溃。
- 系统仅在一个货币对上有效,在其他地方均无效。
实际防御措施:预留一部分优化器从未见过的历史数据,然后在那里单独检查表现。同时测试相邻的值。如果周期 13 有效,而 12 或 14 崩溃了,那么你找到的是噪音而非结构。
先模拟,后实盘
无论任何报告显示什么,我都会坚持的一个习惯。
使用你自己的经纪商数据进行回测,而不是信任其他地方产生的数据,因为不同公司之间的点差和执行差异足以显著改变结果。一旦你自己的模拟看起来可以接受,就转到虚拟账户,并在那里停留足够长的时间,以观察在当前条件下真实信号的到来。
只有到那时才考虑使用实盘资金,并且从比你认为值得的规模更小的规模开始。实盘运行的前几个月会教给你模拟无法呈现的东西:掉期时点差会变得多宽,成交价格偏离模型价格的频率有多高,以及你的连接是否真的能撑过隔夜。
常见错误与修复
| 症状 | 可能的原因 |
| 导航器中缺失名称 | 文件夹错误,或未点击“刷新” |
| 图表上的难过表情 | 自动交易已关闭,或在属性中禁用了实盘交易 |
| 几天都没有任何开盘 | 这很正常,因为每年大约只有二十次入场 |
| 日志显示无效成交量 | 规模低于你经纪商的最小值,或小数位数过多 |
| 日志显示无效止损 | 保护距离在经纪商的最小止损水平之内 |
| 回测看起来过于平滑,不切实际 | 建模模式过于粗糙,或点差设为零 |
| 实盘结果与测试结果背离 | 滑点、点差扩大和执行延迟 |
最后一行值得强调。模拟成交发生在模型价格处。真实的成交并非如此,尤其是在新闻期间,而一个盈亏比接近 1 的系统几乎没有空间来吸收这种差异。
常见问题解答
它可以在 EURJPY 以外的货币对上运行吗?
从技术上讲,是的,尽管参数值是专门为该货币对推导的,且没有理由认为它们可以通用。不同工具之间的点值、典型每日波动范围和交易时段行为各不相同,因此,在一种交叉盘中代表适度波动的 90 点保护距离,在另一种交叉盘中可能代表巨大的波动。请将每个货币对视为一个全新的系统而非现有系统的延伸,并单独进行测试,同时预期会有不同的最佳值。
为什么是 13 周期而不是标准的 20 周期?
较短的回溯周期使通道对近期价格行为的反应更快,从而产生更频繁的边界触碰和更紧凑的线条。结合 1.87 的标准差而非 2,这些带状线比常规配置更贴近价格。这种特定的组合是否比默认配置具有任何优势,从未经过对比测试,因此请将其视为众多配置之一,而非一项成熟的改进。
系统会在新闻发布期间进行交易吗?
此版本中没有针对预定公告的过滤器。日元交叉盘对日本央行的决策以及影响美元端的间接数据反应剧烈,这会产生可能完全跳过保护水平的缺口。任何运行实盘的人都应该在重大发布前添加日历过滤器或手动关闭。我选择后者,虽然这种方式不够优雅且需要记忆,但确实有效。
我需要多久才能知道它是否有效?
比大多数人预期的要长,因为每年大约 20 次入场意味着一整年的交易样本量太小,无法得出可靠的结论。仅凭三个月的市场表现进行判断几乎是毫无意义的。至少在虚拟账户上进行六个月的前测,才能提供一个合理的初步图景,即使是这样,也仅能产生大约十个左右的结果。对于低频系统来说,耐心是必不可少的。
如果我的平台在交易进行中关闭了会发生什么?
你的保护水平和目标价已经作为服务端指令存储在经纪商处,因此它们会继续运行。停止运行的是 Envelopes(包络线)退出机制,因为评估该条件需要运行中的文件并读取当前数据。任何本应根据通道条件关闭的订单,在触发固定水平之前都会保持开启状态。使用虚拟专用服务器(VPS)可以完全避免这种情况。
盈亏比是否太低?
冒 90 的风险去赚 100 确实很薄弱,这意味着胜率承担了大部分压力。在不计成本的情况下,盈亏平衡点大约在 47% 左右,而加入点差和佣金后,要求会更高。目标较宽的交易系统可以容忍较低的准确率。从原则上讲,两种结构并无优劣之分,尽管薄弱的盈亏比会减少执行滑点带来的空间,而这正是实盘结果往往令人失望的地方。
我可以更改固定距离吗?
只能通过源代码进行更改,因为编译后的文件无法修改。更改它们会使所有已发布的测试结果失效,因此之后需要重新运行完整的测试序列,而不是假设之前的数值仍然适用。值得注意的是,保护距离和目标会与指标退出机制产生相互作用:如果将目标设得足够宽,通道条件会先关闭几乎所有的交易,这会使其变成一个不同的系统。
使用三个指标会提高可靠性吗?
不会自动提高。结合条件会降低信号频率,这解释了为什么持仓量较低,而更少的信号意味着每个信号在你的结果中都具有更大的权重。过滤器在移除真正糟糕的设置时是有帮助的,但在仅仅移除设置时则会造成损害。要区分这两种情况,需要分别测试每个条件的贡献,这是原始资料从未尝试过、我也未曾发布的。
披露: 出现在本网站其他位置的经纪商链接可能包含商业安排。仅供教育用途,不构成交易建议或使用任何特定提供商的建议。回测结果描述的是过去的情况,并不代表未来表现。在投入资金前,请考虑咨询受监管的专业人士。

Petko Aleksandrov



