您现在的位置:程序化交易>> 期货公式>> 交易开拓者(TB)>> 开拓者知识>>正文内容

程序化交易策略变量生存周期 [开拓者 TB]

  • 咨询内容: 新手在接触TB时,对变量的生存周期一般是没有概念的,学过编程C 或 C++语言的,肯定知道变量的作用域这个概念,但对于生存周期一般接触还是比较少的。
    在使用时,我也总是纳闷有时变量使用Numeric 类型,运算就是得不到想要的结果
    但全部使用NumericSeries 类型,有觉得没有必要,让内存占用持续上升。
    (对新手解释一下:NumericSeries 相当于仓库来了新值,就往里边放;相当于无限大的数组
      而Numeric 则里边只能存一个值,来了新值,就把过去的值扔到。)
    扩展下:无限制使用序列变量,也是部分网友反映,运行1~2小时后,内存用量上升的原因。

    言归正传:为什么有时使用Numeric 类型,运算就是得不到想要的结果呢?

    让我们做个测试:
    例1:周期一分钟
    Params
           
    Vars
            Numeric YourVar1(0);
            NumericSeries YourVar2(0);
    Begin
            //这里加入你的程序...
                    FileAppend("d:\\alive.log","赋值前-"++TimeToString(time)+"--Y1="+Text(Yourvar1)+"--Y2="+Text(Yourvar2));
            If(time>=0.095500 && time <0.095600)  {yourvar1=1;Yourvar2=2;}
            FileAppend("d:\\alive.log","赋值后-"+TimeToString(time)+"--Y1="+Text(Yourvar1)+"--Y2="+Text(Yourvar2));
    End

    结果如下
    未命名.GIF (4.87 KB, 下载次数: 0) 2012-8-14 09:38:49 上传

     

  • TB技术人员: 全局变量是在每一个TICK都有一个固定的值,只要没有语句修改,这个值不会改变,不需要申明,全局变量可直接使用

 

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

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


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

相关文章

    没有相关内容