以下是截取1小段代码:
IF mod(当前K线序号,3)=1 THEN BEGIN
A:=CALLSTOCK('',vtCLOSE,3,0);
15分钟长RSI:=SMA(MAX(C-A,0),N1,1)/SMA(ABS(C-A),N1,1)*100;
END
按照提示,需要把SMA提到IF前面,但是我的SMA里面的A值,是通过CALLSTOCK取得,难道把CALLSTOCK也提到IF前?还是怎解决?
常规做法是把SMA以及CALLSTOCK单独抽离出来,放在条件语句外面用变量存储下,然后在IF里面调用。意思就是无论你是否用的到,反正先给算出来放边上备用。
CALLSTOCK是在满足IF条件才能进行,要是把他放到IF前面,我要怎增加语句,来实现CALLSTOCK调用数据?
你直接引用15分钟周期上的RSI指标就可以了,不需要再算一遍啊。
IF mod(当前K线序号,3)=1 THEN
15分钟RSI:=stkindi('','RSI.RSI1',0,3,0);
[此贴子已经被作者于2017/8/15 10:02:19编辑过]