EA-1424 · 趋势跟踪
Exp_TrendEnvelopes
该EA基于TrendEnvelopes自定义指标进行交易,在检测到上升趋势信号时开多仓,检测到下降趋势信号时开空仓。它使用可配置的资金管理方式(固定手数或存款比例),并对所有交易设置固定的止损和止盈。策略仅在新K线出现时处理信号,避免重复计算。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
暂未回测:这个 EA 还没能自动转换。
策略分析
该EA的核心策略是利用TrendEnvelopes指标跟踪趋势方向进行交易。TrendEnvelopes指标基于移动平均线(支持多种MA方法,默认EMA)加上基于ATR的自适应偏差构建上下轨道,当价格突破上轨时产生买入信号,突破下轨时产生卖出信号。入场条件:当UpSignal缓冲区有有效值(非零且非EMPTY_VALUE)时开多仓,当DnSignal缓冲区有有效值时开空仓;同时如果仅处于趋势轨道内(UpTrend或DnTrend有效但无新信号),则只平反向仓位不开新仓。出场条件包括:固定点数的止损和止盈,以及反向信号触发时平仓。仓位管理通过MM参数控制,负值表示固定手数大小,正值表示存款占比。资金管理方面,EA调用TradeAlgorithms.mqh中的BuyPositionOpen和SellPositionOpen函数处理开仓逻辑,包括信号时间戳、偏差控制和止盈止损设置。策略仅在新K线形成时或SignalBar为0时重新计算信号,减少不必要的频繁交易。
优势
- 使用新K线检测机制避免信号重复计算和频繁交易,减少过度交易风险
- 提供灵活的资金管理参数MM,支持固定手数和存款比例两种模式
- 允许通过布尔参数独立控制买卖开仓和平仓权限,灵活性高
- 使用ATR自适应偏差构建趋势包络线,能根据市场波动自动调整通道宽度
劣势
- 依赖外部TradeAlgorithms.mqh库和TrendEnvelopes自定义指标,缺少内置回退逻辑,若文件缺失则EA无法运行
- 止损和止盈为固定点数,未根据ATR或市场波动动态调整,在不同波动环境下可能效果差异大
- 缺少点差过滤和交易时间过滤,在高点差时段或不适合交易时段仍会开仓
- 没有显式的持仓检查逻辑,完全依赖外部库函数处理重复开仓问题
改进建议
- 增加基于ATR的动态止损止盈计算,替代固定点数,使风险管理更适应市场波动变化
- 添加点差过滤和交易时段过滤,避免在不利条件下开仓
风险评估
总体风险: 中等
- 依赖外部库和指标文件,若缺失可能导致运行时错误或无法正常交易
- 固定止损止盈未考虑市场波动性变化,低波动时止损过大、高波动时止损过小
- 没有点差过滤机制,在流动性差或点差扩大时可能产生不利成交
评估得分
代码质量3.0
策略逻辑3.0
风险管理3.0
稳健性3.0
创新性2.0
文档2.0
综合2.7
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | -0.1 | 交易资金比例,负值为固定手数大小 |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大价格偏差点数(滑点容忍度) |
BuyPosOpen | true | 是否允许开多仓 |
SellPosOpen | true | 是否允许开空仓 |
BuyPosClose | true | 是否允许平多仓 |
SellPosClose | true | 是否允许平空仓 |
InpInd_Timeframe | PERIOD_H4 | 指标时间周期 |
MA_Period | 14 | 移动平均线周期 |
MA_Method | MODE_EMA | 移动平均线方法 |
Applied_Price | PRICE_CLOSE | 应用价格类型 |
Deviation | 0.2 | 趋势包络线偏差 |
ATRPeriod | 15 | ATR指标周期 |
ATRSensitivity | 0.5 | ATR偏移灵敏度 |
SignalBar | 1 | 获取入场信号的K线索引 |
同类 EA:趋势跟踪
回测是历史模拟,不代表未来收益,不构成投资建议。