以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  这个代码为什么会数组越界?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=72604)

--  作者:asmcat
--  发布时间:2014/12/2 16:53:46
--  这个代码为什么会数组越界?

VARIABLE:a111[]=0;

a111:=ma(C,10);
b111:a111[barpos-1];

 

提示数组越界?

 

逐K模式,但是编译时无错误

[此贴子已经被作者于2014/12/2 16:54:18编辑过]

--  作者:yukizzc
--  发布时间:2014/12/2 16:59:01
--  

数组时从1开始的,你barpos-1这个是0,越界了


--  作者:asmcat
--  发布时间:2014/12/2 17:00:31
--  
晕,那我如果用barpos访问昨天,就不能-1,用什么呢?
--  作者:asmcat
--  发布时间:2014/12/2 17:14:47
--  

barpos貌似是顺序当前K线位置,不只是第一根,

函数返回当前K线是本地某品种某周期按顺序第几根K线。

注:对于日线数据就表示从上市到现在总共有多少交易日。

 

 

 


--  作者:yukizzc
--  发布时间:2014/12/2 17:14:51
--  

VARIABLE:a111[]=0;

a111:=ma(C,10);


if barpos=1 then b111:=a111[barpos];      
else
b111:=a111[barpos-1];

ans:b111


--  作者:asmcat
--  发布时间:2014/12/2 17:16:24
--  

我只是想用a111[x]数组形式,来代替ref(a111,1),因为ref不能在if里用,

 


--  作者:asmcat
--  发布时间:2014/12/2 17:18:41
--  
感谢版主,只是感觉用Ref(a11,1)还简捷点,图片点击可在新窗口打开查看
--  作者:pyd
--  发布时间:2014/12/2 17:25:52
--  

把aa:ref(a11,1);放if 外边

aa:ref(a11,1);

if aa then...