最后由 8133 于 2026-4-30 09:12 编辑
该EA是一个日内趋势突破策略,基于CCI和动量指标(Momentum)的双重确认,在固定时间窗口(UTC 5:30)入场,并配有完整的移动止损、保本止损、固定止盈/止损等风控模块。以下是对其交易逻辑的详细拆解: 1. 核心参数
[td]参数名 | 典型值 | 说明 | | StartHour | 5 | 交易开始小时(UTC时间) | | StartMinute | 30 | 交易开始分钟 | | 止损 | 40 | 固定止损点数(若启用) | | 止盈 | 35 | 固定止盈点数(若启用) | | 开仓价保护 | 20 | 盈利达到该点数后,移动止损至开仓价+偏移 | | BreakEvenAddPips | 0 | 保本后的额外偏移点数 | | TrailingStopPips | 0 | 移动止损点数(0表示关闭) | | 资金管理 | TRUE | 是否使用基于账户余额的风险计算 | | 风险系数 | 2 | 每笔交易风险占总资金的百分比 | | 有效手数小数点 | 2 | 手数保留小数位数 | | UseLongCandleFilter | TRUE | 是否启用长K线过滤(避免追高杀低) | | Email发送信号 | TRUE | 开仓时发送邮件通知 | | MagicNumber | 12345 | EA魔术号 |
2. 入场条件(信号生成)时间窗口信号产生(getSignal)调用 checkMomentum()(动量指标,周期60,价格类型PRICE_TYPICAL):
计算 ld_8 = 100 * (Momentum - 100)(实际为百分比变动)。 若 |ld_8| > 80(即动量变化超过80%),则返回0(无信号),认为是异常波动。 否则,ld_8 > 0 返回1(多),ld_8 < 0 返回-1(空)。
调用 checkCCI()(CCI指标,周期60,PRICE_TYPICAL):
信号有效性:两个指标的方向必须完全相同(均为正或均为负),否则返回0(无信号)。 长K线过滤(UseLongCandleFilter):
若启用,扫描最近 gi_164 = 15 根K线,计算每根K线的实体长度 High-Low。 若存在某根K线的长度 ≥ ATR(20) * gd_172(3.0),即认为是长K线(剧烈波动),此时返回0(不开仓)。 意图:避免在刚刚发生过大幅波动的行情中入场,防止被反转套住。
最终开仓动作注意:代码中实际使用的是 gd_224 和 gd_232,它们来自 BrokerStopLossPips 和 BrokerProfitTargetPips 经过 gd_200 转换后的点数,默认均为55点。
开仓后立即修改订单,将SL/PT设置为上述值。
3. 资金管理例如:余额[size=1.21em]10000,风险系数210000,风险系数2200 → 手数 = 200/(10*55)=0.3636,取小数点后2位为0.36手。
4. 持仓管理(manageTrade)该函数在每次 start() 开头被调用,对当前EA的所有订单实施风控(按顺序执行): 移动止损(TrailingStopPips)开仓价保护(保本止损)若 开仓价保护 > 0:
此功能独立于移动止损,可同时使用。
固定止盈固定止损(硬止损)若 止损 > 0:
买单:当亏损 ≥ 止损 点 → 立即平仓。 卖单:当亏损 ≥ 止损 点 → 立即平仓。
注意:固定止盈/止损的优先级高于移动止损和保本止损(它们直接平仓,而不仅仅是移动止损)。
参数中的 止损 和 止盈 如果未启用(=0),则完全依赖开仓时设置的55点固定SL/PT以及后续的移动管理。
5. 其他辅助机制重试机制:开仓若遇 REQUOTE 或 INVALID_TRADE_VOLUME,会重试最多2次,并动态调整手数。 日志与邮件:开仓成功或每日无信号时,均可发送邮件通知。 防重复开仓:通过全局变量 g_day_268 记录上次开仓的日期,当天不会再次开仓。
6. 策略本质与适用场景策略类型:固定时间动量+CCI双重确认,类似“开盘突破”但并非开盘,而是选择UTC凌晨5:30(对应亚洲早盘或美洲收盘后的清淡时段)。 核心逻辑:在特定时间,如果短期动量方向与CCI方向一致,且近期没有超大K线干扰,则顺着动能入场,并依靠窄止损(55点)和移动止盈/保本控制风险。 特点:
每天最多一单,交易频率低。 资金管理使每单风险可控(总资金的固定百分比)。 长K线过滤试图规避剧烈波动后的不确定性。
风险点:
固定时间入场可能忽略当时的波动率环境,虽有用ATR过滤历史K线,但非实时过滤。 初始止损为55点,若点差较大或快速行情,易被扫损。 动量指标参数60周期,在5:30时刻使用的是前一周期收盘的数据,有一定滞后性。
适用品种:倾向于波动温和、趋势性较好的货币对(如EURUSD、GBPUSD等),不适合剧烈震荡或高突发性品种。 我用的是exness平台,其他平台没有试过。 策略测试图片
|