欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 请教编程基础知识

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2621人关注过本帖树形打印复制链接

主题:请教编程基础知识

帅哥哟,离线,有人找我吗?
大豆0911
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:360 积分:0 威望:0 精华:0 注册:2017/7/2 20:47:59
请教编程基础知识  发帖心情 Post By:2018/6/21 13:57:01 [只看该作者]

麻烦问下版主,两个条件需要同时满足的情况下,1. 分成IF END 两层嵌套来写代码,是否会运算更快(乙)?

2. HOLDING>0作为平多单的条件,是不是直接省略更好?(丙)


原写法(甲):

IF HOLDING>0  and  CROSS(A,B)  THEN BEGIN

      SELLHOLDING>0,0,MARKET); //交易系统之DDZS操作  

end


两层嵌套写法(乙):

IF HOLDING>0 THEN BEGIN

    IF  CROSS(A,B) THEN BEGIN

         SELLHOLDING>0,0,MARKET); //交易系统之DDZS操作  

    end    

end

 

第三种写法(丙):

IF   CROSS(A,B)  THEN BEGIN

      SELLHOLDING>0,0,MARKET); //交易系统之DDZS操作  

end


 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26631 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2018/6/21 14:07:21 [只看该作者]

建议你直接用第一种方式,双层嵌套没有意义,这种结构语法效率问题压根微乎其微。不要本末倒置。

注:外层已经控制了,sell函数内部就不要重复使用相同条件。

 

IF HOLDING>0  and  CROSS(A,B)  THEN BEGIN

      SELL(1,0,MARKET); //交易系统之DDZS操作  

end



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
大豆0911
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:360 积分:0 威望:0 精华:0 注册:2017/7/2 20:47:59
  发帖心情 Post By:2018/6/21 14:16:23 [只看该作者]

感谢版主,这里您标红的1,是什么意思呢?

 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/6/21 14:29:23 [只看该作者]

可以看做是条件恒成立

 回到顶部