Exp_AFL_WinnerSign
该EA基于自定义AFL_WinnerSign指标的信号进行交易,该指标识别基于动量的买卖信号。在上升信号时开多单,下降信号时开空单,具有可配置的止损、止盈和资金管理选项。EA包含由同一指标驱动的入场和出场逻辑,支持仓位反转或独立平仓信号。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
该EA的核心策略是利用AFL_WinnerSign指标识别动量方向并顺势交易。入场条件为:当指标缓冲区1(UpValue)在指定信号K线上产生非零且非空值时,开多单并平空单;当缓冲区0(DnValue)产生有效信号时,开空单并平多单。出场条件分为两类:一是反向信号出场(指标发出反向信号时平仓),二是止损/止盈出场(默认SL=1000点,TP=2000点)。仓位管理采用TradeAlgorithms.mqh中的多种模式,包括固定手数、基于余额百分比、基于可用保证金等5种资金管理方式。策略还包含一个回溯逻辑:当开仓和平仓同时启用但当前K线未产生平仓信号时,会向前遍历历史K线寻找最近的反向信号以决定是否平仓。该EA默认在H6周期运行,使用可配置的平滑算法(SMA/EMA/JJMA等)和多种应用价格类型。
优势
- 支持多种资金管理模式(固定手数、余额百分比等),灵活适应不同风险偏好
- 买卖开仓和平仓可独立开关配置,允许只做单边或只做信号提示
- 默认使用SignalBar=1(已收盘K线),避免未收盘K线信号反复变化导致的误交易
- 包含NewBar检测机制,避免同一根K线内重复开仓
- 止损止盈参数可配置,默认TP大于SL(2:1盈亏比),符合正向期望交易原则
劣势
- 依赖自定义指标AFL_WinnerSign,若指标文件缺失则EA无法运行,且指标逻辑不透明
- 回溯平仓逻辑中遍历所有历史K线(for循环无上界优化),在长历史数据下可能导致性能问题
- 没有点差过滤机制,在高点差品种上可能导致滑点过大或无效成交
- 没有持仓检查逻辑,可能在不同信号周期内重复开仓
- 止损1000点较大,在某些品种上可能承受过大浮亏
改进建议
- 增加持仓检查逻辑,避免在已有同方向仓位时重复开仓
- 为回溯平仓循环增加最大回溯K线数限制,防止遍历过多历史数据导致性能下降
- 增加点差过滤和交易时间过滤,避免在高点差或低流动性时段交易
风险评估
总体风险: 中等
- 回溯平仓循环无上界限制,极端情况下可能遍历大量历史K线导致延迟
- 缺少点差过滤,高点差环境下可能产生不利成交
- 依赖外部自定义指标文件,指标缺失时EA直接初始化失败
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 资金管理比例参数 |
MMMode | LOT | 仓位计算模式(固定手数/余额百分比/可用保证金等) |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点 |
BuyPosOpen | true | 是否允许开多单 |
SellPosOpen | true | 是否允许开空单 |
BuyPosClose | true | 是否允许多单平仓 |
SellPosClose | true | 是否允许空单平仓 |
InpInd_Timeframe | PERIOD_H6 | AFL_WinnerSign指标运行周期 |
iAverage | 5 | 信号平均周期 |
iPeriod | 10 | 主计算周期 |
iMA_Method | MODE_SMA | 平滑算法类型 |
iLength | 5 | 平滑长度 |
iPhase | 15 | 平滑相位参数 |
IPC | PRICE_WEIGHTED | 应用价格类型 |
VolumeType | VOLUME_TICK | 成交量类型 |
SignalBar | 1 | 信号K线索引(0=当前K线,1=前一根已收盘K线) |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。