打印本文打印本文 关闭窗口关闭窗口

请教如何限制策略交易不提前一根bar发出委托

作者:开拓者 TB 来源:cxh99.com 发布时间:2022年02月24日
  • 咨询内容:         我用的策略是10分钟周期的,之前对全局变量进行一顿大改后,今天下午还是出现了信号闪烁的交易警告,查看消息发现如下情况

           从上图可以看到,每个交易都提前了1秒
           那么问题就出来了,我控制交易手数的某个变量A取值需要用到前一根bar的的收盘价来计算,而提前了1秒,14:39:59时候变量A的值还没重新计算就发出了委托,然后下一秒后才是14:40:00这根新bar,这时候A变量重新计算,导致交易手数出现前后差异,然后系统就弹出了信号闪烁的警告。
           所以,请问如何限制策略交易不要提前发单呢?
    附件: 你需要登录才可以下载或查看附件。没有帐号?注册

     

     来源:CXH99.COM

  • TB技术人员: 这个只是你操作系统的时间误差而已,并不见得就是前一个bar啊。

     

  • TB客服:
    小米 发表于 2019-11-8 16:38
    这个只是你操作系统的时间误差而已,并不见得就是前一个bar啊。

          版主,那个策略交易成交的手数是用前一个bar(即14:30-14:39)中数据计算的手数来成交的,然后下一个bar出现后就预警信号闪烁了...
    所以遇到这种情况应该怎么改呢?毕竟我本地时间已经用北京时间了啊....

     

  • 网友回复:
    小米 发表于 2019-11-8 16:38
    这个只是你操作系统的时间误差而已,并不见得就是前一个bar啊。

    版主,又出现了,两个开仓单,有一个竟然提前了400ms,另一个则很正常,请问应该怎么解决呢?


    附件: 你需要登录才可以下载或查看附件。没有帐号?注册

     

  • 网友回复:
  • 本帖最后由 小米 于 2019-11-11 10:50 编辑
    deyintouzi 发表于 2019-11-11 10:10
    版主,又出现了,两个开仓单,有一个竟然提前了400ms,另一个则很正常,请问应该怎么解决呢?


    前面已经说了,这种情况基本上就是本地时间不准确的原因,只是一个显示的问题啊。
    两个不 的合约,不同的策略,不同的时间进行发单 ,这个不是正常的事吗?
    如果你仍是怀疑是在前一个bar下的单 ,那么写一个日志跟踪一下问题就清楚了。

    另外,信号闪烁的问题,一定要从公式里进行排查。。有问题的公式不应该用于自动交易。
打印本文打印本文 关闭窗口关闭窗口