Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[讨论]把SMA提到IF前面后,出现问题?

1楼
red7 发表于:2017/8/14 17:39:01
 
以下是截取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前?还是怎解决?
2楼
FireScript 发表于:2017/8/15 8:38:37
常规做法是把SMA以及CALLSTOCK单独抽离出来,放在条件语句外面用变量存储下,然后在IF里面调用。意思就是无论你是否用的到,反正先给算出来放边上备用。
3楼
red7 发表于:2017/8/15 9:53:10
CALLSTOCK是在满足IF条件才能进行,要是把他放到IF前面,我要怎增加语句,来实现CALLSTOCK调用数据?
4楼
gxx978 发表于:2017/8/15 10:02:05

你直接引用15分钟周期上的RSI指标就可以了,不需要再算一遍啊。

IF mod(当前K线序号,3)=1 THEN
  15分钟RSI:=stkindi('','RSI.RSI1',0,3,0);

[此贴子已经被作者于2017/8/15 10:02:19编辑过]
共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01563 s, 2 queries.