Exp_HLRSign
该EA基于自定义HLRSign指标的信号进行交易,该指标通过最高低价范围(HLR)水平识别超买和超卖状态。在向上信号时开多仓,向下信号时开空仓,具有可配置的入场/出场逻辑和资金管理模式。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
策略概念基于HLRSign指标,该指标利用最高低价范围(HLR)计算超买超卖水平,当指标值突破上轨(HLR_UpLevel=80)时产生买入信号,突破下轨(HLR_DnLevel=20)时产生卖出信号。入场条件分为两种模式:MODE_IN表示指标从信号线内穿越到外部时入场,MODE_OUT表示从外部穿越到信号线时入场。出场条件支持反向信号平仓,即当出现买入信号时同时平掉卖出仓位,反之亦然,也可以通过遍历历史K线寻找最近的反向信号来确认平仓。仓位管理提供了五种模式:自由保证金比例、余额比例、含浮亏自由保证金比例、含浮亏余额比例和固定手数,默认使用固定手数0.1手。资金管理通过MM参数控制风险敞口大小,并设置了1000点止损和2000点止盈来限制单笔交易的风险。该EA还包含新K线检测机制,避免在同一根K线上重复交易,并通过Deviation参数控制滑点容忍度。
优势
- 具有完善的仓位管理模式选择,支持五种不同的资金管理方式,灵活适应不同风险偏好
- 入场和出场逻辑可独立开关控制,允许只开仓不平仓或只平仓不开仓等灵活配置
- 新K线检测机制避免在同一K线上重复开仓,减少过度交易风险
- 止损止盈参数完整,默认止损1000点、止盈2000点提供了1:2的风险回报比
- 通过BarsCalculated检查指标是否准备就绪,避免在数据不足时交易
劣势
- 止损止盈为固定点数而非ATR动态计算,在不同波动率市场环境下适应性差
- 缺少点差过滤机制,在点差较大时可能导致不利成交价入场
- 历史K线遍历查找反向信号(第138-159行)在大量历史数据时可能造成性能问题
- 依赖自定义指标HLRSign但代码中未包含该指标的源码,可审计性和可移植性受限
- 静态变量Recount机制可能导致信号丢失,当CopyBuffer失败时仅设置重算标志而不重试
改进建议
- 将止损止盈改为基于ATR的动态计算,使风险管理能自适应市场波动率变化
- 添加点差过滤和交易时间过滤,避免在不利条件下入场
风险评估
总体风险: 中等
- 历史K线遍历循环无上限保护,当Bars_很大时可能导致长时间阻塞
- 固定点数止损在低波动率品种上可能过大,在高波动率品种上可能过小
- SignalBar=0时允许在未完成K线上交易,信号可能频繁变化导致错误入场
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 资金管理参数,控制交易手数或比例 |
MMMode | LOT | 仓位计算模式(自由保证金/余额/含浮亏自由保证金/含浮亏余额/固定手数) |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点 |
BuyPosOpen | true | 是否允许开多仓 |
SellPosOpen | true | 是否允许开空仓 |
BuyPosClose | true | 是否允许信号平多仓 |
SellPosClose | true | 是否允许信号平空仓 |
InpInd_Timeframe | PERIOD_H1 | HLRSign指标时间周期 |
Mode | MODE_OUT | 信号算法模式(内穿外/外穿内) |
HLR_Range | 40 | HLR指标计算周期范围 |
HLR_UpLevel | 80 | 超买水平线 |
HLR_DnLevel | 20 | 超卖水平线 |
SignalBar | 1 | 信号K线索引(0=当前K线,1=前一根已完成K线) |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。