递归的公式如何表达?
比如:Yt = a + bx + Yt-1
谢谢
runmode:0;
variable:y=这里写上y的初值;
if barpos>1 then y:=a+b*x+y;
我的公式没有涉及到k线图,barpos也能用吗? 测试了一下,输出全部是-1.#R,为什么?
RUNMODE:0;
VARIABLE: SD = 2.5;
IF BARPOS>1 THEN
SD:=SQRT(1.632 + 0.484*DD + 0.491*SD*SD);
0.484*DD
这个dd改成sd
我的DD其实是有赋值的,比如
DD:MA(close,400);
结果还是1.#R
不知道为什么
C1:CALLSTOCKEX('RB09',VTCLOSE,1,-1,500);
DD:MA(C1,400);
RUNMODE:0;
VARIABLE: SD = 2.5;
IF BARPOS>1 THEN
SD:=SQRT(1.632 + 0.484*DD + 0.491*SD*SD);
DD:MA(C1,400);
这句代码因为DD的数据产生至少要400根k线,那么你的递归至少是dd要有值时,才能进行递归,所以要判断出dd是有效值时,才能进行递归,那么代码如下:
C1:CALLSTOCKEX('RB09',VTCLOSE,1,-1,500);
bb:barpos;
dd:ma(c1,400);
RUNMODE:0;
VARIABLE: SD = 2.5;
IF valid(dd)=1 THEN
SD:=SQRT(1.632 + 0.484*DD + 0.491*SD*SD);
这次可以了,谢谢