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

请教版主,关于序列变量的传递机制问题 [开拓者 TB]

  • 咨询内容: 比如说道一个序列变量A,它在上一根K线的值是0,在下一根K线中,在某一个TICK来的时候,A的值被改为1,那么,下一个TICK的时候,A的值是多少呢?

     

  • TB技术人员: 下一个tick如果值没有被改变的话,就还是1

     

  • TB客服: 多谢版主回答!可既然这样,为什么我在开仓条件中有一个序列变量,开仓前是0,开仓后赋值为1,通过监控记录发现开仓的语句在开仓BAR里一直重复执行到这个bar结束? 类似这样:
    if(R=0&&其它条件)
       {  
         buy(0,1);
         R=1;
          If(barstatus==2)
           FileAppend("d:\\formula.txt",DateToString(currentdate)+" "+TimeToString(currenttime)+" "+Symbol+" "+"开多:"+Text(MyEntryPrice));
        }

    事后查看formula.txt文件,同一个开仓动作有许多重复的记录,这说明fileappend被执行了许多次,R不是开仓后置为1了么?按说开仓条件已经不存在了呀,版主能否讲解一下呢?
       

     

  • 网友回复:
    xiaoxiao8 发表于 2015-12-28 10:56
    下一个tick如果值没有被改变的话,就还是1

    多谢版主回答!可既然这样,为什么我在开仓条件中有一个序列变量,开仓前是0,开仓后赋值为1,通过监控记录发现开仓的语句在开仓BAR里一直重复执行到这个bar结束? 类似这样:
    if(R=0&&其它条件)
       {  
         buy(0,1);
         R=1;
          If(barstatus==2)
           FileAppend("d:\\formula.txt",DateToString(currentdate)+" "+TimeToString(currenttime)+" "+Symbol+" "+"开多:"+Text(MyEntryPrice));
        }

    事后查看formula.txt文件,同一个开仓动作有许多重复的记录,这说明fileappend被执行了许多次,R不是开仓后置为1了么?按说开仓条件已经不存在了呀,版主能否讲解一下呢?

     

  • 网友回复:
    tommy8734 发表于 2015-12-31 15:25
    多谢版主回答!可既然这样,为什么我在开仓条件中有一个序列变量,开仓前是0,开仓后赋值为1,通过监控记录 ...

    在当前bar上,A的值在某个tick来的时候被改为1.
    在下一个tick,A的值初始值仍是0,在执行到A=1这样的赋值 语句后,才会变为1.( 假设条件是一直成立的情况下)
    每一个tick都是这样从0 -->1的变化,周而复始的,直到这个bar走完,会将A以1的值传递给下一个bar.
    具体的表现可以参考此贴http://bbs.tb18.net/thread-22580-1-1.html

 

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

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


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

相关文章

    没有相关内容