设为首页收藏本站

 找回密码
 注册
查看: 2216|回复: 4
打印 上一主题 下一主题

代码出现问题,请指教。。。。 [复制链接]

Rank: 3Rank: 3

精华
0
UID
4814
积分
207
帖子
15
主题
6
阅读权限
40
注册时间
2009-7-7
最后登录
2010-3-30
跳转到指定楼层
1#
发表于 2010-3-16 07:05:27 |只看该作者 |倒序浏览
这是一段寻找顶点的代码,由当前BAR向后寻找5个BAR中最大HIGH。

问题是代码只能在当天执行,比如今天3月15日,只能执行3月15日的BAR,到16号就不行了。

为什么会有这种情况?请高手解答。。。

Begin
i=3;
        While( i<BarsSinceToday-1 && Date==Date[1] )
        {
        If( High>=High[i-2] && High>=High[i-1] && High>=High[i+1] && High>=High[i+2] )
        {
         myhighpri=High;
         ishighprice=True;
         highpricebar=i;
         Break;
         }
         i=i+1;
         }
PlotNumeric("pri=",myhighprice,-1);
end

Rank: 3Rank: 3

精华
0
UID
4814
积分
207
帖子
15
主题
6
阅读权限
40
注册时间
2009-7-7
最后登录
2010-3-30
2#
发表于 2010-3-16 18:10:53 |只看该作者

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
5767
积分
2644
帖子
615
主题
51
阅读权限
80
注册时间
2009-10-28
最后登录
2015-8-23
3#
发表于 2010-3-16 19:14:09 |只看该作者

BarsSinceToday只在当天(最后那一天)的所有Bar上返回有效值。

在不是当天的Bar上都返回无效值。

你的程序中
While( i<BarsSinceToday-1 && Date==Date[1] )
这一句的 i<BarsSinceToday-1 在所有不是当天(最后一天)的Bar上面,都返回False,所以这个while循环只会在最后一天的Bar上执行。

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
5767
积分
2644
帖子
615
主题
51
阅读权限
80
注册时间
2009-10-28
最后登录
2015-8-23
4#
发表于 2010-3-16 19:15:54 |只看该作者
你的代码漏洞很多,你自己慢慢揣摩。

比如 If( High>=High[i-2] && High>=High[i-1] && High>=High[i+1] && High>=High[i+2] )
这句话不一定表达的是你所想的意思。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
4814
积分
207
帖子
15
主题
6
阅读权限
40
注册时间
2009-7-7
最后登录
2010-3-30
5#
发表于 2010-3-16 19:39:20 |只看该作者
原帖由 p_b_yu 于 2010-3-16 19:15 发表
你的代码漏洞很多,你自己慢慢揣摩。

比如 If( High>=High && High>=High && High>=High && High>=High )
这句话不一定表达的是你所想的意思。



请指教

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-10 20:53

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部