通达信天倍量到以前大于今天量主图画支撑压力线源码 说明
根据副图原理:
1、当副图开始画横线倍量日,在主图上取上述两点画倍量线,当日起用粉色粗线显示;
2、当副图开始画横线倍量日,在主图当日取两点间当日收盘价和以前大于当日收盘价处画价格线,当日起开始用黄色粗线显示;
3、副图当日向前个大于当日倍量处(横线起点),到当日倍量处均画白色线,两条白色线最高价位置为箱顶,最低价为箱底,自倍量处开始用矩形绿色线显示;
4、倍量线、价格线均对股价构成支撑或压力,股价在箱体里为好;
5、副图使用了未来函数,目的是为了画线,主图里用了画线函数,均不具有未来性质;
6、由于股软的限制,只能显示最后一处画线,即当条件成立时原画线不再显示;
【注】:本指标根据成交量异动原理在主图价格线画支撑、压力线,旨在通过量的变化观察价格的波动。
【量价主图】
ZF:=C/REF(C,1);
倍量:=V REF(V,1)*2;
N:=BARSLAST(倍量);
常数:=CONST(IF(N=0,V,REF(V,N)));
备注:=REFX(CROSS(常数,V),1);
最后倍量:=IF(IF(倍量,V,0)=REFX(REF(V,BARSLAST(倍量)),BARSNEXT(ISLASTBAR)),1,0);
GG:=C
阴线:=C
TT:=BARSLAST(备注);
TS:=IF(ISLASTBAR AND 最后倍量,REF(TT,1)+1,TT);
条件:=IF(备注,V,0)=REFX(REF(V,TS),BARSNEXT(倍量));
天数:=BARSLAST(条件),NODRAW;
倍量横线:=DRAWLINE(条件,常数,最后倍量,V,0);
常数1:=CONST(IF(N=0,C,REF(C,N)));
备注1:=REFX(CROSS(常数1,C),1);
最后倍量1:=IF(IF(倍量,C,0)=REFX(REF(C,BARSLAST(倍量)),BARSNEXT(ISLASTBAR)),
1,0);
TTT:=BARSLAST(备注1);
TSS:=IF(ISLASTBAR AND 最后倍量1,REF(TTT,1)+1,TTT);
条件1:=IF(备注1,C,0)=REFX(REF(C,TSS),BARSNEXT(倍量));
天1:=BARSLAST(条件1);
倍量横线1:=IF(天1 =REFX(REF(BARSNEXT(最后倍量1),天1),最后倍量1),
DRAWLINE(条件1,常数1,ISLASTBAR,常数1,1),DRAWNULL);
天数1:=IF(ISLASTBAR AND 最后倍量1=1,REF(天1,1)+1,IF(倍量横线1,天1,DRAWNULL));
DD1:=IF(BARSLAST(最后倍量=1) =0,DRAWLINE(天数=0,C,ISLASTBAR,REF(C,BARSLAST(天数=0)),1),DRAWNULL);
DD2:=IF(BARSLAST(最后倍量=1) =0,DRAWLINE(天数1=0,C,ISLASTBAR,REF(C,BARSLAST(天数1=0)),1),DRAWNULL);
DD3:=IF(BARSLAST(天数=0)=BARSLAST(天数1=0),常数1,DRAWNULL);
箱1:=IF(DD1 DD2,DD1,DD2);
箱2:=IF(DD1 DD2,DD1,IF(BARSLAST(天数=0)=BARSLAST(天数1=0),常数1,DD2));
STICKLINE(最后倍量=1,箱1,箱2,0,-1),COLORGREEN;
STICKLINE(ISLASTBAR,箱1,箱2,0,-1),COLORGREEN;
ZY:=DRAWLINE(天数=0,C,最后倍量=1,C,1);
JG:=DRAWLINE(天数1=0,C,最后倍量1=1,C,1);
DRAWKLINE(HIGH,OPEN,LOW,CLOSE);
DRAWBAND(ZY,RGB(255,255,255),ZY,RGB(1,0,1));
DRAWBAND(JG,RGB(255,255,255),JG,RGB(1,0,1));
倍量线:IF(BARSLAST(最后倍量=1) =0,ZY,DRAWNULL),COLORMAGENTA,LINETHICK2;
价格线:IF(BARSLAST(最后倍量=1) =0,JG,DRAWNULL),COLORYELLOW,LINETHICK2;
【箱顶】:箱1,COLORGREEN;
【箱底】:箱2,COLORWHITE,NODRAW;
DRAWBAND(箱2,RGB(0,255,0),箱2,RGB(0,255,0));
--------------------------------------------------------------------------------------------
【副图 部分优化】
TOTAL:=IF(PERIOD=1,5,IF(PERIOD=2,15,IF(PERIOD=3,30,IF(PERIOD=4,60,IF(PERIOD=5,240,1)))));
MTIME:=MOD(FROMOPEN,TOTAL);
CTIME:=IF(MTIME 0.5,TOTAL,MTIME);
VVOL:=IF(CURRBARSCOUNT=1,VOL*TOTAL/CTIME,DRAWNULL),NODRAW;
STICKLINE(CURRBARSCOUNT=1 (SETCODE=0 || SETCODE=1),VVOL,0,-1,-1),COLOR00C0C0;
AT:=IF(CAPITAL=0,AMOUNT/100000000,(VOL)/CAPITAL*100);
ATM1:=EMA(AT,5);
ATM2:=MA(AT,13);
阶段地量:=AT REF(LLV(AT,25),1) ATM1 ATM2;
XX:=BARSLAST(阶段地量);
II:=DRAWLINE(阶段地量,VOL*5,ISLASTBAR,REF(VOL*5,XX),1);
成交量:VOL,VOLSTICK;
五倍地量:IF(CROSS(COUNT(CROSS(VOL REF(VOL*5,XX),0.5),XX)=1,0.5),V,0),NODRAW;
STICKLINE(阶段地量,V*(3/10),V*(6/10),1.38,1),COLOR009900;
STICKLINE(阶段地量,V*(3/10),V*(6/10),0.15,0),COLOR00FF00;
五倍地量线:DRAWLINE(五倍地量,II,REF(五倍地量,1),REF(II,1),1),COLORGREEN;
倍量:=V REF(V,1)*2;
N:=BARSLAST(倍量);
常数:=CONST(IF(N=0,V,REF(V,N)));
GG:=C
STICKLINE((倍量 AND GG) OR (C REF(C,1) AND C=O AND 倍量),0,V,0,0),COLORGREEN;
阴线:=C
STICKLINE((倍量 AND 阴线) OR (C REF(C,1) AND C=O AND 倍量),0,V,0,0),COLORRED;
STICKLINE(CROSS(COUNT(CROSS(VOL REF(VOL*5,XX),0.5),XX)=1,0.5),
V*(3/10),V*(6/10),1,0),COLORYELLOW;
备注:=REFX(CROSS(常数,V),1);
最后倍量:IF(IF(倍量,V,0)=REFX(REF(V,BARSLAST(倍量)),BARSNEXT(ISLASTBAR)),
1,0),NODRAW;
TT:=BARSLAST(备注);
TS:=IF(ISLASTBAR AND 最后倍量,REF(TT,1)+1,TT);
条件:=IF(备注,V,0)=REFX(REF(V,TS),BARSNEXT(倍量));
天:=BARSLAST(条件);
倍量横线:IF(天 =REFX(REF(BARSNEXT(最后倍量),天),最后倍量),
DRAWLINE(条件,常数,ISLASTBAR,常数,1),DRAWNULL),COLORYELLOW,DOTLINE;
天数:IF(ISLASTBAR AND 最后倍量=1,REF(天,1)+1,IF(倍量横线,天,DRAWNULL)),COLORRED,NODRAW;
DRAWNUMBER(最后倍量=1,V,天数);