| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- { 持有股票名称和成本价 }
- BUYDATE1:=1000000+250819;
- NAME1:='600487';
- PRICE1:=18.76;
- BUYDATE2:=BUYDATE1;
- NAME2:='301171';
- PRICE2:=34.10;
- BUYDATE3:=1000000+250818;
- NAME3:='301165';
- PRICE3:=74.57;
- BUYDATE4:=BUYDATE3;
- NAME4:='300806';
- PRICE4:=23.40;
- MYBUYPRICE:=IF(CODELIKE(NAME1),PRICE1,IF(CODELIKE(NAME2),PRICE2,IF(CODELIKE(NAME3),PRICE3,IF(CODELIKE(NAME4),PRICE4,0))));
- MYBUYDATE:=IF(CODELIKE(NAME1),BUYDATE1,IF(CODELIKE(NAME2),BUYDATE2,IF(CODELIKE(NAME3),BUYDATE3,IF(CODELIKE(NAME4),BUYDATE4,0))));
- 持仓天数 :=DATETODAY(DATE)-DATETODAY(MYBUYDATE);
- { ===================== 参数设置 ===================== }
- N1_BASE:=2;
- N2:=3;
- N3:=2;
- N4_BASE:=1.5;
- N5:=0.5;
- N6:=-5;
- STOPLOSS:=5;
- TAKEPROFIT:=10;
- 创业板标识 := CODELIKE('300') OR CODELIKE('301');
- N1 := IF(创业板标识, 2.75, N1_BASE);
- N4 := IF(创业板标识, 2.25, N4_BASE);
- { ===================== 时间控制 ===================== }
- 集合竞价时段 := MACHINETIME>=092500 AND MACHINETIME<=093000;
- 上午开盘后 := MACHINETIME >= (093000 + N2*100) AND MACHINETIME <= 113000;
- 下午开盘后 := MACHINETIME >= 130000 AND MACHINETIME <= 145500;
- 有效时段 := 上午开盘后 OR 下午开盘后;
- { ===================== 基础数据 ===================== }
- TR1 := MAX(MAX(H-L, ABS(REF(C,1)-H)), ABS(REF(C,1)-L));
- 相对ATR := MA(TR1,14)/REF(C,1)*100;
- 日内系数 := FROMOPEN/240;
- 分时均价 := DYNAINFO(11);
- 基准价 := MAX(O, REF(C,1));
- 持续高波动 := BARSLASTCOUNT(相对ATR > 0.5);
- 高波动天数 := SUM(相对ATR > 0.5, 100);
- 有效周期 := IF(相对ATR > 0.5, MIN(MAX(持续高波动, 高波动天数), 30), 10);
- 有效最高价 := HHV(H, 有效周期);
- 当前回撤 := IF(基准价>0, (有效最高价 - C)/基准价*100, 0);
- { ===================== 集合竞价策略 ===================== }
- 集合竞价低开 := (O-REF(C,1))/REF(C,1)*100;
- 集合卖出 := 集合竞价时段 AND (
- (MYBUYPRICE>0 AND (O - MYBUYPRICE)/MYBUYPRICE*100 <= -STOPLOSS)
- OR 集合竞价低开 < N6
- );
- { ===================== 动态止盈止损 ===================== }
- 当前盈利 := IF(MYBUYPRICE>0, (C - MYBUYPRICE)/MYBUYPRICE*100, 0);
- 动态止损 := MAX(STOPLOSS, 1.2 * 相对ATR);
- 动态止盈 := MAX(TAKEPROFIT, 当前盈利 - N4 * 相对ATR);
- 止损触发瞬时 := MYBUYPRICE>0 AND 当前盈利 <= -动态止损;
- 止盈准备瞬时 := MYBUYPRICE>0 AND 当前盈利 >= 动态止盈;
- { ---- 锁定逻辑 ---- }
- 止损锁定 := IF(BARSLAST(止损触发瞬时)=DRAWNULL,0, BARSLAST(止损触发瞬时)< 10000);
- 止盈准备锁定 := IF(BARSLAST(止盈准备瞬时)=DRAWNULL,0, BARSLAST(止盈准备瞬时)< 10000);
- { ===================== 动态回撤阈值 ===================== }
- 动态回撤阈值 := (1 + 相对ATR/100) * N1 * (1 - 0.3*日内系数) * N3;
- { ===================== 量价动能 ===================== }
- 缩量回落 := V < MA(V,20) * 0.8;
- DIF := EMA(C,12)-EMA(C,26);
- 动能转弱 := DIF < REF(DIF,1) AND MACD<0;
- 下破均价 := C < 分时均价 AND REF(C,1) >= REF(分时均价,1);
- { ===================== 板块计算 ===================== }
- 行业涨幅 := HORCALC(HYBLOCK,105,2,3);
- 板块弱势 := 行业涨幅 < REF(行业涨幅,1) AND 行业涨幅 < 0;
- { ===================== L2信号 ===================== }
- 主力对倒 := L2_AMO(1,3) > L2_AMO(1,2)*1.2
- AND (L2_AMO(1,3)+L2_AMO(1,2)) > MA(V,10)*C*0.3;
- 主动出货 := L2_AMO(0,3) > L2_AMO(0,2)*2
- AND L2_VOL(0,3)/V > 0.3
- AND V/MA(V,5) > 1.2;
- { ===================== 信号分层 ===================== }
- 强制卖出 := 止损锁定 OR 主动出货;
- HS300C:="399300$C";
- HS300ATR:= MA(ABS(REF(HS300C,1)-HS300C),14)/REF(HS300C,1)*100;
- 大盘弱势:=HS300C < REF(HS300C,1) * (1 - HS300ATR*N5/100);
- 弱信号1 := (当前回撤 >= 动态回撤阈值) AND 下破均价;
- 弱信号2 := 缩量回落 AND 动能转弱;
- 弱信号3 := 板块弱势;
- 弱信号4 := 主力对倒;
- 弱信号5 := 大盘弱势;
- 组合卖出 := (弱信号1 + 弱信号2*2 + 弱信号3 + 弱信号4 + 弱信号5) >= 3;
- { ===================== 成交过滤 ===================== }
- 基础过滤 := V > MA(V,5)*0.7;
- 紧急情况 := (REF(C,1)-C)/REF(C,1)*100 > 5
- OR (止损锁定 AND EVERY(V < MA(V,5)*0.8, 3))
- OR C <= ROUND(REF(C,1)*0.9*100)/100;
- 创业板紧急情况 := (REF(C,1)-C)/REF(C,1)*100 > 4
- OR (止损锁定 AND EVERY(V < MA(V,5)*0.8, 2))
- OR C <= ROUND(REF(C,1)*0.86*100)/100;
- 成交过滤 := IF(创业板标识, 基础过滤 OR 创业板紧急情况, 基础过滤 OR 紧急情况);
- { ===================== 综合信号 ===================== }
- 综合信号瞬时 := MYBUYPRICE>0 AND (
- 集合卖出
- OR (有效时段 AND (强制卖出 OR 组合卖出))
- OR (止盈准备锁定 AND (强制卖出 OR 组合卖出))
- )
- AND 成交过滤
- AND 持仓天数>=1;
- { ---- 综合信号锁定(记忆功能) ---- }
- 综合信号锁定 := IF(BARSLAST(综合信号瞬时)=DRAWNULL,0, BARSLAST(综合信号瞬时)< 10000);
- { ---- 自动清零逻辑:新建仓时重置 ---- }
- 综合信号 : IF(MYBUYPRICE>0, 综合信号锁定, 0);
- { ===================== 可视化 ===================== }
- DRAWICON(综合信号, L*0.98, 2);
|