QuickFIX StartTime和EndTime设置应该做什么?

时间:2016-01-12 06:15:25

标签: quickfix fix-protocol

我试图了解QuickFIX配置文件中的StartTime和EndTime设置。我使用QuickFIX .Net来实现买方FIX客户端,设置为发起方。

默认情况下,StartTime和EndTime都设置为00:00:00

因此每次我的程序运行时(它调用initiator.start()),它都会自动向服务器发送登录消息。没问题。

然后我玩StartTime和EndTime设置。在QuickFIX文档中没有太多关于它的细节。我想当我运行程序时,应用程序将在StartTime发送Logon消息,而EndTime的Logout不是吗?

所以我将StartTime和EndTime设置为10:00和11:00

我在09:50启动了该程序,该程序刚刚创建了会话并且没有发送登录消息。合理。然后在10点,什么都没发生......

下一次试用我在10:50启动了程序,该程序创建了会话并照常登录。比在11点,再也没有发生过。我想它会自动注销......

所以我的问题是StartTime和EndTime应该如何影响我的程序?

2 个答案:

答案 0 :(得分:6)

来自the docs

  • ID: StartTime

    • 说明:此FIX会话激活的时间
    • 有效值时间格式为HH:MM:SS,时间以UTC表示
  • ID: EndTime

    • 说明:此FIX会话停用的时间
    • 有效值时间格式为HH:MM:SS,时间以UTC表示

所以,是的,你大概是对的。在StartTime,您的应用会尝试登录。在EndTime,它将注销。在这些时间之间,它将不断尝试重新连接。

未提及是此时间窗口确定您的序列号何时重置。在StartTime,引擎会将序列号重置为0.因此,您的StartTime / EndTime与您的交易对手同步非常重要。

答案 1 :(得分:1)

发现旧的QuickFix / n库在UseLocalTime设置上有bug。我使用最新的v1.5重建了我的程序,它按预期工作。