以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请帮忙改写一下程序  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=52632)

--  作者:sonicking
--  发布时间:2013/5/30 17:03:51
--  请帮忙改写一下程序
画图函数的编写,现在画图的位置不对,请帮忙修改(解释在源码下方)。谢谢,

A1:= L<REF(L,1);
A2:= REF(H,1)=HHV(H,11) AND REF(L,1)>REF(LLV(L,10),1);
A3:= REF(H,2)=HHV(H,11) AND REF(L,2)>REF(LLV(L,10),2); 
D0:= A1 AND (A2 OR A3);

A4:= H>REF(H,1);
A5:= REF(L,1)=LLV(L,11) AND REF(H,1)<REF(HHV(H,10),1);
A6:= REF(L,2)=LLV(L,11) AND REF(H,2)<REF(HHV(H,10),2);
D1:= A4 AND (A5 OR A6);

B1:= BARSLAST(D0)+1;
B2:= REF(B1,B1+1)+B1+1;
B3:= BARSLAST(D1)+1;
B4:= REF(B3,B3+1)+B3+1;

D01:= B3>B1 AND D0 AND B2>B3;
D11:= B1>B3 AND D1 AND B4>B1;

FD01:= BARSLAST(D01)+1;
FD02:= REF(FD01,FD01+1)+FD01+1;
FD11:= BARSLAST(D11)+1;
FD12:= REF(FD11,FD11+1)+FD11+1;

HH:= HHV(H,FD01+6);   
LL:= LLV(L,FD11+6);
 
DRAWLINE(H=HH,H,L=LL,L,0);
DRAWLINE(L=LL,L,H=HH,H,0);

上面取的HH,LL和我预期有差异.
我希望画图位置是,如果D01在最后,取D01和D11之间的低点为LL,如果D11在最后,取D01和D11之间的高点为HH

请帮忙修改。谢谢


--  作者:jinzhe
--  发布时间:2013/5/30 17:21:20
--  

nn1:=barslast(d11)+1;

nn2:=barslast(d01)+1;

ll1:=llv(l,nn1);

hh1:=hhv(h,nn2)

if d01 then ll:=ll1;

if d11 then hh:=hh1;


--  作者:sonicking
--  发布时间:2013/5/30 19:21:18
--  还是有问题

你的代码的意思,我已经明白了,但修改后,图不对.

能否你进行编译一下,看一下效果.

我需要的是在D01确认后,找到D01之前的最低点,和D11前的最高点, 并用它们来画线.