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

建议Document对象增加对全局变量的遍历机制 删除某些前缀的全局变量的功能 [金字塔]

  • 咨询内容:

    我经常需要将程序运行过程中的临时变量写到全局变量中,如果每天都不清除这些全局变量,那么就会很混乱,有些变量是需要保留的,而有些是不需要的,这些变量在保存的时候会以当时的账户、合约代码和价格等信息组合而成的变量名称,要删除这些变量的话,最好的方法就是循环读取每一个变量,逐个删除,或者删除具有一定前缀的特定变量。

     

    所以建议开发人员对document对象进行功能增强,提供:

    1、基于0的索引遍历机制

    2、删除某1个全局变量的功能

    3、删除某些前缀的全局变量的功能。

    4、批量修改某一特征的全局变量的值的功能。

     

     

  • 金字塔客服:

    采纳

     

  • 用户回复:

    王锋版主,今天你心情肯定很好吧,我以前都提过的问题,你都没有理我,今天全部采纳。

    我也很开心,谢谢你了,我越来越喜欢金字塔了。做的项目一个比一个大了。

     

  • 网友回复:

    2.92果然增加了这些功能,我简单测试了一下,属性中的 ExtDataNum、ExtDataStringNum可以分别返回数值型和字符型变量的个数,

    但是不能遍历,每次返回的都是第一个变量。

     

    以下是测试代码:

     

    sub testglobal()
     dim KeyName
     
     iCount1=Document.ExtDataNum()
     application.MsgOut cdate(time)&",iCount1:"&iCount1
     for i=0 to iCount1-1
      Result = Document.GetExtDataByIndex(i,KeyName)
      KeyValue=document.GetExtData(KeyName)
      application.MsgOut "KeyName:"&KeyName &",KeyValue:"&KeyValue
     next
     
     iCount2=Document.ExtDataStringNum()
     application.MsgOut cdate(time)&",iCount2:"&iCount2
     for i=0 to iCount2-1
      Result = Document.GetExtStringByIndex(i,KeyName)
      KeyValue=document.GetExtString(KeyName)
      application.MsgOut "KeyName:"&KeyName &",KeyValue:"&KeyValue
     next
     
    end sub

     

    而删除指定索引位置的变量的方法RemoveExtData不能删除,RemoveExtString只能删除索引为0位置的变量,请开发人员测试。

     

    [此贴子已经被作者于2012-8-30 23:24:30编辑过]

     

  • 网友回复: 已经看到问题,下个升级版会进行修正

 

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

可联系技术人员 QQ: 262069696  点击在线交流进行 有偿 编写!不贵!点击查看价格!


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

相关文章

    没有相关内容