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

关于全局变量的问题 [开拓者 TB]

  • 咨询内容: 本帖最后由 ait_czj 于 2013-10-9 00:20 编辑

    请教管理员,全局变量在我的理解里面应该是有了赋值动作之后数值才发生变化。可是在实盘中我发现好像并非如此。举个列子:IF(close<conditon &&  a_totalposition>0 &&  getgloalvar(0)==0) {a_sendorder(enum_sell,enum_exit,lots,q_bidprice);
    a_sendorder(enum_sell,enum_entry,lots,Q_BIDPRICE); SETGLOALVAR(0,5);} .....这段代码表示了CLOSE 符合条件并且仓位相反而且之前没有交易过,则平老仓反手开新仓,全局变量设置为交易过了。可是实际情况是历史k线的close<condition,而且当时a_totalposition<0,即当时的仓位是同方向的,是没有开平仓动作的,可是这条历史k线的下一个k线的全局变量的值已经变成5了,即系统已经默认开平过仓了。所以我觉得奇怪,请管理员看一看怎么回事?

     

  • TB技术人员: 本帖最后由 ait_czj 于 2013-10-9 00:21 编辑

    这种情况造成了 当上一条K线的close<condition,而当时a_totalposition<0,即当时的仓位是同方向的,本来没有开平仓动作的,可是下一条k线上的全局变量已经被赋值是5了,造成后面再出现信号也不执行了。

     

  • TB客服: 难道全局变量也是图表驱动的?望管理员解答一下!

     

  • 网友回复: 管理员都没上班吗?能否给解答一下!

     

  • 网友回复: 本帖最后由 ample 于 2013-10-9 14:17 编辑

    全局变量不分上一根K线,下一根K线,整个策略和图表有效。
    楼主给出的代码,只要执行了一次,全局变量就赋值为5了,再没有下一次的改变之前,一直都是5.

 

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

可联系技术人员 QQ: 1145508240  有需要帮忙请点击这里留言!!!进行 有偿 编写!不贵!点击查看价格!


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

相关文章

    没有相关内容