 
等级: 超级版主
- 注册:
- 2021-5-18
- 曾用名:
|
INPUT:
FastLength(12,5,20), // 快线周期
SlowLength(26,10,30), // 慢线周期
MACDLength(9,5,20); // MACD信号线周期
// 计算MACD指标
DIFF := EMA(CLOSE,FastLength) - EMA(CLOSE,SlowLength); // 快线[^8]
DEA := EMA(DIFF,MACDLength); // 慢线[^8]
MACD := (DIFF-DEA)*2; // MACD柱[^8]
// 定义红绿柱状态
RedBar := MACD > 0; // 红柱条件[^8]
GreenBar := MACD < 0; // 绿柱条件[^8]
// 统计连续红柱数量
variable:RedBarCount := 0; // 初始化红柱计数器[^2]
IF RedBar THEN
RedBarCount := RedBarCount + 1; // 红柱计数累加[^2]
ELSE
RedBarCount := 0; // 非红柱时重置计数器[^2]
// 交易信号条件
ShortCondition := RedBarCount < 6 AND CROSS(GreenBar,RedBar); // 红柱小于6根转绿[^8][^1]
// 交易系统
IF HOLDING = 0 AND ShortCondition THEN BEGIN // 空仓且满足条件时[^2]
BUYSHORT(1,1,MARKETR); // 开空单[^8]
END;
// 平仓条件(示例:MACD金叉平空)
CoverCondition := CROSS(DIFF,DEA); // MACD金叉[^8]
IF HOLDING < 0 AND CoverCondition THEN BEGIN // 持有空单且满足平仓条件[^2]
SELLSHORT(1,1,MARKETR); // 平空单[^8]
END; |
|