EA策略详细逻辑说明

专业的网格交易系统,通过严格的风险控制和动态参数调整实现稳定盈利

核心交易机制

网格交易系统

挂单策略

  • 📈 现价上方挂卖单(OP_SELLSTOP)
  • 📉 现价下方挂买单(OP_BUYSTOP)
  • 🎯 网格间距根据账户状态动态调整

双参数集系统

bool useSecondParams = (Money != 0 && totalProfit <= Money);
参数类型 FirstStep Step MinDistance
正常参数 60点 150点 120点
亏损参数 - 1800点 1500点

⚠️ 当总亏损 ≤ -5亿时自动激活亏损参数

订单管理逻辑

1. 首单规则

买单

价格 = Ask + FirstStep

限制:价格 < On_top_of_this_price_not_Buy_order

卖单

价格 = Bid - FirstStep

限制:价格 > On_under_of_this_price_not_Sell_order

2. 后续订单规则

price = (type == OP_BUYSTOP) ? Ask + (useSecondParams ? Step : TwoStep) * Point() : Bid - (useSecondParams ? Step : TwoStep) * Point();

3. 手数计算系统

lots = NormalizeDouble(lot * MathPow(K_Lot, orderCount) + orderCount * PlusLot, DigitsLot);
  • 📊 指数增长:初始手数 × (增长系数^订单数量)
  • 线性增长:+ 订单数量 × 额外手数
  • 🛡️ 上限控制:不超过 Maxlot

平仓条件(优先级从高到低)

1. 全平条件

条件 参数值 说明
总盈利 ≥ CloseAll 2 达到目标盈利
总亏损 ≤ StopLoss 0 触发止损
总亏损 ≤ MaxLossCloseAll -1 最大亏损保护

2. 单方向平仓

if(buyProfit > StopProfit * (buyOrders>0 ? buyOrders : 1)) CloseOrders(OP_BUY);

当买单或卖单总盈利超过 StopProfit × 订单数量时,平仓对应方向所有订单

3. 仓位失衡平仓

if(buyProfit>0 && buyLots > sellLots*3 && buyOrders>3) CloseOrders(OP_BUY);

当某方向手数超过对手方向3倍且有盈利时,平仓该方向订单以平衡仓位

挂单管理

挂单条件

  • 无同方向挂单存在
  • 方向总亏损 > MaxLoss (-50000)
  • 在交易时间窗内(Limit_StartTime - Limit_StopTime)

挂单修改机制

if(type == OP_BUYSTOP && currentPrice - StepTrallOrders*Point() > newPrice && newPrice <= oppositePrice - distance*Point()) { OrderModify(...); }

当价格不利变动超过 StepTrallOrders (30点) 时自动调整挂单位置

时间控制系统

双层时间过滤

bool eaActive = (currentTime在EA_StartTime和EA_StopTime之间); bool limitActive = (currentTime在Limit_StartTime和Limit_StopTime之间);

EA运行时间窗

控制EA是否激活

交易时间窗

控制是否允许挂单

✅ 完整支持跨午夜时间(如23:00-01:00)

开单模式

A模式

每根K线(TimeZone周期)只开单一次

C模式

满足条件立即开单

安全保护机制

前置检查

if(!eaActive || AccountLeverage() < Leverage || !IsTradeAllowed() || OrdersTotal() >= Totals || MarketInfo(Symbol(), MODE_SPREAD) > MaxSpread || AccountEquity() < MinEquity) { return; }
检查项 要求 当前状态
账户杠杆 ≥ 100 通过
点差 ≤ 35点 通过
账户净值 ≥ 10 通过
总订单数 < 5000 通过

资金保护

if(lots*2 > AccountFreeMargin()/MarketInfo(Symbol(), MODE_MARGINREQUIRED)) return;

确保账户有足够的可用保证金进行交易,防止爆仓风险

策略执行流程

开始
时间检查
统计持仓数据
盈利检查


挂单检查
价格限制检查
发送挂单
结束

策略核心优势

该策略通过严格的网格管理、动态参数调整和多层保护机制,在控制风险的同时实现稳定的网格交易。
核心优势在于亏损状态自动扩大网格间距的独特设计,以及复合仓位增长模型
特别适合震荡行情交易。