两套可在 MetaTrader 5 中编译、回测和继续维护的 EURUSD EA 原型,用于展示如何把交易员基于指标与经验形成的逻辑,拆解为明确的信号、参数、仓位、风控和执行规则。
公开版本用于展示策略工程化能力,不以历史回测收益作为产品承诺。不同券商的数据、点差、佣金、合约规格、隔夜利息和杠杆会显著影响结果。
| EA | 核心逻辑 | 风险与执行 |
|---|---|---|
EURUSD_Adaptive_Regime_Showcase_EA.mq5 |
使用高周期 EMA、ADX 等条件识别趋势/震荡状态,并切换趋势或均值回归逻辑 | 风险比例仓位、ATR 止损止盈、保本、追踪止损、点差与交易时间约束 |
EURUSD_EMA_MTF_5_8_21_55_EA_v2.mq5 |
使用 EMA 5/8/21/55,在 D1、H8、H1、M15 多时间框架确认方向和回踩恢复 | 风险比例仓位、ATR 止损、固定收益风险比、保本、追踪止损和反向平仓 |
更详细的规则说明见 docs/STRATEGIES.md。
flowchart LR
A[MT5 行情与账户状态] --> B[指标与多周期缓存]
B --> C[市场状态 / 方向判断]
C --> D[入场条件与交易过滤]
D --> E[止损距离与风险仓位]
E --> F[订单执行]
F --> G[保本 / 追踪止损 / 退出]
G --> H[持仓与错误状态监控]
代码覆盖的不只是入场信号,还包括:
- 指标句柄创建、数据读取和释放;
- 多时间框架方向一致性;
- 趋势与震荡状态切换;
- 根据账户净值、风险比例和止损距离计算手数;
- 最小手数、手数步长和价格精度处理;
- 点差、时段和持仓检查;
- 止损、止盈、保本和追踪止损;
- 交易返回值和异常状态处理。
2026-08-23 使用 MetaEditor 5.00 build 5830 对两份源码进行了命令行编译:
| 文件 | 结果 |
|---|---|
EURUSD_Adaptive_Regime_Showcase_EA.mq5 |
0 errors, 0 warnings |
EURUSD_EMA_MTF_5_8_21_55_EA_v2.mq5 |
0 errors, 0 warnings |
验证命令和边界见 docs/COMPILE_VERIFICATION.md。编译通过只证明代码可以生成 EA,不代表策略具有实盘盈利能力。
- 将
Experts目录中的.mq5文件复制到 MT5 数据目录下的MQL5/Experts。 - 使用 MetaEditor 打开并编译,生成
.ex5。 - 在 MT5 策略测试器中选择 EA、EURUSD 和目标周期。
- 设置测试区间、点差、佣金、初始资金和杠杆。
- 先做开发区间与验证区间分离的回测,再使用模拟账户观察实时行为。
命令行编译示例:
& "C:\Program Files\MetaTrader 5\metaeditor64.exe" `
/compile:"$PWD\Experts\EURUSD_Adaptive_Regime_Showcase_EA.mq5" `
/log:"$PWD\compile.log"对参数或策略进行比较时,至少记录:
- 使用的品种、周期、报价源和测试区间;
- 开发区间与完全未参与调参的验证区间;
- 点差、佣金、滑点、隔夜利息和杠杆假设;
- 净利润、最大回撤、利润因子、交易次数和最长亏损序列;
- 参数小幅扰动后的稳定性;
- 不同市场状态和不同券商数据上的差异。
当前版本是策略研究原型,适合展示从经验规则到 EA 的形式化、参数化和执行实现。下一阶段计划补充脱敏的策略测试器报告、参数说明和跨市场阶段验证;在这些验证完成前,不对策略收益作任何承诺。
MIT,详见 LICENSE。