源码与编译
MQL4 转 MQL5:移植 EA 时真正需要改变什么
EA 移植是把策略行为映射到另一平台模型。先明确策略要做什么,再选择目标平台的实现方式,比机械替换文件扩展名更有效。
先建立行为清单
写清入场、出场、仓位计算、持仓归属和时段规则,也包括重启或请求被拒绝时的处理。简明规格让移植围绕可观察行为进行,而不是只追求两份文件逐行相似。
适配行情与指标读取
MQL5 常见指标流程使用句柄和缓冲区访问。应核对 K 线偏移、数组索引、历史就绪状态和周期。即使公式相似,只要读到另一根 K 线,就足以改变交易行为。
适配交易模型
分别处理订单、成交和持仓,明确新版支持的账户模式,以及如何识别自身持仓。对订单选择和平仓的旧假设,应改成明确的 MQL5 操作;改名为 MQ5 不会自动完成这些适配。
分阶段核对
- 先编译最小行情与指标模块。
- 检查几个已知信号时间点。
- 用简单案例核对仓位与归属。
- 在固定区间比较开平仓行为。
- 明确记录环境差异,而不是把它们藏在代码修改中。
用 MQLume 开启你的定制
MQLume 提供可直接作为 MT5 开发起点的 MQL5 项目。浏览 Quantum Commander MT5,或先阅读源码与可执行文件区别。