以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  反映一个重要的bug!  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=51925)

--  作者:dwjgwsm
--  发布时间:2013/5/12 9:59:16
--  反映一个重要的bug!

2995版本

测试代码:

//VARIABLE:LONG=0;
IF CROSS(C,MA(C,60)) THEN LONG:=BARPOS;
IF CROSS(MA(C,60),C) THEN LONG:=0;
LONGS:LONG;
XX:BARPOS,NODRAW;

注意看图片中Longs的返回值,加载该指标后LONGS返回值是正确的,但是,当我不断地按向下箭头、直至所有历史K线都显示在屏幕上后,再继续按向下箭头,LONGS的返回值改变了!变成了LONGS的最后一个值2052!你可以重现这一现象。但是当我加上VARIABLE:LONG=0;这一句后这一现象不再产生。

 

另外,图片上只看到前面一小段时间的LONGS返回值变为2052,我在另外一段更复杂的代码中却发现所有历史K线值都变成了最后一个值,不过加了VARIABLE声明后,此现象也不再出现。

 

这意味着,客户必须把所有变量都事先声明一遍,才能避免此类问题出现。

 


--  作者:dwjgwsm
--  发布时间:2013/5/12 10:05:47
--  


图片点击可在新窗口打开查看此主题相关图片如下:2013-5-12 10-01-51.jpg
图片点击可在新窗口打开查看

论坛的附件上传功能有问题,我250K的gif动画传不上去,230K的rar压缩包也传不上去。还有,记不住用户登录信息、每次都要重新登录。请修正一下


--  作者:dwjgwsm
--  发布时间:2013/5/12 10:21:26
--  
以上是在逐K线模式下测试的
--  作者:RogarZ
--  发布时间:2013/5/12 15:49:07
--  
barpos的返回值是本地K线数

金字塔的数据在电脑本地。你不断按下键 就是向服务器请求补数据,客户端下载了数据 本地的 K线数据增多,barpos难道不变嘛?

在理解下函数说明

函数返回当前是第几根K线。对于日线数据就表示从上市到现在总共有多少交易日。
用法:
BARPOS
所属函数组:时间函数

--  作者:RogarZ
--  发布时间:2013/5/12 15:51:28
--  
其次,不用   variable  
long :=barpos 就是常数赋值,相当于   long=1234456
加了 variable 是序列变量啊~ 这个不是bug,你没理解机制

[此贴子已经被作者于2013-5-12 15:51:53编辑过]

--  作者:dwjgwsm
--  发布时间:2013/5/12 19:05:54
--  
不太理解。如果本地数据已经完整了,我再怎么按向下箭头补数据,经过软件将本地数据与服务器数据对比后也应该无数据可补,barpos怎么应该变呢?何况还变成了最后一个赋值。现在软件已经客观上造成了这样一种结果:仅仅因为客户多按了几次向下箭头,某些变量返回值就改变了,你觉得这是对的吗?
--  作者:RogarZ
--  发布时间:2013/5/13 10:23:12
--  

所谓的本地数据已经完整是指什么?

 

金字塔的数据全推  存在本地,基于这个构架,有现在的这个现象。

而且做自动交易的时候,用户会没事自己往下去按?