Exp_ADXCrossing
该EA基于ADXCrossing自定义指标进行交易,当+DI和-DI线交叉时发出趋势方向变化信号。在向上交叉时开多仓,向下交叉时开空仓,支持可配置的资金管理、止损和止盈设置。EA还支持在信号反转时平掉反向持仓,并使用新K线检查避免同一根K线内重复信号。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
| 品种 | 盈亏 | 年化 | 最大回撤 | 交易数 | 胜率 | 夏普 | 恢复因子 | 最长连亏 | 每笔期望 | 状态 |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 运行报错 |
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 未发现爆仓模式
代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
策略概念基于ADX指标中+DI和-DI线的交叉来判断趋势方向转换。入场条件为:当UpValue(+DI上穿-DI)信号出现时开多仓,当DnValue(-DI上穿+DI)信号出现时开空仓,信号在指定SignalBar上读取。出场条件包括固定的StopLoss和TakeProfit,以及反向信号触发平仓——即出现买入信号时平卖仓,出现卖出信号时平买仓。仓位管理通过MMMode参数支持五种模式:自由保证金比例、余额比例、扣除浮亏后的保证金比例、扣除浮亏后的余额比例以及固定手数。资金管理使用MM参数控制风险比例或固定手数大小,默认0.1手。EA还包含一个额外的逻辑:当开仓和平仓都启用但没有反向平仓信号时,会向前遍历历史K线寻找更早的反向信号来决定是否平仓,这是一个增强的平仓检测机制。
优势
- 策略逻辑清晰,基于经典的ADX交叉信号,趋势判断有理论支撑
- 提供五种资金管理模式,灵活适应不同交易风格和风险偏好
- 支持独立控制开仓和平仓方向,可灵活配置为只开不平和只平不开
- 使用新K线检测机制避免同一根K线内重复开仓,减少过度交易
- 包含向前回溯检测反向信号的增强平仓逻辑,减少遗漏平仓机会
劣势
- ADX周期设为50较长,信号滞后明显,可能在趋势初期错过大量行情
- 止损1000点和止盈2000点偏大,未考虑品种的ATR动态调整,固定值可能不适应所有市场
- 缺少点差过滤和交易时间过滤,在流动性差或点差大的时段可能产生不利成交
- 自定义指标ADXCrossing未内嵌,依赖外部文件,部署时容易缺失导致EA无法运行
- 历史K线回溯平仓逻辑没有上限限制,在极端情况下可能遍历大量历史数据影响性能
改进建议
- 将止损止盈改为基于ATR的动态计算,使风控参数能自动适应不同品种和波动环境
- 增加点差过滤和交易时段过滤,避免在高点差和低流动性时段开仓
- 为历史K线回溯平仓逻辑添加最大回溯Bar数限制,防止性能问题
- 将ADXCrossing指标逻辑内嵌到EA中,消除外部依赖,提高部署可靠性
风险评估
总体风险: 中等
- 固定止损止盈未根据市场波动率动态调整,在不同波动环境下可能导致过度风险暴露或止损失效
- 缺少点差过滤,高点差市场可能导致入场滑点过大从而显著影响盈亏比
- 外部指标依赖可能导致EA在初始化时失败,若用户未正确部署指标文件则无法交易
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 资金管理参数,控制交易手数或风险比例 |
MMMode | LOT | 资金管理模式:自由保证金/余额/扣除浮亏保证金/扣除浮亏余额/固定手数 |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点(点数) |
BuyPosOpen | true | 是否允许买入开仓 |
SellPosOpen | true | 是否允许卖出开仓 |
BuyPosClose | true | 是否允许买入信号平卖仓 |
SellPosClose | true | 是否允许卖出信号平买仓 |
InpInd_Timeframe | PERIOD_H1 | ADXCrossing指标时间周期 |
ADXPeriod | 50 | ADX指标周期参数 |
SignalBar | 1 | 信号K线索引(0=当前Bar,1=已收盘Bar) |
同类 EA:趋势跟踪
回测是历史模拟,不代表未来收益,不构成投资建议。