这是用VBS写的一个简单程序,只是想把这个程序走通,编译没问题,但连接到1分钟图后,所有K线上都有了买入信号。这是一个简单错误,请哪位给指出来,最好把这个程序改正确,谢谢
MA5:=MA(CLOSE,5);
MA10:=MA(CLOSE,10);
MA20:=MA(CLOSE,20);
kpj:=OPEN;
spj:=close;
buyk:=0;
sellk:=0;
<%
vkpj=ffl.VarData("kpj")
vspj=ffl.VarData("SPJ")
vma5=ffl.VarData("MA5")
vma10=ffl.VarData("MA10")
vma20=ffl.VarData("MA20")
last=UBOUND(vspj)
last5=UBOUND(vma5)
lastbuyprice=0
lastsellprice=0
mybuy=0
mysell=0
closelj=0
for i=0 to last
if lastbuyprice=0 AND vspj(last)>vma5(last5) then
mybuy=1
else
mysell=1
end if
next
ffl.VarData("buyk")=mybuy
ffl.VarData("sellk")=mysell
%>
ENTERLONG:buyk;
ENTERSHORT:sellk;
传数值进入的时候以序列变量形式,然后在vbs代码里进行初始化0的操作。
MA5:=MA(CLOSE,5);
MA10:=MA(CLOSE,10);
MA20:=MA(CLOSE,20);
kpj:=OPEN;
spj:=close;
buyk:=close;
sellk:=close;
<%
vkpj=ffl.VarData("kpj")
vspj=ffl.VarData("SPJ")
vma5=ffl.VarData("MA5")
vma10=ffl.VarData("MA10")
vma20=ffl.VarData("MA20")
last=UBOUND(vspj)
last5=UBOUND(vma5)
lastbuyprice=0
mybuy=ffl.VarData("buyk")
mysell=ffl.VarData("sellk")
for i=0 to last
mybuy(i)=0
mysell(i)=0
if lastbuyprice=0 AND vspj(i)>vma5(i) then
mybuy(i)=1
else
mysell(i)=1
end if
next
ffl.VarData("buyk")=mybuy
ffl.VarData("sellk")=mysell
%>
ENTERLONG:buyk;
ENTERSHORT:sellk;
谢谢,