EA-13538 · 动量
Exp_CyclePeriod
该EA基于CyclePeriod自定义指标进行交易,该指标测量价格行为的主导周期长度。当周期值上升时开多仓,周期值下降时开空仓,并配有可配置的止损、止盈和资金管理选项。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
暂未回测:这个 EA 还没能自动转换。
策略分析
该EA的核心策略基于CyclePeriod指标,该指标通过Alpha参数(0.07)平滑计算价格的主导周期长度。入场条件为:当指标值Value[1]<Value[2]且Value[0]>Value[1]时开多仓,表示周期缩短、动量向上加速;当Value[1]>Value[2]且Value[0]<Value[1]时开空仓,表示周期缩短、动量向下加速。出场条件依赖固定的止损(1000点)和止盈(2000点),同时在反向信号出现时平仓(BuyPosClose/SellPosClose)。仓位管理支持五种模式:自由保证金、余额、扣除亏损的自由保证金、扣除亏损的余额和固定手数。资金管理通过MM参数控制风险比例,默认0.1。策略使用新K线检测(IsNewBar)避免重复信号,并依赖TradeAlgorithms.mqh库封装交易逻辑。
优势
- 使用周期分析作为交易信号来源,属于较少见的分析方法,具有独特性
- 提供五种仓位管理模式,资金管理灵活度高
- 止损止盈比例1:2,具有正期望收益的盈亏比设计
- 允许独立控制多空方向的开仓和平仓,灵活性强
- 使用新K线检测机制避免同一K线内重复交易
劣势
- 依赖外部自定义指标CyclePeriod和TradeAlgorithms.mqh库,缺少内嵌逻辑,可移植性差
- 止损1000点和止盈2000点过大,在不同波动率环境下可能不适用
- 没有点差过滤、波动率过滤或交易时段过滤机制
- 代码中包含双分号(int median=5;;)和乱码注释,代码质量有待提升
- 缺少对已有持仓数量的检查,可能在同方向重复开仓
改进建议
- 增加点差过滤和波动率自适应止损止盈机制,使策略适应不同市场条件
- 增加持仓检查逻辑,避免同方向重复开仓,并添加最大持仓数限制
风险评估
总体风险: 中等
- 止损1000点过大,在极端行情下单笔亏损可能非常可观
- 没有同方向持仓数量检查,可能在单方向积累过多仓位
- 缺少点差过滤,在流动性差时可能以不利价格成交
评估得分
代码质量2.0
策略逻辑3.0
风险管理3.0
稳健性2.0
创新性3.0
文档1.0
综合2.3
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 交易风险比例或手数 |
MMMode | LOT | 仓位管理模式(自由保证金/余额/扣除亏损的保证金/扣除亏损的余额/固定手数) |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大滑点 |
BuyPosOpen | true | 是否允许开多仓 |
SellPosOpen | true | 是否允许开空仓 |
BuyPosClose | true | 是否在反向信号时平多仓 |
SellPosClose | true | 是否在反向信号时平空仓 |
InpInd_Timeframe | PERIOD_H6 | 指标时间周期 |
Alpha | 0.07 | CyclePeriod指标平滑系数 |
SignalBar | 1 | 用于获取信号的K线索引 |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。