在软件里,任何一个变量必须有初始值,才能开始后续运算。
你先回答一个问题,你要的这个A值,在股票的第一天,即第一根K线出,如何取值?
因为是第一天,所以REF(A,1)不存在,你是定义A=0+(H-L)/C? 还是A=C+(H-L)/C。
基于这个回答,你的这个A值的定义才有意义。
第二,A的取值是递归取值,现在所有的软件都不直接支持递归函数。所以,必须经过数学转换才能使用。
给一个提示:
用An表示从今天往前推,第n个A。用Xn表示An对应的(H-L)/C。0表示今天,1表示昨天,以此类推。我们想要得到A0的公式。
那么
A0:= A1 + X0;
A1:= A2 + X1;
A2:= A3 + X2;
。。。
An:= An-1 + Xn;
上述等式,叠加起来,得到:
A0 + A1 + A2+...+An := A1+A2+A3+...+An-1 + X0+X1+X2+...+Xn;
销掉相同项,即:
A0 + An := X0 + X1 + X2 +...+ Xn;
于是得到:
A0:=SUM(X,0) - An;
其中,An是我要求你回答的第一个问题的答案。
SUM((H-L)/C,0)是直接可用的软件函数。
如果你的第一个问题的答案是0,那么公式就是:
A:=SUM((H-L)/C,0);
什么语句编写方法?
-----------------------
A:=CLOSE;你可以直接使用C(或CLOSE)即可;
另外,你的A:=REF(A,1)+(H-L)/C;中的A:=与后面的"A"不能同时使用,你可以使用---
B:=CLOSE;
A:=REF(B,1)+(H-L)/C;
或直接使用---
A:=REF(C,1)+(H-L)/C;就可以的。
可以这样定义:
Y:=REF(C,1);
A:=REF(Y,1)+(H-L)/C;
到底问啥?