等级: 免费版
- 注册:
- 2021-6-13
- 曾用名:
|
<PEL>
INPUT:
FastPeriod(3, 2, 10), // 快速EMA周期:3
SlowPeriod(10, 5, 20), // 慢速EMA周期:10
ATRPeriod(14), // ATR周期:14
MinVol(300), // 最低成交量过滤:300手
ProfitRatio(1.5), // 止盈ATR倍数:1.5
LossRatio(0.8); // 止损ATR倍数:0.8
//===== 变量声明(按PEL规范)=====
VAR:
FastMA(0), // 快速EMA
SlowMA(0), // 慢速EMA
ATRVal(0), // ATR值
VolFilter(False);
//===== 指标计算 =====
FastMA = EMA(CLOSE, FastPeriod); // ✔️ 100%正确调用参数
SlowMA = EMA(CLOSE, SlowPeriod);
ATRVal = ATR(ATRPeriod);
VolFilter = VOL >= MinVol;
//===== 信号逻辑 =====
BuyCondition = CROSS(FastMA, SlowMA) AND CLOSE > SlowMA AND VolFilter;
SellCondition = CROSS(SlowMA, FastMA) AND CLOSE < SlowMA AND VolFilter;
//===== 交易执行(仅限夜盘21:00-23:00)=====
IF TIME >= 2100 AND TIME < 2300 THEN BEGIN
// 开多单
IF BuyCondition AND HOLDING <= 0 THEN BEGIN
BUY(1, 1, LMT, DYNAINFO(7) + MINDIFF);
SETSTOPLOSS(LOSSREF, LossRatio * ATRVal); // 动态止损
SETPROFITTAKE(ProfitRatio * ATRVal); // 动态止盈
END;
// 开空单
IF SellCondition AND HOLDING >= 0 THEN BEGIN
SELLSHORT(1, 1, LMT, DYNAINFO(7) - MINDIFF);
SETSTOPLOSS(LOSSREF, LossRatio * ATRVal);
SETPROFITTAKE(ProfitRatio * ATRVal);
END;
// 22:59:00强制平仓
IF TIME >= 2259 THEN BEGIN
SELL(1, 0, MKT);
BUYSHORT(1, 0, MKT);
END;
END; |
|