//飞狐顾比倒数源码公式:
ff:=l;
fhf:=h;
fgf:=h;
ftf:=l;
fdf:=l;
zdtf:=c;
zqf:=c;
zqtf:=c;
{顾比倒数进场}
<%
f=ffl.vardata("ff")
fh=ffl.vardata("fhf")
fg=ffl.vardata("fgf")
ft=ffl.vardata("ftf")
fd=ffl.vardata("fdf")
zq=ffl.vardata("zqf")
zqt=ffl.vardata("zqtf")
zdt=ffl.vardata("zdtf")
zq(1)=0
zq(2)=0
zqt(1)=0
zqt(2)=0
tj=0
n=ubound(f)
for i=2 to n
k1=0
k2=0
k3=0
ii=i-2
for j=ii to 2 step -1
if f(j)<f(j-1) and f(j)<f(j-2) and f(j)<f(j+1) and f(j)<f(j+2) then
k1=j
exit for
end if
next
j=k1-1
while j>=0 and tj=0
if fh(j)>fh(k1) then
k2=j
tj=1
else
j=j-1
end if
wend
j=k2-1
tj=0
while j>=0 and tj=0
if fh(j)>fh(k2) then
k3=j
tj=1
else
j=j-1
end if
wend
if k3>0 then
fg(i)=fh(k3)
zq(i)=k3
else
fg(i)=fg(i-1)
zq(i)=zq(i-1)+1
end if
next
ffl.vardata("fgf")=fg
ffl.vardata("zqf")=zq
'止损线'
for i=2 to n
k1=0
k2=0
k3=0
ii=i-2
for j=ii to 2 step -1
if fh(j)>fh(j-1) and fh(j)>fh(j-2) and fh(j)>fh(j+1) and fh(j)>fh(j+2) then
k1=j
exit for
end if
next
tj=0
j=k1-1
while j>=0 and tj=0
if fh(j)<fh(k1) then
k2=j
tj=1
else
j=j-1
end if
wend
if k2>0 then
fd(i)=fh(k2)
zdt(i)=k2
else
fd(i)=fd(i-1)
zdt(i)=zdt(i-1)+1
end if
j=k2-1
tj=0
while j>0 and tj=0
if fh(j)<fh(k2) then
k3=j
tj=1
else
j=j-1
end if
wend
if k3>0 then
ft(i)=fh(k3)
zqt(i)=k3
else
ft(i)=ft(i-1)
zq(i)=zqt(i-1)+1
end if
next
ffl.vardata("ftf")=ft
ffl.vardata("fdf")=fd
ffl.vardata("zqtf")=zqt
ffl.vardata("zdtf")=zdt
%>
止赢线:ftf,linethick1,colorwhite,LINEDOT;//如果想把止损位提高,可选第二根K线做参考线,把ftf改成fdf就可以了;
顾比倒数:fgf,COLORGREEN;//,LINEDOT
要做成交易策略,现在的代码只能使用系列模式,系列模式下可以使用EnterLong,ExitLong,EnterShort,ExitShort语句来实现。
因为有VBA代码,要想改为逐K线模式必须将VBA代码改成金字塔的语句,去掉<% %>语句块才行。然后才能使用Buy之类的新交易指令。
回复admin:我知道可以直接用,并且是试过的。曾经看到过有高手发布的把文华的顾比线用金字塔函数简化的模型,我把这个发上来,是想请高手看看能否简化这个的。
回复guotx2010:谢谢,继续学习!