完整评测 – TrendPullback ATR Pro
机器人名称: UltimateActivationAwareBot – TrendPullback ATR Pro
主要市场: US500 (标普500指数差价合约)
参考杠杆: 1:500
风格: 跟随趋势,结合深度回调和高级风险/仓位管理。
需要帮助调整此cBot,或想要针对您的经纪商、品种或时间框架的定制优化建议?
1. 核心理念
TrendPullback ATR Pro 是一个 多重过滤趋势回调系统,旨在:
- 顺应 结构性趋势(而非逆势),
- 等待 有意义的回调,而非追逐冲动型K线,
- 利用 ATR 适应波动率变化,
- 使用 RSI 避免过度极端情况。
逻辑:
- 通过EMA(20/50/200)判断趋势结构
-
- 多头:价格高于EMA200且EMA20 > EMA50 > EMA200
- 空头:价格低于EMA200且EMA20 < EMA50 < EMA200
- 通过ADX + DI+/DI−确认动量
-
- ADX高于最低阈值(无震荡区间),
- DI+/DI−与交易方向一致。
- 回调深度以ATR衡量
-
- 价格必须至少回调至EMA20附近
PullbackAtrK × ATR。 - 这可以过滤掉微小且嘈杂的下跌。
- 价格必须至少回调至EMA20附近
- RSI作为“健康”过滤器
-
- 避免在极端超买/超卖且无任何正常化的情况下入场。
- 入场触发条件
-
- 要么是价格重新穿越EMA20,
- 要么是突破/跌破前一根K线。
🔎 重要提示:
优化和验证主要基于 US500,杠杆为1:500。
在像US500这样的股票指数上获得稳健结果 要比黄金(XAUUSD)难得多,后者通常更容易优化且更容易过拟合。
因此,该机器人主要以 指数作为主要测试平台,而不仅仅是“仅黄金”环境。
2. 实际使用与工作流程
步骤1 – 始终从模拟账户开始
- 从 US500 M30或H1 开始。
- 每笔交易使用 风险比例约0.25–0.50%。
- 回测时至少使用 3–6个月的历史数据,然后进行模拟前瞻测试。
步骤2 – 分块优化
不要一次调整所有参数。分层进行:
- 市场状态与趋势过滤器(EMA,ADX,ATR百分位)
确保机器人避免明显的横盘震荡。 - 入场逻辑(回调 + 触发)
验证入场点是在真实回调之后,而非随机。 - 交易管理(止损/止盈,部分平仓,保本,移动止损,激进模式)
关注 风险倍数和回撤表现,而不仅仅是净利润。
步骤3 – US500与黄金及其他资产对比
- 对于 US500,典型起始范围(需测试):
-
- AtrSLmult:1.8–2.5
- AtrTPmult:2.5–3.5
- PullbackAtrK:0.20–0.35
- RiskPerc:0.25–0.5
- 对于 黄金(XAUUSD):
-
- 原则上相同逻辑适用,
- 但ATR和点值尺度差异很大。
→ 始终对每个品种进行 单独优化。
步骤4 – 激进模式
- AggressiveMode = true:
-
- 禁用部分止盈,
- 仅在
TrailStartR × R后激活移动止损。
- 适合:
-
- 最大化持仓盈利,
- 适合能接受权益波动的交易者。
- 不推荐如果:
-
- 您不喜欢回撤,
- 您已经使用高杠杆/高风险交易。
3. 参数细分及使用提示
3.1. 基础,交易日及交易时段
- 标签
此机器人所有持仓的分组标签;如果您在同一品种上运行多个系统,十分有用。 - SignalTF
驱动信号和指标的时间框架。
推荐: US500上的M30或H1。 - AllowLong / AllowShort
如果回测显示明显不对称(例如仅多头指数),您可以禁用一方。 - OneTradePerBar
True = 行为更简洁,避免在单根K线上多次叠加入场。 - 交易日及交易时段过滤器
-
- 仅启用您想要的交易日(周一至周五)。
- 交易时段开始/结束 = 日内时间窗口(服务器时间)。
- 有助于避免低流动性或隔夜时段。
- 最大点差(MaxSpreadPips)
对外汇更相关;但对指数仍建议设置最大点差限制以保证安全。
3.2. 交易量 / 风险管理
- UseRiskPositionSizing = true
推荐:机器人使用止损点数和账户余额计算仓位大小。 - RiskPerc
-
- 保守:0.25%
- 标准:0.50%
在1:500杠杆下超过1%风险可能非常激进。
- FixedVolumeUnits
仅当UseRiskPositionSizing = false时使用。
适合快速测试,但长期不如基于风险的仓位管理稳健。
3.3. 止损/止盈:基于ATR与固定点数
- UseAtrStops = true
ATR止损/止盈适应波动率;相同设置适用于不同波动率环境。 - AtrSLmult / AtrTPmult
-
- 2倍ATR止损是经典的“留有余地,但不过分”的水平。
- 3倍ATR止盈约为1.5R,如果仅用纯止损/止盈。
结合部分平仓和移动止损可获得更细腻的管理。
- UsePipsStops
启用时,基于点数的止损/止盈覆盖ATR设置。
仅当您知道点值且想使用固定数值止损时使用。 - SlLongPips / TpLongPips – 多头专用
- SlShortPips / TpShortPips – 空头专用
如果测试显示不对称(例如指数在恐慌空头与缓慢多头时表现不同),这种区分非常有用。
3.4. ATR移动止损(多头与空头)
- UseAtrTrailLong / AtrTrailLongMult
- UseAtrTrailShort / AtrTrailShortMult
您可以:
- 仅为多头或仅为空头启用ATR移动止损,
- 使用不同的乘数:例如空头若倾向快速反弹,可设置更紧的移动止损。
乘数逻辑:
- 1.0–1.5 → 紧密移动止损;快速保护,但可能过早止盈。
- 2.0–3.0 → 宽松移动止损;允许交易有呼吸空间,但容忍更深回撤。
在 激进模式 中,移动止损仅在利润超过 TrailStartR × R 后启动。
3.5. 部分止盈与基于时间的退出
- PartialAtR
在部分平仓前的利润倍数。
1.0是常见选择:在1R锁定部分收益,剩余持仓继续运行。 - PartialPercent
通常在30–60%范围内。50%是简单默认值。 - MaxBarsInTrade
保持交易开启的最大信号K线数量。 -
- 0 = 关闭。
- 对于M30,50根K线约为数天;可用作“超时”机制,防止交易无限期漂移。
3.6. 保本设置(多头 / 空头)
- UseBreakEven,UseBreakEvenLong,UseBreakEvenShort
保本逻辑的主开关及按方向开关。 - BeLongTriggerPips / BeShortTriggerPips
移动止损至保本所需的利润点数(点数单位)。 -
- 设置过低 → 会频繁被保本止损触发。
- 设置过高 → 保本功能心理价值降低。
- BeLongOffsetPips / BeShortOffsetPips
小幅正偏移有助于覆盖点差和手续费(例如1–2点)。
3.7. 激进模式
- AggressiveMode
-
- 禁用部分止盈,
- 仅在
TrailStartR × R后激活移动止损。
- TrailStartR
示例:1.5 或 2.0
只有当交易盈利达到1.5R/2R时,移动止损才开始跟随价格。
在更具方向性、高信心的环境或降低基础风险时使用此模式。
3.8. 市场状态过滤器
- UseEmaTrend, EmaFastPeriod, EmaMidPeriod, EmaSlowPeriod
EMA堆栈定义趋势状态。关闭此项会使系统更“始终开启”,通常噪声更多。 - UseAdx, AdxPeriod, AdxMin
ADX过滤低趋势阶段。
典型ADXMin:18–20以上。 - UseRsi, RsiPeriod, RsiOB, RsiOS
RSI防止在价格已处于极端水平时入场。
机器人还会检查RSI斜率(相较前一根K线的改善)。 - PullbackAtrK
以ATR单位衡量的相对于EMA20的最小回调深度。
数值越高 → 回调次数越少但更深。
3.9. 波动率及后挤压过滤器
- UseAtrPct, AtrPctLookback, AtrPctMin
仅在当前ATR高于近期历史某百分位时交易。
示例:AtrPctMin = 0.6 → 忽略最低40%的低波动率阶段。 - UsePostSqueeze, BbPeriod, SqueezePct, ExpansionPct
经典“布林带挤压后扩张”逻辑: -
- 先是波动率压缩(挤压),
- 然后扩张,之后机器人允许交易。
3 .10 . 遥测
- WriteCsv, CsvPath
如果为真,机器人将状态记录到CSV(权益、每日盈亏、连续亏损等)。
非常适合在Excel/Python中进行外部分析,尤其结合 滚动起始分析,以测试多个起始日期的稳健性。
5 | 100 % | |
4 | 0 % | |
3 | 0 % | |
2 | 0 % | |
1 | 0 % |