以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  如果定位到前面一个新高的位置  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=62699)

--  作者:wn10000neng
--  发布时间:2014/3/14 10:03:31
--  如果定位到前面一个新高的位置

一天当中,假设A,B,C是三根K线,不一定是相连的三根,B创了新高(B最高价大于A的最高价),然后C又创了新高(C最高价大于B的最高价),

 

那么,有没有办法,在C创新高后,找到前一个新高B的最低价


--  作者:jinzhe
--  发布时间:2014/3/14 10:07:04
--  

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就是所求


--  作者:wn10000neng
--  发布时间:2014/3/14 11:12:36
--  

不行啊

 

if hh>ref(hh,1) then
BEGIN

drawtext(1,h,\'l\');
ll1:=ll;

end

 

图上根本不会draw什么东西出来,说明if hh>ref(hh,1) 是不会成立的,也就取不到值了


--  作者:jinzhe
--  发布时间:2014/3/14 11:17:05
--  

逐k线计算

或者加代码 runmode:0;


--  作者:wn10000neng
--  发布时间:2014/3/14 11:19:15
--  

逐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


--  作者:jinzhe
--  发布时间:2014/3/14 11:27:52
--  

不行吗?没显示出l?

你是要显示出数值还是字母l?

要显示出数值把你的\'l\'改成 numtostr(l,2)


--  作者:wn10000neng
--  发布时间:2014/3/14 13:22:25
--  
显示字符,你试下就知道了,没显示任何东西
--  作者:jinzhe
--  发布时间:2014/3/14 13:30:34
--  

怎么会没有,你照着我说的改啊


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:wn10000neng
--  发布时间:2014/3/14 13:56:11
--  


图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看

有了,但是第一次创新高时,值是错的,取到了一个很大的值,估计是昨天的值

 

 

我的代码:

 

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


--  作者:jinzhe
--  发布时间:2014/3/14 14:09:44
--  

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的条件