一天当中,假设A,B,C是三根K线,不一定是相连的三根,B创了新高(B最高价大于A的最高价),然后C又创了新高(C最高价大于B的最高价),
那么,有没有办法,在C创新高后,找到前一个新高B的最低价
hh:hhv(h,todaybar);
nn:=barslast(hh>ref(hh,1));
ll:=ref(ref(l,nn),1);
if hh>ref(hh,1) then ll1:=ll;
ll1就是所求
不行啊
if hh>ref(hh,1) then
BEGIN
drawtext(1,h,'l');
ll1:=ll;
end
图上根本不会draw什么东西出来,说明if hh>ref(hh,1) 是不会成立的,也就取不到值了
逐k线计算
或者加代码 runmode:0;
逐K线也不行啊,这是我的代码
hh:=hhv(h,todaybar);
nn:=barslast(hh>ref(hh,1)),NOAXIS;
ll:=ref(ref(l,nn),1);
if hh>ref(hh,1) then
BEGIN
drawtext(1,h,'l');
ll1:=ll;
end
不行吗?没显示出l?
你是要显示出数值还是字母l?
要显示出数值把你的'l'改成 numtostr(l,2)
有了,但是第一次创新高时,值是错的,取到了一个很大的值,估计是昨天的值
我的代码:
hh:=hhv(h,todaybar);
nn:=barslast(hh>ref(hh,1)),NOAXIS;
ll:ref(ref(l,nn),1);
if hh>ref(hh,1) then
BEGIN
drawtext(1,l,'h');
ll1:=ll;
end
hh:=hhv(h,todaybar);
nn:=barslast(hh>ref(hh,1));
ll:=ref(ref(l,nn),1);
if hh>ref(hh,1) then ll1:=ll;
if hh>ref(hh,1) and todaybar>0 then
BEGIN
drawtext(1,h,'11111'),colorgreen;
ll1:=ll;
end
lll:ll;
这样的话加个todaybar>0的条件