以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  金字塔软件问题提交  (http://222.73.7.161/bbs/list.asp?boardid=2)
----  逐k模式下,有goto跟没跳转计算结果不一样?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=12372)

--  作者:readonly
--  发布时间:2012/6/11 23:06:39
--  逐k模式下,有goto跟没跳转计算结果不一样?

if time<closetime(0) then goto QUITLINE;
结算价:=sum(vol*((h+l+o+c)/4),openminutes(time))/sum(vol,openminutes(time));

qqq:DRAWNUMBER(time=closetime(0),l*0.998,结算价 ,0,COLORGREEN );

QUITLINE@;

 

注释掉第一行,显示结果就正确,否则计算有较严重的误差,是什么原因引起的?如何在保留跳转的情况下解决这个问题?


--  作者:admin
--  发布时间:2012/6/11 23:23:39
--  

主要原因是goto之后的sum函数有很多该统计的数据没有让他统计得到。

转移到个goto前面即可

 

结算价:=sum(vol*((h+l+o+c)/4),openminutes(time))/sum(vol,openminutes(time));

if time<closetime(0) then goto QUITLINE;

qqq:DRAWNUMBER(time=closetime(0),l*0.998,结算价 ,0,COLORGREEN );

QUITLINE@;