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

关于参数传递的问题 [开拓者 TB]

  • 咨询内容:
    Params
            Numeric N(10);
    Vars
            Numeric Price;     
            Numeric Price1;  
            Numeric AvgVal;     
    Begin
            Price = Close;                                    //关键价格
           
            AvgVal = Average(Price,N);   
            Price1=Average(Close,N);
           
            PlotNumeric("AvgVal",AvgVal);
            PlotNumeric("Price1",Price1,0,red);

    End


    上面画出的两条线是一样的,为什么啊
    close好理解本身就是序列变量,但是Price是简单变量啊,它在计算average函数的时候如何回溯呢,不能被回溯的啊。还有这两种调用方法哪种更适合呢。

     

  • TB技术人员: average的第一个参数里,price的值与close的值一样,第二个参数都是N。
    二个参数都 一样,计算结果自然相同。
    price虽声明的是简单变量,但是给其赋的值是close,也是第一个bar都会存在的值 ,是可以满足计算需求了。
    如果你要计算average(price[1],N)时,price就一定要声明为numericseries了。。

     

  • TB客服:
    小米 发表于 2015-12-25 10:32
    average的第一个参数里,price的值与close的值一样,第二个参数都是N。
    二个参数都 一样,计算结果自然相同 ...

    谢谢小米版主的回答。
    我还是找到答案了,主要还是tb的传参机制不同造成的,对于java之类编程语言来说有很大不同。公式指导书里面也是一笔带过。

    另外小米版主能否提供些tb语言与其他语言不同机制的介绍呢。

     

  • 网友回复:
    netbread 发表于 2015-12-25 11:58
    谢谢小米版主的回答。
    我还是找到答案了,主要还是tb的传参机制不同造成的,对于java之类编程语言来说有 ...

    抱歉啊。。
    不太懂其它语言的机制分别是什么样的,所以也没法就相互之间的不同做对比与介绍。
    可能需要交易者多看TB帮助文档,以慢慢了解TB语言呢。

 

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

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


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

相关文章

    没有相关内容