以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- 请教编程基础知识 (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=164107) |
-- 作者:大豆0911 -- 发布时间:2018/6/21 13:57:01 -- 请教编程基础知识 麻烦问下版主,两个条件需要同时满足的情况下,1. 分成IF END 两层嵌套来写代码,是否会运算更快(乙)? 2. HOLDING>0作为平多单的条件,是不是直接省略更好?(丙) 原写法(甲): IF HOLDING>0 and CROSS(A,B) THEN BEGIN SELL(HOLDING>0,0,MARKET); //交易系统之DDZS操作 end 两层嵌套写法(乙): IF HOLDING>0
THEN BEGIN IF CROSS(A,B) THEN BEGIN SELL(HOLDING>0,0,MARKET); //交易系统之DDZS操作 end end
第三种写法(丙): IF CROSS(A,B) THEN BEGIN SELL(HOLDING>0,0,MARKET); //交易系统之DDZS操作 end |
-- 作者:wenarm -- 发布时间:2018/6/21 14:07:21 -- 建议你直接用第一种方式,双层嵌套没有意义,这种结构语法效率问题压根微乎其微。不要本末倒置。 注:外层已经控制了,sell函数内部就不要重复使用相同条件。
IF HOLDING>0 and CROSS(A,B) THEN BEGIN SELL(1,0,MARKET); //交易系统之DDZS操作 end |
-- 作者:大豆0911 -- 发布时间:2018/6/21 14:16:23 -- 感谢版主,这里您标红的1,是什么意思呢? |
-- 作者:banzhuan -- 发布时间:2018/6/21 14:29:23 -- 可以看做是条件恒成立 |