
等级: 新手上路
- 注册:
- 2024-3-26
- 曾用名:
|
// 新增:跨周期参数(可关闭验证)
INPUT:EnableMultiTimeframe(1,0,1,1){是否启用跨周期验证(1=启用,0=关闭)};
INPUT:RequiredPeriods(2,1,4,1){需同步的周期数(1-4)}; // 需多少个周期方向一致才开仓
VAR WEEK_DIFF:EMA(DATA("WEEK",CLOSE),MACD短周期) - EMA(DATA("WEEK",CLOSE),MACD长周期); // 周线DIFF
VAR DAY_DIFF:EMA(DATA("Day",CLOSE),MACD短周期) - EMA(DATA("Day",CLOSE),MACD长周期); // 日线DIFF
VAR HOUR_DIFF:EMA(DATA("60",CLOSE),MACD短周期) - EMA(DATA("60",CLOSE),MACD长周期); // 小时线DIFF
VAR MIN30_DIFF:EMA(DATA("30",CLOSE),MACD短周期) - EMA(DATA("30",CLOSE),MACD长周期); // 30分钟DIFF
// 新增:各周期方向一致性判断(1=多头,-1=空头,0=无信号)
VAR CurrentDir:IF(DIFF>DEA,1,IF(DIFF<DEA,-1,0)); // 当前周期方向
VAR WeekDir:IF(WEEK_DIFF>REF(WEEK_DIFF,1),1,IF(WEEK_DIFF<REF(WEEK_DIFF,1),-1,0)); // 周线方向(用DIFF趋势代替交叉)
VAR DayDir:IF(DAY_DIFF>REF(DAY_DIFF,1),1,IF(DAY_DIFF<REF(DAY_DIFF,1),-1,0)); // 日线方向
VAR HourDir:IF(HOUR_DIFF>REF(HOUR_DIFF,1),1,IF(HOUR_DIFF<REF(HOUR_DIFF,1),-1,0)); // 小时线方向
VAR Min30Dir:IF(MIN30_DIFF>REF(MIN30_DIFF,1),1,IF(MIN30_DIFF<REF(MIN30_DIFF,1),-1,0)); // 30分钟线方向
// 新增:跨周期方向一致性统计
VAR BullishCount:0; // 多头方向周期数
VAR BearishCount:0; // 空头方向周期数
IF CurrentDir>0 THEN BullishCount:=BullishCount+1;
IF CurrentDir<0 THEN BearishCount:=BearishCount+1;
IF WeekDir>0 THEN BullishCount:=BullishCount+1;
IF WeekDir<0 THEN BearishCount:=BearishCount+1;
IF DayDir>0 THEN BullishCount:=BullishCount+1;
IF DayDir<0 THEN BearishCount:=BearishCount+1;
IF HourDir>0 THEN BullishCount:=BullishCount+1;
IF HourDir<0 THEN BearishCount:=BearishCount+1;
IF Min30Dir>0 THEN BullishCount:=BullishCount+1;
IF Min30Dir<0 THEN BearishCount:=BearishCount+1;
// 新增:跨周期验证条件(需至少`RequiredPeriods`个周期方向一致)
VAR MultiLong:EnableMultiTimeframe=1 AND BullishCount>=RequiredPeriods; // 多头跨周期确认
VAR MultiShort:EnableMultiTimeframe=1 AND BearishCount>=RequiredPeriods; // 空头跨周期确认
// 原开仓条件增加跨周期验证
longCondition:=Svalue<CLOSE AND DIFF>DEA AND (EnableMultiTimeframe=0 OR MultiLong); // 关闭验证时直接用原条件
shortCondition:=Svalue>CLOSE AND DIFF<DEA AND (EnableMultiTimeframe=0 OR MultiShort);
|
|