EA-197 · 趋势跟踪
YTG ADX v1
该EA使用ADX Wilder指标生成交易信号。当+DI线从下方突破配置的水平时开多仓,当-DI线从下方突破配置的水平时开空仓。每个品种同一时间只允许持有一个仓位,通过魔术编号进行过滤。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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 | — | — | — | — | — | 暂不支持转换 |
这个 EA 从未交易的原因:转换后没有留下任何开仓规则。
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 未发现爆仓模式
代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
该EA的核心策略基于ADX Wilder指标的DI线穿越水平线的信号。入场条件为:当+DI线在指定shift根K线前从下方突破level_p水平时,产生买入信号(+1);当-DI线在指定shift根K线前从下方突破level_m水平时,产生卖出信号(-1)。出场条件仅依赖固定止损和止盈,分别为SL和TP点数,没有移动止损或部分平仓机制。仓位管理采用固定手数(Lots参数),不考虑账户余额或风险比例的动态调整。资金管理方面,EA通过ExtPos函数检查是否已有同魔术编号的持仓,避免重复开仓,但只允许单方向持仓,即有仓时不允许反向开仓。整体策略逻辑简单直接,属于典型的趋势跟踪型EA,依赖DI线突破水平来判断趋势启动。
优势
- 策略逻辑清晰简洁,基于ADX DI线突破信号,易于理解和验证
- 有魔术编号过滤机制,避免与其他EA的仓位冲突
- 使用ExtPos函数检查持仓状态,防止重复开仓
- 止损止盈参数可配置,提供基本的风险控制框架
劣势
- 固定手数不考虑账户资金变化,缺乏动态仓位管理
- 没有新K线检查机制,每个tick都会计算信号,可能导致重复触发
- 止损止盈使用Point()计算但在非5位报价平台上可能不准确
- 没有移动止损机制,盈利头寸可能在回撤中转为亏损
- DI线突破低水平阈值(5)可能产生大量假信号
- 持仓检查不允许反向开仓,错过趋势反转机会
改进建议
- 添加新K线检查机制,避免每个tick重复计算信号和重复下单
- 实现动态仓位管理,根据账户余额和风险比例自动调整手数
- 添加移动止损功能,保护已有盈利并在趋势延续时追踪利润
- 使用SymbolInfoDouble获取点值进行止损止盈计算,提高不同报价精度的兼容性
- 添加ADX主线过滤条件,仅在趋势强度足够时才开仓以减少假信号
风险评估
总体风险: 中等
- 没有新K线检查,每个tick都会触发信号判断,可能在同一根K线上多次尝试开仓
- DI线突破低水平阈值(level_p=5, level_m=5)容易产生假信号导致频繁亏损
- 固定手数不随账户资金变化调整,在亏损后可能导致过度暴露风险
- 使用ORDER_FILLING_FOK填充类型,部分券商可能不支持该类型导致下单失败
评估得分
代码质量2.0
策略逻辑2.0
风险管理2.0
稳健性2.0
创新性1.0
文档1.0
综合1.7
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
Copyright | "Yuriy Tokman" | 版权信息字符串 |
WritingExpertAdvisors | "Indicators_Scripts" | 描述字符串 |
e_mail | "yuriytokman@gmail.com" | 作者邮箱 |
Skype | "yuriy.g.t" | 作者Skype |
TimeFrames | 0 (PERIOD_CURRENT) | 交易时间周期 |
shift | 1 | 信号偏移K线数 |
adx_period | 28 | ADX指标周期 |
MAGIC | 2899 | 魔术编号,用于标识本EA的仓位 |
Lots | 0.1 | 固定交易手数 |
SL | 500 | 止损点数 |
TP | 500 | 止盈点数 |
dev | 30 | 滑点容忍度 |
level_p | 5 | +DI线突破水平阈值 |
level_m | 5 | -DI线突破水平阈值 |
同类 EA:趋势跟踪
回测是历史模拟,不代表未来收益,不构成投资建议。