以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  关于公式变量无法累加另一个变量的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=78949)

--  作者:gwt_gwt224
--  发布时间:2015/5/22 21:17:01
--  关于公式变量无法累加另一个变量的问题

我在进行公式编写的时候,想进行变量累加的时候,发现通过统计函数得到的变量结果无法用于累加,直接说可能不太明白,我举例说明.

 

情况1:正常的引用或常量可以用于累加

VARIABLE:A:=0,B:=0;

A:=1或者A:=CLOSE或者A:=REF(CLOSE,1);

B:=B+A;

CON1:B,NOAXIS;

这种情况指标CON1是可以显示的,显示变量B在不断增长.

 

情况2:通过统计函数计算得到的结果无法用于累加

VARIABLE:A:=0,B:=0;

A:=COUNT(CLOSE>OPEN,10)或者A:REF(BARSLAST(某个条件),1)+1;

B:=B+A;

CON1:B,NOAXIS;

CON2:A,NOAXIS;

这种情况指标CON1无法显示,而且也不显示为0,似乎变量变成了未初始化.

指标CON2可以显示,说明统计函数计算的结果成功地传到了变量A,但是此时变量B就无法累加变量A.

 

这是为什么?


--  作者:jinzhe
--  发布时间:2015/5/25 9:07:58
--  

VARIABLE:A:=0,B:=0;

A:=COUNT(CLOSE>OPEN,10);

if barpos>10 then B:=B+A;

CON1:B,NOAXIS;

CON2:A,NOAXIS;

 

 

你的a是count10个周期,那么计算b的时候要在10周期之后算,不然前9周期计算入了无效值