EA-13636 · 动量

Exp_ForecastOscilator

该EA基于ForecastOscilator自定义指标进行交易,在指标上穿信号时开多仓,下穿信号时开空仓。支持多种资金管理模式、止损止盈设置,以及独立的入场和出场信号开关。策略属于基于信号的动量系统,带有反向信号出场逻辑。

打开交互版(权益曲线、切换品种)

基本信息

分类动量
风险中等
评分★★☆☆☆
类型交易型 EA
周期H1, H4, H12, D1
指标ForecastOscilator, T3 Smoothed Oscillator
作者—

回测结果(H1,约 1 年)

暂未回测:这个 EA 还没能自动转换。

策略分析

策略概念基于ForecastOscilator振荡器指标的信号判断,该指标通过T3平滑算法和可配置的长度参数生成趋势动量信号。入场条件为:当指标缓冲区3(上穿信号)有效时触发买入开仓,缓冲区2(下穿信号)有效时触发卖出开仓,每个方向的开仓和信号检测可独立开关控制。出场条件包含两种逻辑:一是反向信号出场(买入平仓由下穿信号触发,卖出平仓由上穿信号触发),二是止损止盈出场。仓位管理通过TradeAlgorithms.mqh库实现,支持五种模式:自由保证金比例、余额比例、含亏损的自由保证金比例、含亏损的余额比例和固定手数。资金管理方面,MM参数控制风险比例,默认0.1即10%,配合MMMode选择具体计算方式。出场逻辑中还有一个历史回溯机制:当同时允许开仓和平仓且当前无平仓信号时,会向前遍历历史K线查找更早的反向信号以决定是否平仓,这增加了策略的灵活性但也增加了回测与实盘的一致性风险。

优势

  • 独立的入场和出场开关设计灵活,可以仅使用信号入场而用止损止盈出场,或仅用信号平仓而不开新仓
  • 支持五种资金管理模式,适应不同风险偏好的交易者
  • 使用已完成的K线(SignalBar=1)进行信号判断,避免当前bar信号闪烁导致的重复交易
  • 止损和止盈参数独立配置,风险控制明确
  • 新bar检测机制避免同一根K线内重复处理信号

劣势

  • 历史回溯遍历K线查找反向信号的逻辑复杂且可能造成回测与实盘行为不一致,实盘中历史信号可能在后续bar上才被发现
  • 依赖外部自定义指标ForecastOscilator和TradeAlgorithms库,缺少这些文件EA将无法运行,可移植性差
  • 没有点差过滤和交易时间过滤,在高点差时段或非活跃时段可能产生不利成交
  • 止损1000点和止盈2000点的默认值过大,对不同品种需要大幅调整,缺乏自适应机制
  • 没有持仓检查逻辑,可能在已有同方向持仓时重复开仓

改进建议

  • 增加持仓检查逻辑,在开仓前确认当前没有同方向持仓,避免重复开仓
  • 添加点差过滤和交易时段过滤,避免不利条件下的成交
  • 移除或简化历史K线回溯出场逻辑,改为仅使用当前bar信号判断出场,提高回测与实盘一致性

风险评估

总体风险: 中等

  • 没有持仓检查,可能重复开仓导致过度集中风险
  • 历史K线回溯出场逻辑在实盘中可能表现与回测不一致
  • 默认止损止盈点数过大,未对品种波动率做自适应调整

评估得分

代码质量3.0
策略逻辑3.0
风险管理3.0
稳健性2.0
创新性2.0
文档1.0
综合2.3

参数

参数默认值说明
MM0.1资金管理比例,控制每笔交易的风险占比
MMModeLOT资金管理模式:自由保证金/余额/含亏损保证金/含亏损余额/固定手数
StopLoss_1000止损点数
TakeProfit_2000止盈点数
Deviation_10最大滑点容忍值
BuyPosOpentrue是否允许买入开仓
SellPosOpentrue是否允许卖出开仓
BuyPosClosetrue是否允许买入平仓(反向信号)
SellPosClosetrue是否允许卖出平仓(反向信号)
InpInd_TimeframePERIOD_H12ForecastOscilator指标的时间周期
length15ForecastOscilator指标的长度参数
t33T3平滑算法的周期参数
b0.7T3平滑算法的体积因子
IPCPRICE_CLOSE_指标计算使用的价格类型
SignalBar1用于信号判断的K线索引(0=当前bar,1=已完成bar)

同类 EA:动量

回测是历史模拟,不代表未来收益,不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。