以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  FOR循环  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=155400)

--  作者:咚咚呛
--  发布时间:2017/6/25 9:19:06
--  FOR循环
VARIABLE: i=0;
 For i = 1 to n DO r:=r+POW((Ln(REF(c,i)/ref(c,i+1))-Ln(ref(c,1)/ref(c,n+1))/n),2);
 hv:=pow(r/(n-1),0.5);
这句执行报错:
第 3 行,REF 函数在循环语句中可能会带来风险。

这样写不行是吗?



--  作者:wenarm
--  发布时间:2017/6/26 8:34:08
--  

这个是风险提示,并不是报错。

不清楚你上述代码想要表达什么。


--  作者:qq代人发帖
--  发布时间:2017/6/26 16:19:02
--  

你可以把使用ref的地方在FOR循环之外这样做:定义一个变量并赋值,然后在循环体中使用。比如这样:

temp:ref(close,1);

for i=1 to n do

begin

....

...temp...

.....

end


--  作者:咚咚呛
--  发布时间:2017/6/27 14:36:51
--  
temp:ref(close,1);这句也是有变量的啊

temp:ref(close,i);
这样怕就不行了吧?

--  作者:yukizzc
--  发布时间:2017/6/27 14:49:45
--  

close[barpos-i]

用数组方式去调用之前数据


--  作者:咚咚呛
--  发布时间:2017/6/27 14:57:44
--  
弓虽!