机构控盘度(源码)
机构控盘度
IF(PERIODNAME<>"日线")
{
机构控盘度:"本指标只适用于日线周期";
RETURN;
}
IF(ISNULL(LV_D_SUPER_HLD_RATIO[-1])!=0)
{
b1=IF(ISNULL(BIGBUYCOUNT1[-1]),0,BIGBUYCOUNT1[-1])+IF(ISNULL(WAITBUYCOUNT1[-1]),0,WAITBUYCOUNT1[-1]);
s1=IF(ISNULL(BIGSELLCOUNT1[-1]),0,BIGSELLCOUNT1[-1])+IF(ISNULL(WAITSELLCOUNT1[-1]),0,WAITSELLCOUNT1[-1]);
b2=IF(ISNULL(BIGBUYCOUNT2[-1]),0,BIGBUYCOUNT2[-1])+IF(ISNULL(WAITBUYCOUNT2[-1]),0,WAITBUYCOUNT2[-1]);
s2=IF(ISNULL(BIGSELLCOUNT2[-1]),0,BIGSELLCOUNT2[-1])+IF(ISNULL(WAITSELLCOUNT2[-1]),0,WAITSELLCOUNT2[-1]);
ddx:=((b1-s1)+(b2-s2)*0.7)/TV_D_PUBLIC_SHARES *100;
IF(ISNULL(LV_D_SUPER_HLD_RATIO))
{
RET=(B1+b2)/TV_D_PUBLIC_SHARES *100;
}
ELSE
{
X1=LV_D_SUPER_HLD_RATIO*100;
ret:=X1+ddx;
IF(ddx > 0)
{
IF(x1>95)
ret := x1+ddx*0.1;
ELSE IF(x1>90)
ret := x1+ddx*0.5;
ELSE IF(x1>85)
ret := x1+ddx*0.8;
}
IF(ddx < 0)
{
IF(x1<5)
ret := x1+ddx*0.1;
ELSE IF(x1<10)
ret := x1+ddx*0.5;
ELSE IF(x1<15)
ret := x1+ddx*0.8;
}
}
IF(ISNULL(ret))
ret := LV_D_SUPER_HLD_RATIO*100;
IF(ret > 97.18)
ret := 97.18;
IF(ret < 2.08)
ret := 2.08;
}
ELSE
{
ret=LV_D_SUPER_HLD_RATIO*100;
}
x:=ret;
STICKLINE(x>x[1],x,x*2-x[1],5),colorred;
STICKLINE(x<x[1],x,x*2-x[1],5),colorgreen;
RETURN(ret);
来函数检测结果如下:
该公式没有未来函数
解密、编写股票、期货策略请联系QQ或微信同号:88652583
相关股票指标公式
原理解析:
输出机构控盘度
IF(PERIODNAME<>"日线")
{
机构控盘度:"本指标只适用于日线周期"
RETURN
}
IF(ISNULL(LV_D_SUPER_HLD_RATIO[-1])!=0)
{
B1=IF(ISNULL(BIGBUYCOUNT1[-1]),0,BIGBUYCOUNT1[-1])+IF(ISNULL(WAITBUYCOUNT1[-1]),0,WAITBUYCOUNT1[-1])
S1=IF(ISNULL(BIGSELLCOUNT1[-1]),0,BIGSELLCOUNT1[-1])+IF(ISNULL(WAITSELLCOUNT1[-1]),0,WAITSELLCOUNT1[-1])
B2=IF(ISNULL(BIGBUYCOUNT2[-1]),0,BIGBUYCOUNT2[-1])+IF(ISNULL(WAITBUYCOUNT2[-1]),0,WAITBUYCOUNT2[-1])
S2=IF(ISNULL(BIGSELLCOUNT2[-1]),0,BIGSELLCOUNT2[-1])+IF(ISNULL(WAITSELLCOUNT2[-1]),0,WAITSELLCOUNT2[-1])
DDX赋值:((B1-S1)+(B2-S2)*0.7)/TV_D_PUBLIC_SHARES *100
IF(ISNULL(LV_D_SUPER_HLD_RATIO))
{
RET=(B1+B2)/TV_D_PUBLIC_SHARES *100
}
ELSE
{
X1=LV_D_SUPER_HLD_RATIO*100
RET赋值:X1+DDX
IF(DDX > 0)
{
IF(X1>95)
RET := X1+DDX*0.1
ELSE IF(X1>90)
RET := X1+DDX*0.5
ELSE IF(X1>85)
RET := X1+DDX*0.8
}
IF(DDX < 0)
{
IF(X1<5)
RET := X1+DDX*0.1
ELSE IF(X1<10)
RET := X1+DDX*0.5
ELSE IF(X1<15)
RET := X1+DDX*0.8
}
}
IF(ISNULL(RET))
RET := LV_D_SUPER_HLD_RATIO*100
IF(RET > 97.18)
RET := 97.18
IF(RET < 2.08)
RET := 2.08
}
ELSE
{
RET=LV_D_SUPER_HLD_RATIO*100
}
X赋值:RET
当满足条件X>X[1]时,在X和X*2-X[1]之间画柱状线
当满足条件X
RETURN(RET)