缠理公式:
MA10:=MA(CLOSE,10);
MA5:=MA(CLOSE,5);
MA1:=(MA5-MA10);
MA2:=MA10;
MA3:=MA10;
DATANUMBER:=DATATYPE;
DATANUMBER1:=DATATYPE;
DATANUMBER2:=DATATYPE;
DATANUMBER3:=DATATYPE;
LING:=HIGH;
<%
vbdatanumber = FFL.VarData("datanumber")
vbdatanumber1 = FFL.VarData("datanumber1")
vbdatanumber2 = FFL.VarData("datanumber2")
vbdata=1
vbdata1=0.001
vbdata2=1
Select Case vbdatanumber
Case 0
vbdata=0.015
vbdata1=0.001
vbdata2=0.015
Case 1
vbdata=0.018
vbdata1=0.001
vbdata2=0.018
Case 2
vbdata=0.037
vbdata1=0.001
vbdata2=0.037
Case 3
vbdata=0.052
vbdata1=0.001
vbdata2=0.052
Case 4
vbdata=0.067
vbdata1=0.001
vbdata2=0.067
Case 5
vbdata=0.13
vbdata1=0.001
vbdata2=0.13
Case 6
vbdata=0.28
vbdata1=0.001
vbdata2=0.28
Case 7
vbdata=0.45
vbdata1=0.001
vbdata2=0.45
Case 8
vbdata=0.73
vbdata1=0.001
vbdata2=0.73
Case 9
vbdata=1.2
vbdata1=0.001
vbdata2=1.2
Case 10
vbdata=0.6
vbdata1=0.001
vbdata2=0.6
Case 11
vbdata=0.1
vbdata1=0.001
vbdata2=0.1
Case 12
vbdata=0.02
vbdata1=0.001
vbdata2=0.02
Case else
vbdata=2
vbdata1=0.001
vbdata2=2
End Select
FFL.VarData("datanumber") =vbdata
FFL.VarData("datanumber1") =vbdata1
FFL.VarData("datanumber2") =vbdata2
vbling = FFL.VarData("ling")
vbma = FFL.VarData("ma1")
vbma2 = FFL.VarData("ma2")
vbma3 = FFL.VarData("ma3")
nlast = UBound( vbma )
nvalue = 0.0000
nvaluefu = 0.0000
bianhua = 2
oldbianhua = 0
for m = 0 to nlast
vbma2(m) = 0
vbma3(m) = 0
vbling(m)=0
next
m= 0
for i = 0 to nlast
m=m+1
'nlast - m
'vbma2(i) = 0
if (vbma(i) > 0) then
bianhua = 1
nvalue = nvalue + vbma(i)
else
bianhua = 2
nvaluefu = nvaluefu + vbma(i)
end if
if (oldbianhua = bianhua) then
else
vbma3(i) = m
m=0
if (bianhua = 1) then
vbma2(i) = nvaluefu
nvaluefu = 0
'nvaluefu = 0
else
vbma2(i) = nvalue
nvalue = 0
'nvalue = 0
end if
end if
oldbianhua = bianhua
next
FFL.VarData("ma2") = vbma2
FFL.VarData("ma3") = vbma3
FFL.VarData("ling") =vbling
%>
DRAWNUMBER(((REF(MA2,0)<0) AND (SHOWSUM=1)),LLV(LOW,5),(REF(MA2,0)*1000),0),colorFF00;
DRAWNUMBER(((REF(MA2,0)<0) AND (SHOWCOUNT=1)),(LLV(LOW,5)-DATANUMBER),REF(MA3,0),0),colorFFFF;
DRAWNUMBER(((REF(MA2,0)<0) AND (SHOWAVERAGE=1)),(LLV(LOW,5)-(DATANUMBER*2)),((REF(MA2,0)*1000)/REF(MA3,0)),0),colorFF00;
DRAWNUMBER(((REF(MA2,0)>0) AND (SHOWSUM=1)),HHV(HIGH,5),(REF(MA2,0)*1000),0),colorFF;
DRAWNUMBER(((REF(MA2,0)>0) AND (SHOWCOUNT=1)),(HHV(HIGH,5)+DATANUMBER),REF(MA3,0),0),colorFFFF;
DRAWNUMBER(((REF(MA2,0)>0) AND (SHOWAVERAGE=1)),(HHV(HIGH,5)+(DATANUMBER*2)),((REF(MA2,0)*1000)/REF(MA3,0)),0),colorFF;
MA1:=(MA5-MA10);
WEIHE:=LING;
WEIPING:=LING;
<%
vbhe=FFL.VarData("weihe")
vbping=FFL.VarData("weiping")
vbma = FFL.VarData("ma1")
nlast = UBound( vbma )
nvalue = 0.0000
nvaluefu = 0.0000
bianhua = 2
oldbianhua = 0
i= 0
m= nlast
if (vbma(nlast) > 0) then
Do While (vbma(m)>0)
nvalue = vbma(m) + nvalue
i=i+1
m=m-1
if(m<0) then
exit do
end if
Loop
else
Do While (vbma(m)<0)
nvalue = vbma(m) + nvalue
i=i+1
m=m-1
if(m<0) then
exit do
end if
Loop
end if
if (i=0) then
i=1
end if
nvaluefu = nvalue/i
vbhe(nlast) = nvalue
vbping(nlast) = nvaluefu
FFL.VarData("weihe") =vbhe
FFL.VarData("weiping")= vbping
%>
DRAWNUMBER(((WEIHE<>0) AND (SHOWSUM=1)),IF((WEIHE>0),HIGH,LOW),(WEIHE*1000),0),colorFF;
DRAWNUMBER(((WEIHE<>0) AND (SHOWAVERAGE=1)),(IF((WEIHE>0),HIGH,LOW)-(DATANUMBER*2)),(WEIPING*1000),0),colorFF00;
DRAWNUMBER(((WEIPING<>0) AND (SHOWCOUNT=1)),(IF((WEIHE>0),HIGH,LOW)-DATANUMBER),(WEIHE/WEIPING),0),colorFFFF;
DIFF:=(EMA(CLOSE,S)-EMA(CLOSE,P));
DEA:=EMA(DIFF,M);
MACD:=(2*(DIFF-DEA));
MA1:=MACD;
MA2:=MACD;
MA3:=MACD;
MA1WE:=MACD;
HE:=MA2;
WEIHEMACD:=0;
WEIPINGMACD:=0;
H1:=HIGH;
L1:=LOW;
FOXH:=HIGH;
FOXL:=LOW;
FOXBAOHAN:=LING;
FOXBAOHAN1:=LING;
FOXGUANXI:=LING;
FOXFENXING:=LING;
FOXFENXING1:=LING;
FOXFENNUMBER:=LING;
FOXQUEKOU:=LING;
FOXBICOUNT:=LING;
FOXWEIBI:=LING;
<%
vbquekou=FFL.VarData("foxquekou")
vbfennumber=FFL.VarData("foxfennumber")
vbdatanumber = FFL.VarData("datanumber")
vbh = FFL.VarData("foxh")
vbL = FFL.VarData("foxl")
vbh1 = FFL.VarData("foxh")
vbL1 = FFL.VarData("foxl")
vbbaohan = FFL.VarData("foxbaohan")
vbbaohan1 = FFL.VarData("foxbaohan1")
vbguanxi = FFL.VarData("foxguanxi")
vbfenxing = FFL.VarData("foxfenxing")
vbfenxing1 = FFL.VarData("foxfenxing1")
vbbicount=FFL.Vardata("foxbicount")
vbweibi=FFL.Vardata("foxweibi")
nlast = UBound( vbh )
nvalue = 0.0000
nvaluefu = 0.0000
bianhua = 2
vbguanxi(0) = 1
for m = 1 to nlast
if (vbh(m)>vbh(m-1) and vbl(m)>vbl(m-1)) then
vbguanxi(m)=1
else
if (vbh(m)<vbh(m-1) and vbl(m)<vbl(m-1)) then
vbguanxi(m)=-1
else
vbguanxi(m) = 0
if (vbguanxi(m-1)=1) then
vbguanxi(m)=1
if (vbh(m)>=vbh(m-1) and vbl(m)<=vbl(m-1)) then
vbbaohan(m) = 2
vbbaohan(m-1) = 1
vbh(m-1)=vbh(m)
vbl(m)=vbl(m-1)
else
vbbaohan(m-1) = -1
vbbaohan(m) = -2
vbh(m)=vbh(m-1)
vbl(m-1)=vbl(m)
end if
else
vbguanxi(m)=-1
if (vbh(m)>=vbh(m-1) and vbl(m)<=vbl(m-1)) then
vbbaohan(m) = 2
vbbaohan(m-1) = 1
vbh(m)=vbh(m-1)
vbl(m-1)=vbl(m)
else
vbbaohan(m-1) = -1
vbbaohan(m) = -2
vbh(m-1)=vbh(m)
vbl(m)=vbl(m-1)
end if
end if
end if
end if
next
'处理连续包含即:连续3个及以上K线间存在的包含关系
for m = 0 to nlast
vbbaohan1(m) = vbbaohan(m)
NEXT
i=0
do while (vbbaohan(i)=0)
i=i+1
if (i>nlast) then
Exit Do
end if
loop
'第一个包含的位置
lastfenxing=i
bao=0
existbao=0
for m = i to nlast
if (vbbaohan(m) <> 0) then
bao=bao+1
if (bao>=2) then
if (vbbaohan(m)=2 and vbbaohan(m-1)=1 or vbbaohan(m)=-2 and vbbaohan(m-1)=-1) then
vbbaohan1(m) = bao
if (bao>2) then
existbao=BAO
for i = 1 to bao
vbh(m-bao+i)=vbh(m)
vbL(m-bao+i)=vbl(m)
i |