源码与编译
如何为 MQL5 EA 增加点差过滤:先把规则写清楚
点差过滤适合作为范围明确的定制练习:它决定当前点差下是否允许新开仓。修改 EA 前,应先定义这条边界。
写出准确的规则
明确单位、允许的最大值以及等于上限时的处理。例如,一条演示规则可允许点差小于或等于指定 Points 上限时开仓。还应定义报价不可用时的处理。已有持仓的保护逻辑不应被简单的“只过滤新入场”条件一并跳过。
读取一致的报价快照
SymbolInfoTick 返回包含 Bid 和 Ask 的快照。报价有效时,以 Points 计的点差等于 Ask 减 Bid,再除以品种 Point。计算前检查函数结果与 Point 值,避免把旧 Bid 和新 Ask 混在一起。
放在新入场边界
找到有效策略信号转化为开仓请求的位置,再加入过滤。使用清晰的输入名称,并在跳过时记录简明原因。不要意外绕过平仓、移动止损或策略仍需执行的挂单管理。
测试边界案例
- 点差低于上限。
- 点差恰好等于上限。
- 点差超过上限。
- 报价缺失或无效。
- 新开仓被过滤时,已有持仓仍正常受到管理。
用 MQLume 开启你的定制
从可编辑源码出发,完成一个具体改进,这正是 MQLume 的使用方式。浏览 My AI Gold MT5,再用AI 提示词清单说明你的要求。