您现在的位置:程序化交易>> 期货公式>> 金字塔等>> 其他期货软件知识>>正文内容

同一个预警多合约下单时,tremainqty的取值疑问 [金字塔]

  • 咨询内容:

    同一个预警里,对多个合约下单。比如对股指07 和 股指08 下单

     

    if07 开多5手  ,if08开空5手

    wt=tremainqty(0,'800988','');//最后一个参数为空,代表获取所有合约的未成交委托单数量

    【下单】后,此时的tremainqty是10

    接下来,如果if07完全成交,而if08并未成交,此时的wt取值会出错,wt=0,而非为5 。

     

    因为我的代码只有在wt=0的情况下才会下单,而实际情况是if07完全成交而if08并未完全成交时,程序也会继续下单

    相关代码如下:

    globalvariable:abb=0;//abb用来控制前后2次下单的间隔时间

    if not(islastbar) then exit;

    wt=tremainqty(0,'200222','');//最后一个参数为空

    if tsubmit(0)>10 and wt>0.5 then tcancel(1,0);//10秒撤单

    if wt<0.5 and abb=0 then begin

      //后台下单语句

      if cond1 then begin tbuy();abb=3;end

      if cond2 then begin tsell();abb=3;end

      ……

    end

    if abb>0 then abb:=abb-1;

     

     

  • 金字塔客服: wt=tremainqty(0,'800988','');//最后一个参数为空,因该取的是当前合约的未成交单吧

     

  • 用户回复:

    返回指定帐户品种下商品委托方向的当日未成交委托单数量
    用法:TREMAINQTY(N,AC,STOCK),N为委托方向.0所有方向;1开多;2平多;3开空;4平空; AC为帐户ID,为空表示针对所有帐户; STOCK为品种代码,为空表示针对所有品种.
    该函数返回常数,并只只在国内期货平台交易有效
    该函数依赖TBUY等交易语句或者在交易监控中的手工干预的成交记录。
    所属函数组:后台程式化交易(专业版)

     

    按照函数说明,应该是所有品种,如果楼主反应的情况属实,那么说明程序有bug

     

  • 网友回复: 那应该是说明有误,下个版本会考虑更新

     

  • 网友回复:

    那要怎么样取得所有合约?

    每个合约分开取,再相加?呵呵,明天试试

 

如果以上指标公式不适用于您常用的行情软件

或者您想改编成选股公式,以便快速选出某种形态个股的话,

可以联系我们相关技术人员 QQ: 262069696  点击在线交流进行 有偿 改编!

 


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

相关文章

    没有相关内容