以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  这两种写法有什么区别?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=162891)

--  作者:qq代人发帖
--  发布时间:2018/4/19 14:23:35
--  这两种写法有什么区别?
IF 条件A THEN BEGIN
    开多:BUY(持仓=0,1,MARKET);
   END 
多:BUY(条件B and 持仓=0,1,MARKET);          //开多
这两种写法有什么区别?我同时写在一起会不会有什么冲突?
或者会不会有优先执行哪个的说法?,,平仓情况是不是也一样?
或者说,哪种写法对更好一些?比如对运算,或者执行

--  作者:wenarm
--  发布时间:2018/4/19 14:28:31
--  

1.这两种表达方式,没有在功能上没有区别。看使用习惯。但是对于代码模块化和可读性来说,前者更易于阅读。

 

这两中写法你写在一起,不会冲突,代码执行的逻辑是从上到下。顺序执行。谁条件满足谁触发,都满足都会触发。


--  作者:小飞哥
--  发布时间:2018/4/19 14:38:04
--  
好的,谢谢!
--  作者:小飞哥
--  发布时间:2018/4/19 16:06:23
--  
对了,如果同时写两个这样语句,,同时都是一个条件下单,这样会不会执行完一个下单再执行另一个下单,一共下两单?,不指定仓位的情况下?
--  作者:FireScript
--  发布时间:2018/4/19 16:11:40
--  
 持仓=0这个条件会限制住的,只会执行第一个。
--  作者:小飞哥
--  发布时间:2018/4/19 16:35:30
--  
嗯,我的意思不加持仓=0的情况下,,,  如果写会不会开两单呢?,这只是假设,当然我需要开两单会直接把手数写成2
IF 条件A THEN BEGIN
    开多:BUY(1,1,MARKET);
   END 
IF 条件A THEN BEGIN
    开多:BUY(1,1,MARKET);
   END 

--  作者:FireScript
--  发布时间:2018/4/19 17:11:35
--  
 不加 那就限制不了了。