以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  句法问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=99497)

--  作者:annbi
--  发布时间:2016/6/23 15:13:39
--  句法问题

If atrn1>=atrn2  then

begin


ATRn_4:= MA2;

end


如果BEGIN END 中间只得一句, 可否省略不打BEGIN END


Iatrn1>=atrn2  then



ATRn_4:= MA2;



--  作者:jinzhe
--  发布时间:2016/6/23 15:19:36
--  
可以,只有一句是可以省略的
--  作者:annbi
--  发布时间:2016/6/24 16:16:18
--  

If atrn1>=atrn2  then

begin

ATRn_3:= MA1;

ATRn_4:= MA2;

end



和以下有何分别, 兩个版本也能被通過的


Iatrn1>=atrn2  then

begin

ATRn_3:= MA1,  //不同处

ATRn_4:= MA2;

end




另RUNMODE 0 和RUNMODE 1 有何大分别和不同效能效果?谢谢

[此贴子已经被作者于2016-6-24 16:16:54编辑过]

--  作者:jinzhe
--  发布时间:2016/6/24 16:23:11
--  

1.上下两句不一样的地方请指出

2.效果一样的,是公式的数据计算方式不同,影响的是计算效率,不是计算结果


--  作者:annbi
--  发布时间:2016/6/24 16:28:25
--  
ATRn_3:= MA1,  //不同处  只此句而已,  逗号和分号之差

////////////////////////////////////////////////////
另外Iatrn1>=atrn2  then

begin

ATRn_3:= MA1;

ATRn_4:= MA2;

end

省略成以下行吗
Iatrn1>=atrn2  then


ATRn_3:= MA1;

ATRn_4:= MA2;




--  作者:jinzhe
--  发布时间:2016/6/24 16:37:05
--  

1.不行,没有这样的写法,句子之间的分隔是分号

2.也不行,有begin的,if判断影响了后面两句赋值

没有begin,if判断只影响第一句赋值


--  作者:annbi
--  发布时间:2016/6/24 16:51:01
--  
若只有一句也去加BEGIN...END 没问题吧
--  作者:jinzhe
--  发布时间:2016/6/24 16:52:02
--  
也行