【ATR Ichimoku Breakout】此款EA是用ATR动态定位挂单距离,云层+ADX过滤震荡市 ,源码免费分享学习

| 发表于 半小时前 | 显示全部楼层 |复制链接
最后由 whmm 于 2026-11-9 19:10 编辑

关键设计说明

1. ATR 动态定位(解决固定点数)
  • 黄金 H1 ATR 通常在 3–8 美元(300–800 点)之间。1.5 × ATR 大约 450–1200 点。
  • 高波动时段自动放宽(避免被噪音扫),低波动时段自动收紧(挂单更近,减少挂单空置)。
  • 止损 2.0 × ATR ≈ 600–1600 点,远宽于原来的 150 点。这是关键改进——150 点在 H1 波动下几乎必然**针扫掉。

2. Ichimoku 云层方向过滤(解决“震荡市乱开仓”)
价格 > 云层顶部 + 0.3×ATR  →  只做多
价格 < 云层底部 - 0.3×ATR  →  只做空
云层内部                     →  双向都不挂0.3×ATR 的缓冲很重要。
加上缓冲后,价格必须明确脱离云层才允许挂单,过滤掉大量边缘震荡。
云层内删掉所有挂单这一条是核心:避免原策略“震荡双向挂单两边被打”的重复发生。

3. ADX 强度过滤(双重保险)
Ichimoku 判断方向,ADX 判断强度。两者同时满足才挂单:
  • 云层给方向;
  • ADX ≥ 20 说明这个方向有足够的动量,不是慢速漂移。


这两个过滤器叠加后,交易频率会大幅下降。这正是你需要的——从“高频重复止损”变成“低频高质量”。

4. 一单成交即删另一侧
if(posBuy > 0 && ordSell > 0) g_trade.OrderDelete(sellTicket);这防止你原来的“两边都成交、两边都止损”的情况。同时只持一单,风险可控。

5. 手数默认按风险百分比
默认 LOT_RISK_PCT,单笔风险 0.5%。如果止损距离是 1000 点、账户 10000 美元,那么:
  • 风险金额 = 50 美元
  • 亏损/手 = 1000 点 × 每点价值
  • 手数 ≈ 0.01–0.05 手

不会随亏损自动缩仓导致失控。
需要注意的问题
  • Ichimoku 云层参数用的是 H1(InpATRTF = PERIOD_H1)。如果你希望更快响应,可以改成 M30 或 M15,但震荡过滤效果会减弱。建议先用 H1 跑基准。
  • 挂单有效期 12 小时。如果不设有效期,挂单可能在几个交易日后才被触发,那时 ATR 已经变了,止损距离不对。ORDER_TIME_SPECIFIED 确保挂单在市场结构变化前失效。
  • 点差过滤 InpMaxSpreadPoints = 50。黄金在非活跃时段点差可能到 100+ 点,此时挂单即使触发也是亏的。这个过滤和你的原策略相比是新增的,很关键。
  • 回测至少 6 个月。你原来的 5 天数据样本不足以判断框架是否有效。至少覆盖一次趋势期和一次震荡期。
  • 如果用 demo 跑,先看日志。每笔挂单都有 PrintFormat,观察云层方向切换的频率和挂单被删的频率。如果一天之内云层方向切换超过 3 次,说明缓冲不够,需要加大 InpCloudBufferATR。

参数输入界面简洁
image.png
回测图
image.png
image.png
仅供学习研究

image.png
filetype

ATR_Ichimoku_Breakout.ex5

45.09 KB, 下载次数: 0, 下载积分: 活跃度 -5  [下载]

filetype

ATR_Ichimoku_Breakout.mq5

14.93 KB, 下载次数: 0, 下载积分: 活跃度 -5  [下载]

评分
  • 1
  • 2
  • 3
  • 4
  • 5
平均分:NAN    参与人数:0    我的评分:未评 下载时遇到问题?
如果有帮助,就支持一下我呗
举报

评论 使用道具

发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册

Fast跟单EA