LC:=REF(CLOSE,1);
AA:=ABS(HIGH-LC);
BB:=ABS(LOW-LC);
CC:=ABS(HIGH-REF(LOW,1));
DD:=ABS(LC-REF(OPEN,1));
R:=IF(AA BBANDAA CC,AA+BB/2+DD/4,IF(BB CCANDBB AA,BB+AA/2+DD/4,CC+DD/4));
X:=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1));
SI:=8*X/R*MAX(AA,BB);
ASI:SUM(SI,0);
MASI:MA(ASI,6);
VA:=IF(CLOSE REF(CLOSE,1),,-VOL);
OBV:=SUM(IF(CLOSE=REF(CLOSE,1),0,VA),0);
P:=5;
VP:=IF(CAPITAL=0,AMOUNT/100000000,vol);
VA:=IF(CLOSE REF(CLOSE,1),VP,-VP);
obv:SUM(IF(CLOSE=REF(CLOSE,1),0,VA),0),LINETHICK2;
M12:Ema(OBV,12);
M50:EMA(OBV,50),LINETHICK2,COLOR00FF00;
A1:=REF(OBV,P)=HHV(OBV,2*P+1);
B1:=FILTER(A1,P);
C1:=BacKSET(B1,P+1);
D1:=FILTER(C1,P);{高点}
A2:=REF(OBV,P)=LLV(OBV,2*P+1);
B2:=FILTER(A2,P);
C2:=BACKSET(B2,P+1);
D2:=FILTER(C2,P);{低点}
上:REF(OBV,BArslAst(D1)),COLORFF00FF,NODRAW;
下:REF(OBV,BARSLAST(D2)),COLOR00FF00,NODRAW;
向上:crOSS(OBV,上*1.01),NODRAW;
相对能量:(OBV-下)/(上-下)*100,COLORYELLOW,NODRAW;
R11:=BACKSET(ISLASTBAR,BARSLAST(D1)+1);
S11:=R11 REF(R11,1);
DRAWLINE(D1,OBV,S11,OBV,1),COLORYELLOW;
T11:=BACKSET(ISLASTBAR,BARSLAST(D2)+1);
U11:=T11 REF(T11,1);
DRAWLINE(D2,OBV,U11,OBV,1),COLOR00FF00;
STICKLINE(C 0,下,下,1,0),COLOR00FF00;
STICKLINE(C 0,上,上,1,0),COLORFF00FF;
DRAWTEXT(CROSS(OBV,上*1.01),上,'上'),COLORYELLOW;
DRAWTEXT(CROSS(下*0.99,OBV),下,'下'),COLORYELLOW;
DRAWICON(D1,OBV,1);
DRAWICON(D2,OBV,2);
IF(M12 M50,M12,DRAWNULL),COLORFFFF00;
IF(M50 REF(M50,1),M50,DRAWNULL),COLORRED,LINETHICK2;
[源码注释]通达信精准OBV 可信赖的参考副图指标公式解读
LC赋值:1日前的收盘价
AA赋值:最高价-LC的绝对值
BB赋值:最低价-LC的绝对值
CC赋值:最高价-1日前的最低价的绝对值
DD赋值:LC-1日前的开盘价的绝对值
R赋值:如果AA ,返回?,否则返回?
BBANDAA
CC,AA+BB/2+DD/4,如果BB ,返回?,否则返回?
CCANDBB
AA,BB+AA/2+DD/4,CC+DD/4))
X赋值:(收盘价-LC+(收盘价-开盘价)/2+LC-1日前的开盘价)
SI赋值:8*X/R*AA和BB的较大值
输出ASI:SI的历史累和
输出MASI:ASI的6日简单移动平均
VA赋值:如果收盘价 ,返回?,否则返回?
1日前的收盘价,(手),-成交量(手))
OBV赋值:如果收盘价=1日前的收盘价,返回0,否则返回VA的历史累和
P赋值:5
VP赋值:如果当前流通股本(手)=0,返回成交额(元)/100000000,否则返回成交量(手)
VA赋值:如果收盘价 1日前的收盘价,返回VP,否则返回-VP
输出OBV:如果收盘价=1日前的收盘价,返回0,否则返回VA的历史累和,线宽为2
输出M12:OBV的12日指数移动平均
输出M50:OBV的50日指数移动平均,线宽为2,COLOR00FF00
A1赋值:P日前的OBV=2*P+1日内OBV的最高值
B1赋值:A1的P日过滤
C1赋值:若B1则将最近P+1周期置为1
D1赋值:C1的P日过滤
A2赋值:P日前的OBV=2*P+1日内OBV的最低值
B2赋值:A2的P日过滤
C2赋值:若B2则将最近P+1周期置为1
D2赋值:C2的P日过滤
输出上:上次D1距今天数日前的OBV,COLORFF00FF,NODRAW
输出下:上次D2距今天数日前的OBV,COLOR00FF00,NODRAW
输出向上:OBV上穿上*1.01,NODRAW
输出相对能量:(OBV-下)/(上-下)*100,画黄色,NODRAW
R11赋值:若是否最后一个周期则将最近上次D1距今天数+1周期置为1
S11赋值:R11 1日前的R11
当满足条件D1时,在OBV位置画直线起点,当满足条件S11时,在OBV位置画直线终点,1表示是否延长.,画黄色
T11赋值:若是否最后一个周期则将最近上次D2距今天数+1周期置为1
U11赋值:T11 1日前的T11
当满足条件D2时,在OBV位置画直线起点,当满足条件U11时,在OBV位置画直线终点,1表示是否延长.,COLOR00FF00
当满足条件收盘价 0时,在下和下位置之间画柱状线,宽度为1,0不为0则画空心柱.,COLOR00FF00
当满足条件收盘价 0时,在上和上位置之间画柱状线,宽度为1,0不为0则画空心柱.,COLORFF00FF
当满足条件OBV上穿上*1.01时,在上位置书写文字,画黄色
当满足条件下*0.99上穿OBV时,在下位置书写文字,画黄色
当满足条件D1时,在OBV位置画1号图标
当满足条件D2时,在OBV位置画2号图标
如果M12 M50,返回M12,否则返回无效数,COLORFFFF00
如果M50 1日前的M50,返回M50,否则返回无效数,画红色,线宽为2