您现在的位置:程序化交易>> 期货公式>> 文华财经>> 文华财经知识>>正文内容

IF代码执行的顺序是如何? [文华财经]

  • 咨询内容: 以下是我的部分代码: VARIABLE:OPIBREAKFLAG:=0,LOCALOPIBREAKF:=0,ENTERPRICE:=0;IF BKVOL = 0 THENBEGIN   IF CLOSE>OPEN&&MA1>MA2&&MA2>MA3&&OPIBREAKFLAG=1 THEN   BEGIN  //BK(500000/CLOSE*UNIT*MARGIN);  ENTERPRICE:=CLOSE;   END   CLOSE>OPEN&&MA1>MA2&&MA2>MA3&&OPIBREAKFLAG=1,BK(500000/CLOSE*UNIT*MARGIN);
    ENDPRINTPRICE:ENTERPRICE;//-----------------------------------------------------------以上为代码内容我的本意是想在买开的时候记录当时的开仓价格;但是,我用上诉代码执行的时候发现,开仓语句(第二条红色代码)不能被执行。如果我把顺序调一下:

     VARIABLE:OPIBREAKFLAG:=0,LOCALOPIBREAKF:=0,ENTERPRICE:=0;IF BKVOL = 0 THENBEGIN    CLOSE>OPEN&&MA1>MA2&&MA2>MA3&&OPIBREAKFLAG=1,BK(500000/CLOSE*UNIT*MARGIN);   IF CLOSE>OPEN&&MA1>MA2&&MA2>MA3&&OPIBREAKFLAG=1 THEN   BEGIN   //BK(500000/CLOSE*UNIT*MARGIN);   ENTERPRICE:=CLOSE;   END  
    ENDPRINTPRICE:ENTERPRICE;//-----------------------------------------------------------以上为代码内容我发现“ENTERPRICE:=CLOSE;”不能执行,图上打印出来的值都是0

     

  • 文华技术人员: IF BKVOL = 0 THEN BEGIN   IF CLOSE>OPEN&&MA1>MA2&&MA2>MA3&&OPIBREAKFLAG=1 THEN  1,BK(500000/CLOSE*UNIT*MARGIN);  ENTERPRICE:CLOSE;ENDELSE BEGINPRINTPRICE:ENTERPRICE;END

     

  • 文华客服:  为什么我那么写只能执行一条???是什么机制导致了只能执行上面一条?

     

  • 网友回复:

    我的本意是想在买开的时候记录当时的开仓价格;但是,我用上诉代码执行的时候发现,开仓语句(第二条红色代码)不能被执行

     

    因为您没写开仓语句

     

  • 网友回复:  我贴出来的代码里面开仓语句写了,就是红色字体的那部分。。。我刚才各种试这个IF THEN BEGIN,还是没搞懂这个执行机制是怎么样的。之前你同事贴给我代码里面,“ENTERPRICE”这个变量被赋值都是前一个K线的CLOSE值,我想要的是当前这跟下单K线的CLOSE值

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容