模型    
  TB模型的数据回溯 TB教学TB 页角  
  栏目:开拓TB软件使用教学  发表:小婷  时间:2015-6-27 17:04:19

推荐 最新交易系统推荐

 .西汇1号股指期货组合交易系统

 .开拓者TB短线交易模型[短线王]

 .西汇8号TB短线组合交易策略

 .期货主力资金流向分析指标

 .股指期货交易模型TB-GPtrade

推荐教学内容 最新期货教学内容

 .期货市场为什么具有价格发现的功能?

 .期货新手炒期货必懂的22条黄金法则

 .期货新手炒期货必懂的22条黄金法则

 .期货设定风险参数与拟订风险管理计划

 .对于投资新手 模拟交易不是个好起点

实盘战况 最新期货实盘站况

 .IF股指天极1号当日盈利超10%

 .炒期货如何才能让投资者更好的盈利

 .[IF]股指停止熔断后再次大获

 .[IF]11月股指波动加大变高收益

 .[IF]10月股指行情平淡实盘小赚

 

 
 

TB模型,T

 

    在TradeBlazer公式中有三种类型的数据回溯:变量回溯、参数回溯和函数回溯。

    如何使用回溯表达? XXX[nOffset]

    nOffset是要回溯引用的Bar相对于当前Bar的偏移值,该值必须大于等于0,当nOffset = 0时,即为获取当前Bar的参数值。并且nOffset不能大于当时的CurrentBar,这样会导致数据访问越界。造成不可预知的计算结果。

    变量回溯

    TradeBlazer公式共支持九种数据类型,但对于变量定义,引用类型是无效的,剩余六种数据类型中分为简单和序列两大类,简单类型变量是单个的值,不能对其进行回溯,序列类型变量是和Bar长度一致的数据排列,我们可以通过回溯来获取当前Bar以前的任意值。

TB模型图

    要使用变量回溯,需要在变量的后面,使用中括号"[nOffset]",nOffset是要回溯引用的Bar相对于当前Bar的偏移值,该值必须大于等于0,当nOffset = 0时,即为获取当前Bar的变量值。

    例如,我们定义如下技术指标:

    Vars

    NumericSeries MyVal;

    Begin

    MyVal = Average(Close,10);

    PlotNumeric("MyVal",MyVal[3]);

    End

    复制代码

    以上公式定义数值型序列变量MyVal,MyVal等于收盘价的10个周期的平均值,然后将序列变量MyVal的前3个Bar数据输出。

    以上公式MyVal的前9个数据因为需要计算的Bar数据不足,返回无效值,从第10个Bar开始,MyVal获取到正确的平均值,但是我们需要输出的数据是MyVal[3],即前3个Bar的数据,因此,直到第12个Bar,有效的数据才会被输出。以上公式的12是该公式需要的最少引用周期数,如果将输出信息画到超级图表中,前11个Bar是没有图形显示的。

    当nOffset>CurrentBar或者nOffset<0时,对于变量的回溯都将越界,这种情况下,将返回无效值。

    参数回溯

    TradeBlazer公式支持的九种基本类型,在用户函数的参数定义中全部支持,在其他的公式中参数定义只支持三种简单类型。因此,关于参数的回溯问题,只对用户函数有效,以下我们举例说明用户函数序列参数的使用。

    要使用参数回溯,需要在参数的后面,使用中括号"[nOffset]",nOffset是要回溯引用的Bar相对于当前Bar的偏移值,该值必须大于等于0,当nOffset = 0时,即为获取当前Bar的参数值。

    例如,我们定义一个用户函数MyFunc,脚本如下:

    Params

    NumericSeries   Price(0);

    Numeric         Length(10);

    Vars

    Numeric         MyAvg;

    Numeric         MyDeviation;

    Begin

    MyAvg = Summation(Price,Length)/Length;

    MyDeviation = MyAvg - Price[Length];

    Return MyDeviation;

    End

    复制代码

    以上的例子,对输入的Price我们求其10个周期的平均值,然后求出该平均值和Price的前Length个Bar的值之间的差值,将其返回。对于Price[Length]这样的参数回溯引用,其实现原理和上节所描述的变量回溯引用基本一致。

    函数回溯

    函数回溯分为系统函数的回溯和用户函数的回溯。

    系统函数中回溯的使用主要是针对Bar数据。比如我们需要获取上2个Bar的收盘价,脚本为Close[2];又或者我们需要获取10个Bar前的成交量,脚本为Vol[10]。对于Bar数据的回溯是系统函数中最常用的,虽然也可以对行情数据和交易数据等进行回溯,但是大部分并无实质的意义,返回的结果和不回溯是一样的,因此,不推荐如此使用。

    要对函数回溯引用,我们可以通过在函数名称后面添加"[nOffset]"获取其回溯值,nOffset是要回溯引用的Bar相对于当前Bar的偏移值,该值必须大于等于0,当nOffset = 0时,即为获取当前Bar的参数值。

    带有参数的函数回溯,需要将"[nOffset]"放到参数之后,另外,无参数和使用默认参数的情况下,函数调用的括号可以省略。

    用户函数的回溯和系统函数原理基本一致,但考虑到系统的执行速度和效率等因素,目前,TradeBlazer公式不支持对用户函数的回溯,如果您想要获取用户函数的回溯值,建议您将函数返回值赋值给一个序列变量,通过对序列变量的回溯来达到相同的目的。

    如下面的脚本所示,取Close的10个Bar平均值的4个周期前的回溯值:

    Vars

    NumericSeries AvgValue;

    Numeric       TmpValue;

    Begin   

    AvgValue = Average(Close,10);

    TmpValue = AvgValue[4];

    ...

    End

    复制代码

声明:以上内容仅供参考!  在线交流西汇客服
上一篇:用TB实现DMI指标     下一篇:论历史模拟与实盘操作的巨大差别  

 据,TB数据回溯, TB模型 ,TB数据,TB数
更多教学:  
更多
TB交易开拓者自定义指数问题集锦NES TB软件使用小贴士
导出数据,从TB导出数据的方法 TB策略性能测试与计算公式
相关推荐: TB短线王模型界面    TB股指期货模型界面    TB编程视频课件界面
 

友链:
期货交易模型 程序化交易 期货量化投资网 期货程序化 期货日内交易 期货投资系统 期货论坛

 

 

版权所有@西汇国际商务投资有限公司 copyriht-2014 本站内容禁止转载! 友链申请QQ:1356107194