Exp_iStochKomposter
该EA基于自定义iStochKomposter指标(一种带超买超卖水平的随机振荡器)的信号进行交易。在超卖信号时开多仓,在超买信号时开空仓,并支持反向信号平仓逻辑。仓位管理采用灵活的资金管理模式,支持固定手数、可用保证金、余额和亏损比例等多种模式。
打开交互版(权益曲线、切换品种)基本信息
回测结果(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的策略核心是基于自定义iStochKomposter指标的均值回归交易,该指标本质上是一个改进的随机振荡器,结合了ATR周期参数。入场条件为:当指标上轨缓冲区(buffer 1)在指定信号柱上产生非零且非空值时,产生买入信号;当指标下轨缓冲区(buffer 0)在指定信号柱上产生非零且非空值时,产生卖出信号。出场条件分为两类:一是通过反向信号平仓(买入信号触发卖出平仓,卖出信号触发买入平仓),二是通过固定的止损和止盈水平。仓位管理方面,EA提供了五种资金管理模式:固定手数、基于可用保证金、基于余额、基于亏损后可用保证金、基于亏损后余额。EA还实现了新柱检测机制,避免在同一K线内重复交易,并通过Recount标志确保信号读取失败时能够重新计算。此外,当同时允许开仓和平仓但当前无平仓信号时,EA会向前回溯历史柱寻找最近的反向信号来决定是否平仓。
优势
- 实现了新柱检测机制,避免同一K线内重复开仓,减少过度交易风险
- 提供五种资金管理模式,灵活适应不同风险偏好的交易者
- 止损止盈参数可配置,且止盈是止损的两倍,具备正向风险回报比
- 信号读取失败时通过Recount标志自动重试,增强了健壮性
- 开仓和平仓开关独立控制,允许精细化的策略配置
劣势
- ATR_Period变量未声明为input,无法在策略测试器中优化,也不可见于EA参数面板
- 历史柱回溯查找平仓信号(第142行循环)缺乏上限保护,可能造成性能问题
- 未进行持仓检查,可能在已有同方向仓位时重复开仓导致仓位叠加
- 缺乏点差过滤,在点差较大时仍可能开仓,增加交易成本
- 依赖外部自定义指标iStochKomposter,增加了部署复杂性和依赖风险
改进建议
- 将ATR_Period声明为input变量,使其可在参数面板中配置和优化
- 添加持仓检查逻辑,避免同方向重复开仓导致仓位过度叠加
- 为历史柱回溯循环添加最大搜索柱数限制,防止性能退化
风险评估
总体风险: 中等
- 缺乏持仓检查,可能同方向重复开仓导致仓位叠加风险
- 止损1000点较大,在小周期或高波动品种上可能造成较大单笔亏损
- 历史柱回溯循环无上限保护,极端情况下可能导致EA卡顿或超时
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 资金管理比例或固定手数 |
MMMode | LOT | 资金管理模式选择 |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点 |
BuyPosOpen | true | 是否允许买入开仓 |
SellPosOpen | true | 是否允许卖出开仓 |
BuyPosClose | true | 是否允许买入平仓(平多仓) |
SellPosClose | true | 是否允许卖出平仓(平空仓) |
InpInd_Timeframe | PERIOD_H1 | 指标计算时间周期 |
ATR_Period | 14 | ATR周期(非input变量) |
KPeriod | 5 | 随机指标K线周期 |
DPeriod | 3 | 随机指标D线周期 |
Slowing | 3 | 随机指标减速周期 |
STO_Method | MODE_SMA | 随机指标平滑方法 |
Price_field | STO_LOWHIGH | 随机指标价格场 |
UpLevel | 70 | 超买水平线 |
DnLevel | 30 | 超卖水平线 |
SignalBar | 1 | 信号柱索引 |
同类 EA:均值回归
回测是历史模拟,不代表未来收益,不构成投资建议。