源码:
起点位X值:=X间隔值/10;
起点位Y值:=Y间隔值/10;
概念:=STRCAT('概念: ',GNBLOCK);
DRAWTEXT_FIX(C>0,0*起点位X值,0.5*起点位Y值,0,概念),COLORYELLOW;
地域:=STRCAT(DYBLOCK,'');
DRAWTEXT_FIX(C>0,0*起点位X值,3.5*起点位Y值,0,地域),COLORWHITE;
行业:=STRCAT(HYBLOCK,'');
DRAWTEXT_FIX(C>0,4*起点位X值,3.5*起点位Y值,0,行业),COLORWHITE;
LTSZ:=STRCAT(STRCAT('总市值: ',CON2STR(FINANCE(41)/100000000,2)),' 亿元');
DRAWTEXT_FIX(C>0,8*起点位X值,3.5*起点位Y值,0,LTSZ),COLORWHITE;
DD:=C;
即时点:REFDATE(DD,DATE)*IF(CURRBARSCOUNT<23,1,DRAWNULL),DOTLINE,COLORLICYAN,LINETHICK1;
DRAWTEXT(CURRBARSCOUNT=22,即时点*1,VAR2STR(即时点,2))COLORGREEN;
STICKLINE(C>=O,C,O,3,0),COLOR000045;
STICKLINE(C>=O,C,O,2.5,0),COLOR000065;
STICKLINE(C>=O,C,O,2,0),COLOR000085;
STICKLINE(C>=O,C,O,1.5,0),COLOR0000A5;
STICKLINE(C>=O,C,O,1,0),COLOR0000C5;
STICKLINE(C>=O,C,O,0.5,0),COLOR0000E5;
STICKLINE(C>=O,H,L,0,0),COLOR0000F5;
STICKLINE(C
STICKLINE(C
STICKLINE(C
STICKLINE(C
STICKLINE(C
STICKLINE(C
STICKLINE(C
VAR1:=(CLOSE+HIGH+LOW)/3;
VAR2:=EMA(VAR1,10);
VAR3:=REF(VAR2,1);
看多:IF(VAR2>VAR3,VAR2,DRAWNULL), POINTDOT,LINETHICK6, COLORYELLOW;
看空:IF(VAR2
阳涨幅:=7;
阳倍量:=1;
单阳开:=O;
单阳收:=C;
单阳:=C>=O*(1+阳涨幅/100) AND VOL>REF(VOL,1)*阳倍量;
BKKK:=IF(INBLOCK('科创板'),0.2,IF(INBLOCK('创业板'),0.2,IF(INBLOCK('主板'),0.1,0.1)));
涨停板:=C>=ZTPRICE(REF(C,1),BKKK) AND C=H;
K线实体:=ABS(C-O)/REF(C,1);
双倍量:=(V/REF(MA(V,5),1)>=2) OR (V/REF(V,1)>=3);
倍量0:=C>O&&双倍量&&C>EMA(C,13)&&V=HHV(V,6);
倍量:=TFILTER(倍量0,C
位置要求:=L/EMA(C,13)<1.05;
SPX0:=H/REF(C,1)>=1.06&&H=HHV(H,6)&&倍量0&&H/C>1.005&&C/REF(C,1)>1.015&&
位置要求&&K线实体>0.01&& BKKK;
SPX1:=H/REF(C,1)>=1.11&&H=HHV(H,6)&&倍量0&&H/C>1.005&&C/REF(C,1)>1.015&&
位置要求&&K线实体>0.02&& BKKK;
SPX2:=SPX0 OR SPX1 OR 单阳 AND 倍量0;
SPX3:=SPX2&&NOT(EXISTR(SPX2,6,1));
试盘K线:=FILTER(SPX3,5) ;
STICKLINE(试盘K线,H,L,0,0),COLORFF55FF;
STICKLINE(试盘K线,C,O,3.1,0),COLOR880088;
STICKLINE(试盘K线,C,O,2.6,0),COLORAA00AA;
STICKLINE(试盘K线,C,O,1.9,0),COLORCC00CC;
STICKLINE(试盘K线,C,O,1.1,0),COLOREE00EE;
STICKLINE(试盘K线,C,O,0.2,0),COLORFF44FF;
SPZQ:=BARSLAST(试盘K线);
试盘最高不破:=LAST(H<=REF(H,SPZQ),2,1);
洗盘不破:=COUNT(EMA(C,13)
[
]
洗盘K00:=C
龙抬头K0:=EXIST(试盘K线,10)&&H
=EMA(C,13)&&L<=REF(C,SPZQ)&&C
COUNT(洗盘K00,SPZQ)<2;
洗盘K:=TFILTER(洗盘K00,试盘K线,1);
XPZQ:=BARSLAST(洗盘K);
起飞K0:=EXISTR(试盘K线,10,3)&&C>REF(H,XPZQ)&&L
[
O
]
&&洗盘不破&&(H-C)/(C-O)<1&&COUNT(C>REF(H,XPZQ),XPZQ)=1;
起飞K1:=EXISTR(试盘K线,10,2)&&EVERY(C>=EMA(C,13),SPZQ)&&C>REF(H,XPZQ)&&O
[
]
&&EXISTR(洗盘K,SPZQ,1)&&涨停板&&COUNT(涨停板,10)=1;
起飞K3:=起飞K0 OR 起飞K1;
起飞K:=FILTER(起飞K3,5);
{金柱}
STICKLINE(起飞K,O,C,3.1,0),COLOR00AAFF;
STICKLINE(起飞K,O,C,2.1,0),COLOR00BBFF;
STICKLINE(起飞K,O,C,1.5,0),COLOR00CCFF;
STICKLINE(起飞K,O,C,1,0),COLOR00DDFF;
STICKLINE(起飞K,O,C,0.6,0),COLOR00EEFF;
STICKLINE(起飞K,O,C,0.2,0),COLOR00FFFF;
STICKLINE(起飞K,H,L,0,0),COLOR00FFFF;
{银柱}
STICKLINE(FILTER(起飞K,5),O,L,0,0),COLORFFFFFF;
STICKLINE(FILTER(起飞K,5),O,MAX(O,REF(H,XPZQ)),3.1,0),COLOR555555;
STICKLINE(FILTER(起飞K,5),O,MAX(O,REF(H,XPZQ)),2.6,0),COLOR777777;
STICKLINE(FILTER(起飞K,5),O,MAX(O,REF(H,XPZQ)),1.9,0),COLOR999999;
STICKLINE(FILTER(起飞K,5),O,MAX(O,REF(H,XPZQ)),1.1,0),COLORCCCCCC;
STICKLINE(FILTER(起飞K,5),O,MAX(O,REF(H,XPZQ)),0.2,0),COLORFFFFFF;
起涨K0:=H>REF(H,XPZQ)&&H/REF(C,1)>1.03&&C>O&&EXIST(试盘K线,10)
&&EXIST(洗盘K,SPZQ)&&C
[
]
起涨K1:=EXISTR(试盘K线,1,1)&&C>O&&C
[
REF(C,1)&&H
][
]
起涨K2:=起涨K0 OR 起涨K1;
起涨K:=FILTER(起涨K2,5);
STICKLINE(起涨K,H,L,0,0),COLOR00FFFF;
STICKLINE(起涨K,C,O,3.1,0),COLOR00AAFF;
STICKLINE(起涨K,C,O,2,0),COLOR00BBFF;
STICKLINE(起涨K,C,O,1,0),COLOR00EEFF;
STICKLINE(起涨K,C,O,0.2,0),COLOR00FFFF;
天地线:EMA(C,13),COLORRED,LINETHICK2;
IF(天地线
[
]
DRAWTEXT(FILTER(起飞K,10),L*0.98,'↖起飞K'),COLORYELLOW;
DRAWTEXT(起涨K,L*0.98,'↖起涨K'),COLORYELLOW;
DRAWTEXT(洗盘K,H*1.01,'↙洗盘K')COLORGREEN;
DRAWTEXT(试盘K线&&NOT(起飞K),L*0.98,'↖试盘K'),COLORLIMAGENTA;
KK1:=SUMBARS(洗盘K,1);
KK2:=SUMBARS(试盘K线,1);
STICKLINE(KK1<10&&KK2<11,REF(H,XPZQ),REF(H,XPZQ),3.1,0),COLORWHITE;
KK11:=SUMBARS(试盘K线,1);
KK22:=SUMBARS(试盘K线,1);
STICKLINE(KK11<16&&KK22<17,REF(L,SPZQ),REF(L,SPZQ),4.1,0),COLORMAGENTA;
VARZTT:=BARSLAST(洗盘K);
DRAWTEXT(VARZTT=2,L*0.99,'3'),COLORYELLOW;
DRAWTEXT(VARZTT=4,L*0.99,'5'),COLORYELLOW;
DRAWTEXT(VARZTT=7,L*0.99,'8'),COLORYELLOW;
DRAWTEXT(VARZTT=12,L*0.99,'13'),COLORYELLOW;
DRAWTEXT(VARZTT=20,L*0.99,'21'),COLORYELLOW;
ZTJ:=ZTPRICE(REF(CLOSE,1),0.1);
DTJ:=DTPRICE(REF(CLOSE,1),0.1);
{K线}
阳线:=C>O;
上影线:=(H-MAX(C,O))/REF(C,1);
涨停:=C/REF(C,1)>1.098&&H=C;
昨日涨停:=REF(C,1)=REF(ZTJ,1);
两连板:=EVERY(涨停,2);
五连板:=EVERY(涨停,5);
昨日非涨停:=REF(C,1)/REF(C,2)<1.098&&REF(H,1)>REF(C,1);
不存在五连板:=NOT(EXIST(五连板,90));
不存在二连板:=NOT(EXIST(两连板,7));
最低跌停:=L=DTJ;
{成交量}
双倍放量:=V/REF(V,1)>=2&&V/MA(V,100)>=2;
三倍放量:=V/REF(V,1)>=3&&V/MA(V,100)>1.1;
主力上班量0:=(三倍放量 OR 双倍放量)&&不存在五连板&&不存在二连板&&不存在五连板&&
COUNT(最低跌停,10)<2&&昨日非涨停&&阳线;
主力上班量:=FILTER(主力上班量0,3);
昨日长实体涨停:=昨日涨停&&REF(K线实体,1)>0.05;
组合试盘:=昨日长实体涨停&&NOT(EXIST(两连板,10))&&COUNT(主力上班量,2)>=1&&
O>REF(C,1)&&上影线>0.02&&V/REF(V,1)>2&&L>REF(O,1)&&C
ZHSPZQ:=BARSLAST(组合试盘);
试盘无新低:=COUNT(C
[
]
起爆点1:=涨停&&EXIST(试盘K线,15)&&试盘无新低&&COUNT(涨停,SPZQ)=1;
起爆点2:=EXIST(组合试盘,15)&&涨停&&C>O&&LLV(L,ZHSPZQ)>=REF(O,ZHSPZQ+1)&&COUNT(涨停,ZHSPZQ)=1;
起爆点3:=EXIST(起爆点1,14)&&涨停&&C>O&&试盘无新低&&COUNT(涨停,SPZQ)=2&&昨日非涨停;
起爆点:=起爆点1 OR 起爆点2 OR 起爆点3;
STICKLINE(起爆点,OPEN,CLOSE,3.1,0),COLOR00AAFF;
STICKLINE(起爆点,OPEN,CLOSE,2.9,0),COLOR00BBFF;
STICKLINE(起爆点,OPEN,CLOSE,1.9,0),COLOR00CCFF;
STICKLINE(起爆点,OPEN,CLOSE,1.7,0),COLOR00DDFF;
STICKLINE(起爆点,OPEN,CLOSE,1.5,0),COLOR00EEFF;
STICKLINE(起爆点,OPEN,CLOSE,0.5,0),COLOR00FFFF;
STICKLINE(起爆点,H,L,0,0),COLOR00FFFF;
DRAWTEXT(起爆点1 OR 起爆点2,H*1.02,'↙起爆点'),COLOR00AAFF;
DRAWTEXT(起爆点3,H*1.03,'↙涨停回马枪'),COLOR00AAFF;
DRAWICON(起爆点,L*0.9,28);
DRAWTEXT(组合试盘,H*1.01,'↙组合试盘'),COLOR0000FF;
两连板1:=EVERY(涨停,2)&&EXIST(C>O,2);
三连板:=EVERY(涨停,3);
四连板:=EVERY(涨停,4);
三天两板:=COUNT(涨停&&C>O,3)=2&&C>REF(C,2)&&NOT(EXIST(两连板,3));
强庄10:=EVERY(C>O,6)&&H
MA(V,100),5);
强庄1:=FILTER(强庄10,30);
强庄20:=(两连板1 OR 三天两板)&&NOT(三连板)&&NOT(EXIST(四连板,180))&&NOT(EXIST(起爆点,60));
强庄2:=FILTER(强庄20,30);
强庄3:=EVERY(H=ZTJ,2)&&EXIST(C
0.07,2)&&EVERY(V=HHV(V,60),2)&&
NOT(EXIST(强庄2,3))&&NOT(EXIST(起爆点,60));
强庄0:=强庄1 OR 强庄2 OR 强庄3;
强庄:=TFILTER(强庄0,EMA(C,10)
DRAWTEXT(强庄1,L*0.97,'↖连阳吸筹'),COLORWHITE;
DRAWTEXT(强庄2,L*0.97,'↖连板抢筹'),COLORWHITE;
DRAWTEXT(强庄3,L*0.97,'↖爆量阳抢筹'),COLORMAGENTA;
CO:=(C-O);
E:=(HIGH+LOW+OPEN+2*CLOSE)/5;
阻力:=2*E-LOW;
支撑:=2*E-HIGH;
DRAWTEXT_FIX(C!=0,0.89,0.89,0,STRCAT('短期阻力位:',STRCAT(CON2STR(阻力,2),' '))),COLORFFFF00;{COLOR346536;}
DRAWTEXT_FIX(C!=0,0.89,0.99,0,STRCAT('短期支撑位:',STRCAT(CON2STR(支撑,2),' '))),COLORRED;{COLORBD005F;}
X1:=IF(MA(C,5)>MA(C,10),20,0);
X2:=IF(MA(C,20)>MA(C,60),10,0);
X3:=IF(KDJ.J>KDJ.K,10,0);
X4:=IF(MACD.DIF>MACD.DEA,10,0);
X5:=IF(MACD.MACD>0,10,0);
X6:=IF(V>MA(V,60),10,0);
X7:=IF(WINNER(C)>0.5,10,0);
X8:=IF(C/REF(C,1)>1.03,10,0);
XX:=X1+X2+X3+X4+X5+X6+X7+X8;
DRAWTEXT_FIX(V>O,0.69,0.99,0,STRCAT('量化增强分:',STRCAT(CON2STR(XX,2),' '))),COLOR00AAFF;
TS:=BARSCOUNT(CLOSE)>=10;
MM:=EMA((3*CLOSE+HIGH+LOW+OPEN)/6,20),COLORBLUE,LINETHICK1;
FL:=HHV(MM,5),LINETHICK1,COLORGREEN;
FS:=MM-(FL-MM),LINETHICK1,COLORRED;
FS2:=IF(FL>MM,MM-(FL-MM),DRAWNULL),LINETHICK1,COLORGREEN;
三线:=FL=FS AND REF(FL,1)>REF(FS,1);
XA:=FILTER(FL=FS AND BARSLAST(三线) <=4 AND TS AND C>=O AND V>=REF(V,1)*2 AND C/REF(C,1)>1.03,5);
M1:=H/REF(C,BARSLAST(XA)+1),NODRAW;
M2:=HHV(V,BARSLAST(XA)),NODRAW;
减仓:=H/REF(C,BARSLAST(XA)+1)>1.5 AND C
DRAWTEXT(XA,L*0.99,'强庄'),COLORFFFFFF;
DRAWTEXT(FL=FS AND REF(FL,1)>REF(FS,1) AND TS AND C>=O AND V=HHV(V,6)
AND NOT(XA),H*1.01,'异动'),COLORFF00FF;
DRAWTEXT(减仓,H*1.03,'高抛'),COLORGREEN;
缺口不补:L>REF(H,1)COLORWHITE,NODRAW;
DRAWTEXT(缺口不补,LOW*0.98,'')COLORMAGENTA;
K111:=SUMBARS(缺口不补,1);
VOLUME:=VOL,VOLSTICK;
MAVOL1:=MA(VOLUME,5);
MAVOL2:=MA(VOLUME,10);
三线倍量:=V>=REF(V,1)*2 AND C>=O;
AA2:=C/REF(C,1)>1.09 AND C/REF(C,1)<1.11;
换手率:=VOL/CAPITAL*100;
换手率2:=换手率>=2 AND 换手率<=21;
涨幅1:=(H-L)/REF(C,1)*100;
涨幅2:=涨幅1>=7 AND 涨幅1<=15;
火箭发射:=AA2 AND 换手率2 AND 涨幅2 AND 三线倍量;
DRAWTEXT(火箭发射,LOW*1,'游资点火'),COLORFF00FF;
P:=250;
涨停价:=ZTPRICE(REF(CLOSE,1),0.1);
跌停价:=DTPRICE(REF(CLOSE,1),0.1);
开板:=((HIGH>=涨停价) AND (CLOSE
涨停数:=COUNT((C>=涨停价) AND L!=C,P),NODRAW;
开板数:=COUNT(开板,P),NODRAW;
跌停数:=COUNT(C<=跌停价,P),NODRAW;
封板率:=ROUND((1-(开板数/(涨停数+开板数)))*100);
涨停1:=C>=涨停价 AND L!=C;
多连板:=HHV(BARSLAST(NOT(涨停1)),P);
股性分数:=ROUND(多连板*3+涨停数*2+开板数-跌停数+封板率);
DRAWTEXT_FIX(CLOSE>0,0.00,0.99,0,STRCAT(STRCAT('多连板:',CON2STR(多连板,0)),'板')),COLORRED;
DRAWTEXT_FIX(CLOSE>0,0.10,0.99,0,STRCAT(STRCAT('涨停数:',CON2STR(涨停数,0)),'个'))COLORRED;
DRAWTEXT_FIX(CLOSE>0,0.20,0.99,0,STRCAT(STRCAT('开板数:',CON2STR(开板数,0)),'个'))COLORRED;
DRAWTEXT_FIX(CLOSE>0,0.30,0.99,0,STRCAT(STRCAT('跌停数:',CON2STR(跌停数,0)),'个'))COLORRED;
DRAWTEXT_FIX(CLOSE>0,0.40,0.99,0,STRCAT(STRCAT('封板率:',CON2STR(封板率,0)),'%'))COLORRED;
DRAWTEXT_FIX(CLOSE>0,0.50,0.99,0,STRCAT(STRCAT('股性分:',CON2STR(股性分数,0)),'分'))COLORMAGENTA;
CC2:=REF(C,1);
曾涨停A:=IF((H-REF(C,1))*100/REF(C,1)>=(10-0.01*100/REF(C,1)),1,0) AND C
涨停A:=IF((C-CC2)*100/CC2>=(10-0.01*100/CC2),1,0);
LDM41:=COUNT(涨停A,250);
ZLDM41:=COUNT(涨停A,500);
CDM41:=COUNT(曾涨停A,500);
CZJL:=ZLDM41+CDM41;
ZCPD:=ZLDM41/CZJL*100;
涨停股性:=STRCAT(STRCAT('股性: ',CON2STR((ZCPD),0)),' 分');
DRAWTEXT_FIX(1,0.60,0.99,0,涨停股性),COLORYELLOW;
DIR2:=ABS(CLOSE-REF(CLOSE,30));
VIR2:=SUM(ABS(CLOSE-REF(CLOSE,1)),30);
ER2:=DIR2/VIR2;
CS2:=ER2*(0.8-2/24)+2/24;
CQ2:=CS2*CS2;
VAR1A:=DMA(AMOUNT/VOL/100,VOL/CAPITAL);
VAR4AA:=C/(REF(CLOSE,1))>1.05;
M熊:=EMA(DMA(CLOSE,CQ2),2),COLORGREEN,LINETHICK1;
主力入场:=(FILTER(VAR4AA>0,34)) AND C>M熊 ;
牛熊:=M熊;
{M震:IF(M熊/REF(M熊,1)>0.997,M熊,DRAWNULL),COLORBLUE,LINETHICK2;
M牛:IF(M熊/REF(M熊,1)>1.001,M熊,DRAWNULL),COLORRED,LINETHICK2;}
XX1:=C>牛熊 AND 牛熊>REF(牛熊,1);
DRAWTEXT_FIX(ISLASTBAR AND XX1,0.8,0.99,0,'【处于牛区】'),COLORRED,LINETHICK2;
XX2:=C
DRAWTEXT_FIX(ISLASTBAR AND XX2,0.8,0.99,0,'【处于熊区】'),COLORGREEN,LINETHICK2;
{STICKLINE(主力入场 AND C/REF(C,1)>1.092 AND C=H,C,O,1,0),COLOR00FFFF;}
DRAWTEXT(主力入场,L*0.96,'↖主力入场'),COLORYELLOW;
DRAWICON(主力入场,L,9);
{STICKLINE( H=ZTPRICE(REF(C,1),0.1),O,C,3,0),COLOR00FFFF;};
CJJR:=AMOUNT/VOL/100;
PJJ:=(3*HIGH+LOW+OPEN+2*CLOSE)/7;
HJJR:=SUM(AMOUNT,-1*-5)/CJJR/100;
CYCN:= DMA(PJJ,VOL/HJJR);
T:=((CLOSE-CYCN)/CYCN)*100;
盈亏比:((CLOSE-CYCN)/CYCN)*100,NODRAW;
DRAWTEXT_FIX(V>O,0.69,0.89,0,STRCAT('盈亏比分数:',STRCAT(CON2STR(盈亏比,2),' '))),COLORYELLOW;
解读:
StartXValue := XIntervalValue / 10; 和 StartYValue := YIntervalValue / 10;:计算用于在图表上显示信息的起点位置的 X 和 Y 坐标值,这些坐标可能用于定位各种文本信息在 K 线图上的显示位置。
Concept := STRCAT('Concept: ', GNBLOCK); 和 DRAWTEXT_FIX(C > 0, 0 * StartXValue, 0.5 * StartYValue, 0, Concept), COLORYELLOW;:将股票的概念信息(GNBLOCK)与 "Concept:" 拼接,并在特定位置(由 StartXValue 和 StartYValue 确定)以黄色显示该信息。类似地,对于地域(DYBLOCK)和行业(HYBLOCK)信息,也使用相同的方式进行显示,分别以白色显示在不同位置。
LTSZ := STRCAT(STRCAT('Total Market Value: ', CON2STR(FINANCE(41) / 100000000, 2)), ' Billion'); 和 DRAWTEXT_FIX(C > 0, 8 * StartXValue, 3.5 * StartYValue, 0, LTSZ), COLORWHITE;:计算并显示股票的总市值信息,先通过 FINANCE(41) 函数获取总市值数据,除以 1 亿并转换为字符串后,与 "Total Market Value:" 拼接,然后显示在相应位置。
STICKLINE(C >= O, C, O, 3, 0), COLOR000045; 等一系列 STICKLINE 语句:根据收盘价(C)和开盘价(O)的关系绘制 K 线。当收盘价大于等于开盘价时,绘制阳线,不同的 STICKLINE 语句通过不同的参数设置了阳线的粗细和颜色。对于阴线,使用 C < O 的条件绘制,同样通过多个 STICKLINE 语句设置不同粗细和颜色。
VAR1:=(CLOSE + HIGH + LOW) / 3; 和 VAR2:=EMA(VAR1, 10); 等:计算平均价格(VAR1)并通过 EMA 函数计算 10 日指数移动平均线(VAR2),通过比较 VAR2 及其前一日的值(VAR3),来绘制看多(Bullish)和看空(Bearish)指标,以点线和不同颜色显示,用于反映股价的短期趋势。
阳涨幅 := 7; 和 阳倍量 := 1; 设定了判断单阳的涨幅和倍量的参数。
单阳开 := O; 和 单阳收 := C; 存储单阳的开盘价和收盘价。
单阳 := C >= O * (1 + 阳涨幅 / 100) AND VOL > REF(VOL, 1) * 阳倍量;:判断是否为单阳,即当日收盘价涨幅超过设定比例(这里是 7%)且成交量是前一日成交量的设定倍数(这里是 1 倍)。
BKKK:=IF(INBLOCK('科创板'),0.2,IF(INBLOCK('创业板'),0.2,IF(INBLOCK('主板'),0.1,0.1)));:根据股票所属的不同板块(科创板、创业板、主板)确定涨停板的幅度,科创板和创业板为 20%,主板为 10%。
涨停板 := C >= ZTPRICE(REF(C, 1), BKKK) AND C = H;:判断当日是否为涨停板,即收盘价达到根据前一日收盘价计算的涨停价格(使用 ZTPRICE 函数)且收盘价等于当日最高价。
K线实体 := ABS(C - O) / REF(C, 1); 计算 K 线实体的相对长度。
双倍量 := (V / REF(MA(V, 5), 1) >= 2) OR (V / REF(V, 1) >= 3); 用于判断是否为双倍量,即成交量是前一日或 5 日平均成交量的一定倍数。
倍量0 := C > O && 双倍量 && C > EMA(C, 13) && V = HHV(V, 6); 和 倍量 := TFILTER(倍量0, C < O && H < REF(H, 1), 1);:满足一定条件的倍量判断,如收盘价大于开盘价、满足双倍量、收盘价大于 13 日指数移动平均线且成交量是近 6 日最高量,再通过 TFILTER 函数进行过滤得到最终的倍量信号。
SPX0 和 SPX1 是两种不同的试盘模式条件,包含了涨幅、量能、K 线实体、价格位置等多方面的条件。
SPX2:=SPX0 OR SPX1 OR 单阳 AND 倍量0 ; 组合不同的试盘条件。
SPX3:=SPX2 && NOT(EXISTR(SPX2, 6, 1)); 排除近期已经出现过该试盘条件的情况。
试盘K线 := FILTER(SPX3, 5); 对最终试盘条件进行过滤得到试盘 K 线信号,并通过 STICKLINE 绘制试盘 K 线,用不同颜色和粗细的线条显示其特征。
SPZQ:=BARSLAST(试盘K线); 计算距离上一次试盘 K 线的周期数。
试盘最高不破 := LAST(H <= REF(H, SPZQ), 2, 1); 检查在一定周期内最高价是否未超过试盘时的最高价。
洗盘不破 := COUNT(EMA(C, 13) < REF(EMA(C, 13), 1), SPZQ) < 2; 检查在试盘后的一定周期内 13 日指数移动平均线是否未明显下降。
洗盘K00:=C < O && H < REF(H, 1); 为洗盘 K 线的基本条件,即收盘价小于开盘价且当日最高价小于前一日最高价。