Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect BeginString (FIX.4.4) in c# (Quickfixn) on windows machine while receiving X MsgType #894

Open
geraltdwf opened this issue Oct 3, 2024 · 4 comments

Comments

@geraltdwf
Copy link

geraltdwf commented Oct 3, 2024

Hi,

I'm working on managing a market data stream using the FIX Protocol with QuickFIXn (version 1.12.0) on a Windows machine, specifically using FIX 4.4. After successfully connecting to the server, I receive a market data message (MsgType X), but it results in the following error you can see below

This error only occurs when subscribing to market data, also before message X there always comes a response with MarketDataSnapshot(W). There are no indications of missing tags or any rejection messages that would trigger a logout or session termination.

It looks like similar issue from this PR #663 which was referring to linux machine. If necessary, I can provide more details with configuration.

Sender headers

<fix major="4" minor="4">
    <header>
        <field name="BeginString" required="Y"/>
        <field name="BodyLength" required="Y"/>
        <field name="MsgType" required="Y"/>
        <field name="SenderCompID" required="Y"/>
        <field name="SenderSubID" required="N"/>
        <field name="TargetCompID" required="Y"/>
        <field name="MsgSeqNum" required="Y"/>
        <field name="PossDupFlag" required="N"/>
        <field name="SendingTime" required="Y"/>
        <field name="OrigSendingTime" required="N"/>
    </header>

Full logs for MD session from connection to session termination by system

<event> Created session
<event> Connecting to 121.0.0.1 on port 4044
<event> Connection succeeded
<event> Session reset: ResetOnLogon
<event> Session reset: ResetSeqNumFlag
<outgoing> 8=FIX.4.4|9=80|35=A|34=1|49=XXXXXXMD|52=20241003-05:54:53.060|56=YYYYYYYYY|98=0|108=60|141=Y|10=206|
<event> Initiated logon request
<incoming> 8=FIX.4.4|9=77|35=A|34=1|49=YYYYYYYYY|52=20241003-05:54:53.266688|56=XXXXXXMD|98=0|108=60|10=085|
<event> Received logon
<outgoing> 8=FIX.4.4|9=164|35=V|34=2|49=XXXXXXMD|52=20241003-05:55:06.036|56=YYYYYYYYY|262=2024100305550600|263=1|264=0|265=1|146=1|55=NQ100|200=DEC24|461=FXXXXX|267=2|269=0|269=1|10=069|
<incoming> 8=FIX.4.4|9=48285|35=W|34=2|49=YYYYYYYYY|52=20241003-05:55:06.193618|56=XXXXXXMD|55=NQ100|200=202412|207=TQS|262=2024100305550600|268=1463|269=0|270=19938.00|271=10|290=1|
269=0|270=19937.75|271=13|290=2|269=0|270=19937.50|271=2|290=3|269=0|270=19937.25|271=3|290=4|269=0|270=19937.00|271=3|290=5|269=0|270=19936.75|271=3|290=6|269=0|270=19936.50|271=6|290=7|269=0|
270=19936.25|271=6|290=8|269=0|270=19936.00|271=7|290=9|269=0|270=19935.75|271=5|290=10|269=0|270=19935.50|271=5|290=11|269=0|270=19935.25|271=5|290=12|269=0|270=19935.00|271=9|290=13|269=0|
270=19934.75|271=5|290=14|269=0|270=19934.50|271=12|290=15|269=0|270=19934.25|271=5|290=16|269=0|270=19934.00|271=7|290=17|269=0|270=19933.75|271=4|290=18|269=0|270=19933.50|271=4|290=19|269=0|
270=19933.25|271=5|290=20|269=0|270=19933.00|271=8|290=21|269=0|270=19932.75|271=4|290=22|269=0|270=19932.50|271=8|290=23|269=0|270=19932.25|271=4|290=24|269=0|270=19932.00|271=7|290=25|269=0|
270=19931.75|271=4|290=26|269=0|270=19931.50|271=7|290=27|269=0|270=19931.25|271=15|290=28|269=0|270=19931.00|271=8|290=29|269=0|270=19930.75|271=6|290=30|269=0|270=19930.50|271=7|290=31|269=0|
270=19930.25|271=4|290=32|269=0|270=19930.00|271=9|290=33|269=0|270=19929.75|271=5|290=34|269=0|270=19929.50|271=16|290=35|269=0|270=19929.25|271=3|290=36|269=0|270=19929.00|271=8|290=37|269=0|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=3|49=XXXXXXMD|52=20241003-05:55:06.893|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=124|
<incoming> 8=FIX.4.4|9=121|35=f|34=3|49=YYYYYYYYY|52=20241003-05:55:06.194304|56=XXXXXXMD|55=NQ100|200=202412|207=TQS|326=17|461=FXXXXX|10=216|
<incoming> 8=FIX.4.4|9=178|35=X|34=4|49=YYYYYYYYY|52=20241003-05:55:06.241462|56=XXXXXXMD|262=2024100305550600|268=1|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=2|290=1|461=FXXXXX|10=073|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=4|49=XXXXXXMD|52=20241003-05:55:06.897|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=129|
<incoming> 8=FIX.4.4|9=264|35=X|34=5|49=YYYYYYYYY|52=20241003-05:55:06.498576|56=XXXXXXMD|262=2024100305550600|268=2|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.50|271=1|290=3|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=2|290=1|461=FXXXXX|10=040|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=5|49=XXXXXXMD|52=20241003-05:55:06.900|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=115|
<incoming> 8=FIX.4.4|9=264|35=X|34=6|49=YYYYYYYYY|52=20241003-05:55:06.498695|56=XXXXXXMD|262=2024100305550600|268=2|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=2|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.25|271=1|290=1|461=FXXXXX|10=044|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=6|49=XXXXXXMD|52=20241003-05:55:06.907|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=123|
<incoming> 8=FIX.4.4|9=280|35=X|34=7|49=YYYYYYYYY|52=20241003-05:55:06.498748|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.00|271=1|272=20241003|273=05:55:06.396|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29777|461=FXXXXX|10=138|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=7|49=XXXXXXMD|52=20241003-05:55:06.910|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=118|
<incoming> 8=FIX.4.4|9=246|35=X|34=8|49=YYYYYYYYY|52=20241003-05:55:06.499007|56=XXXXXXMD|262=2024100305550600|268=2|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.75|271=13|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=0|290=1|461=FXXXXX|10=216|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=8|49=XXXXXXMD|52=20241003-05:55:06.915|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=124|
<incoming> 8=FIX.4.4|9=280|35=X|34=9|49=YYYYYYYYY|52=20241003-05:55:06.499052|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.00|271=9|272=20241003|273=05:55:06.396|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29786|461=FXXXXX|10=137|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=97|35=5|34=9|49=XXXXXXMD|52=20241003-05:55:06.919|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=129|
<incoming> 8=FIX.4.4|9=333|35=X|34=10|49=YYYYYYYYY|52=20241003-05:55:06.499135|56=XXXXXXMD|262=2024100305550600|268=3|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.75|271=12|290=1|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.00|271=1|290=1|461=FXXXXX|10=199|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=10|49=XXXXXXMD|52=20241003-05:55:06.925|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=167|
<incoming> 8=FIX.4.4|9=281|35=X|34=11|49=YYYYYYYYY|52=20241003-05:55:06.499181|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=1|272=20241003|273=05:55:06.396|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29787|461=FXXXXX|10=186|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=11|49=XXXXXXMD|52=20241003-05:55:06.927|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=170|
<incoming> 8=FIX.4.4|9=179|35=X|34=12|49=YYYYYYYYY|52=20241003-05:55:06.499230|56=XXXXXXMD|262=2024100305550600|268=1|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.75|271=6|290=1|461=FXXXXX|10=138|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=12|49=XXXXXXMD|52=20241003-05:55:06.930|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=165|
<incoming> 8=FIX.4.4|9=281|35=X|34=13|49=YYYYYYYYY|52=20241003-05:55:06.499266|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.396|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29789|461=FXXXXX|10=195|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=13|49=XXXXXXMD|52=20241003-05:55:06.935|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=171|
<incoming> 8=FIX.4.4|9=281|35=X|34=14|49=YYYYYYYYY|52=20241003-05:55:06.499300|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.396|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29791|461=FXXXXX|10=178|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=14|49=XXXXXXMD|52=20241003-05:55:06.941|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=169|
<incoming> 8=FIX.4.4|9=281|35=X|34=15|49=YYYYYYYYY|52=20241003-05:55:06.499347|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.00|271=1|272=20241003|273=05:55:06.397|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29792|461=FXXXXX|10=179|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=15|49=XXXXXXMD|52=20241003-05:55:06.944|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=173|
<incoming> 8=FIX.4.4|9=246|35=X|34=16|49=YYYYYYYYY|52=20241003-05:55:06.499438|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.25|271=2|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|10=218|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=16|49=XXXXXXMD|52=20241003-05:55:06.949|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=179|
<incoming> 8=FIX.4.4|9=281|35=X|34=17|49=YYYYYYYYY|52=20241003-05:55:06.499483|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.397|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29794|461=FXXXXX|10=197|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=17|49=XXXXXXMD|52=20241003-05:55:06.954|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=176|
<incoming> 8=FIX.4.4|9=313|35=X|34=18|49=YYYYYYYYY|52=20241003-05:55:06.499583|56=XXXXXXMD|262=2024100305550600|268=3|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.25|271=1|290=3|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=0|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=0|290=1|461=FXXXXX|10=036|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=18|49=XXXXXXMD|52=20241003-05:55:06.962|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=176|
<incoming> 8=FIX.4.4|9=434|35=X|34=19|49=YYYYYYYYY|52=20241003-05:55:06.502022|56=XXXXXXMD|262=2024100305550600|268=4|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.00|271=2|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=4|272=20241003|273=05:55:06.397|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29798|461=FXXXXX|10=202|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=19|49=XXXXXXMD|52=20241003-05:55:06.966|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=181|
<incoming> 8=FIX.4.4|9=247|35=X|34=20|49=YYYYYYYYY|52=20241003-05:55:06.502127|56=XXXXXXMD|262=2024100305550600|268=2|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19937.75|271=12|290=1|461=FXXXXX|10=246|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=20|49=XXXXXXMD|52=20241003-05:55:06.971|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=169|
<incoming> 8=FIX.4.4|9=434|35=X|34=21|49=YYYYYYYYY|52=20241003-05:55:06.502231|56=XXXXXXMD|262=2024100305550600|268=4|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.00|271=2|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=1|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29799|461=FXXXXX|10=196|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=21|49=XXXXXXMD|52=20241003-05:55:06.974|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=173|
<incoming> 8=FIX.4.4|9=606|35=X|34=22|49=YYYYYYYYY|52=20241003-05:55:06.575049|56=XXXXXXMD|262=2024100305550600|268=6|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.25|271=3|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=0|270=19937.50|271=2|290=1|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=1|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=3|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29802|461=FXXXXX|10=107|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=22|49=XXXXXXMD|52=20241003-05:55:06.980|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=171|
<incoming> 8=FIX.4.4|9=281|35=X|34=23|49=YYYYYYYYY|52=20241003-05:55:06.575117|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29804|461=FXXXXX|10=175|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=23|49=XXXXXXMD|52=20241003-05:55:06.984|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=176|
<incoming> 8=FIX.4.4|9=281|35=X|34=24|49=YYYYYYYYY|52=20241003-05:55:06.575165|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29806|461=FXXXXX|10=181|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=24|49=XXXXXXMD|52=20241003-05:55:06.987|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=180|
<incoming> 8=FIX.4.4|9=281|35=X|34=25|49=YYYYYYYYY|52=20241003-05:55:06.575211|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=1|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29807|461=FXXXXX|10=174|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=25|49=XXXXXXMD|52=20241003-05:55:06.992|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=177|
<incoming> 8=FIX.4.4|9=281|35=X|34=26|49=YYYYYYYYY|52=20241003-05:55:06.575257|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=1|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29808|461=FXXXXX|10=186|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=26|49=XXXXXXMD|52=20241003-05:55:06.995|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=181|
<incoming> 8=FIX.4.4|9=281|35=X|34=27|49=YYYYYYYYY|52=20241003-05:55:06.575302|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.75|271=2|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29810|461=FXXXXX|10=172|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=27|49=XXXXXXMD|52=20241003-05:55:07.003|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=163|
<incoming> 8=FIX.4.4|9=281|35=X|34=28|49=YYYYYYYYY|52=20241003-05:55:06.575348|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.00|271=1|272=20241003|273=05:55:06.398|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29811|461=FXXXXX|10=172|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=28|49=XXXXXXMD|52=20241003-05:55:07.006|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=167|
<incoming> 8=FIX.4.4|9=281|35=X|34=29|49=YYYYYYYYY|52=20241003-05:55:06.575394|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.00|271=1|272=20241003|273=05:55:06.399|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29812|461=FXXXXX|10=176|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=29|49=XXXXXXMD|52=20241003-05:55:07.009|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=171|
<incoming> 8=FIX.4.4|9=281|35=X|34=30|49=YYYYYYYYY|52=20241003-05:55:06.575440|56=XXXXXXMD|262=2024100305550600|268=2|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.25|271=1|272=20241003|273=05:55:06.400|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29813|461=FXXXXX|10=151|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=30|49=XXXXXXMD|52=20241003-05:55:07.015|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=160|
<incoming> 8=FIX.4.4|9=179|35=X|34=31|49=YYYYYYYYY|52=20241003-05:55:06.653005|56=XXXXXXMD|262=2024100305550600|268=1|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.50|271=1|290=1|461=FXXXXX|10=119|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=31|49=XXXXXXMD|52=20241003-05:55:07.017|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=163|
<incoming> 8=FIX.4.4|9=606|35=X|34=32|49=YYYYYYYYY|52=20241003-05:55:06.743026|56=XXXXXXMD|262=2024100305550600|268=6|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.25|271=2|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=0|290=1|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=2|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=1|270=19938.25|271=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19937.50|271=1|272=20241003|273=05:55:06.565|461=FXXXXX|5797=2|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29814|461=FXXXXX|10=093|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=32|49=XXXXXXMD|52=20241003-05:55:07.021|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=159|
<incoming> 8=FIX.4.4|9=3741|35=X|34=33|49=YYYYYYYYY|52=20241003-05:55:06.743692|56=XXXXXXMD|262=2024100305550600|268=42|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19860.00|271=5|290=308|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19860.25|271=2|290=307|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=0|270=19860.50|271=1|290=307|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19916.00|271=2|290=86|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19916.25|271=17|290=85|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19917.50|271=4|290=80|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19917.75|271=16|290=79|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19919.25|271=12|290=73|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19924.50|271=8|290=52|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19924.75|271=4|290=51|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19925.00|271=15|290=50|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19926.00|271=11|290=46|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19927.50|271=7|290=40|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19929.50|271=6|290=32|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19930.75|271=5|290=27|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19931.25|271=5|290=25|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19935.25|271=5|290=9|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19935.50|271=1|290=8|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19935.75|271=3|290=7|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19936.25|271=5|290=5|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19936.50|271=3|290=4|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19936.75|271=1|290=3|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.00|271=3|290=2|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.25|271=2|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=0|270=19937.50|271=1|290=1|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=20014.25|271=1|290=302|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19953.00|271=4|290=60|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19951.75|271=3|290=55|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19951.50|271=4|290=54|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19951.25|271=18|290=53|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19951.00|271=3|290=52|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19950.50|271=5|290=50|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19949.50|271=8|290=46|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19940.50|271=7|290=10|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19940.00|271=7|290=8|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19939.75|271=5|290=7|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19939.50|271=3|290=6|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19939.25|271=3|290=5|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19939.00|271=3|290=4|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.75|271=2|290=3|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.50|271=1|290=2|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.25|271=1|290=1|461=FXXXXX|10=050|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=33|49=XXXXXXMD|52=20241003-05:55:07.036|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=166|
<incoming> 8=FIX.4.4|9=673|35=X|34=34|49=YYYYYYYYY|52=20241003-05:55:06.994650|56=XXXXXXMD|262=2024100305550600|268=7|279=1|55=NQ100|200=202412|207=TQS|269=0|270=19937.25|271=3|290=2|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=0|270=19937.75|271=3|290=1|461=FXXXXX|279=1|55=NQ100|200=202412|207=TQS|269=1|270=19938.75|271=1|290=3|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=2|461=FXXXXX|279=2|55=NQ100|200=202412|207=TQS|269=1|290=1|461=FXXXXX|279=0|55=NQ100|200=202412|207=TQS|269=2|270=19938.25|271=1|272=20241003|273=05:55:06.841|461=FXXXXX|5797=1|279=0|55=NQ100|200=202412|207=TQS|269=B|271=29815|461=FXXXXX|10=204|
<event> QuickFix.UnsupportedVersion: Incorrect BeginString (FIX.4.4)
   at QuickFix.DefaultMessageFactory.Create(String beginString, String msgType, Int32 groupCounterTag)
   at QuickFix.Message.SetGroup(StringField grpNoFld, String msgstr, Int32 pos, FieldMap fieldMap, IGroupSpec groupSpec, IMessageFactory msgFactory)
   at QuickFix.Message.FromString(String msgstr, Boolean validate, DataDictionary transportDict, DataDictionary appDict, IMessageFactory msgFactory, Boolean ignoreBody)
   at QuickFix.MessageBuilder.Build()
   at QuickFix.Session.Next(MessageBuilder msgBuilder)
<outgoing> 8=FIX.4.4|9=98|35=5|34=34|49=XXXXXXMD|52=20241003-05:55:07.075|56=YYYYYYYYY|58=Incorrect BeginString (FIX.4.4)|10=170|
<incoming> 8=FIX.4.4|9=66|35=5|34=35|49=YYYYYYYYY|52=20241003-05:55:07.047709|56=XXXXXXMD|10=089|
<event> Received logout response
<event> Session FIX.4.4:XXXXXXMD->YYYYYYYYY disconnecting: Received logout response


@gbirchmeier
Copy link
Member

I'm sure it's not the linux issue from #663, but it might be #864, which will be in the next release. I'm trying to confirm that.

I don't think the problem is about 35=X. In the log you just posted, it looks like it first triggers on the 35=W.

  1. Can you please change your app to use a FileLogFactory instead of a ScreenLogFactory, and then post the logs from the XXXXXXMD only. The FileLogFactory has better timestamp logging. Please attach them instead of pasting them.

  2. Is it possible to comment the XXXXXXOR session out of your config entirely? If the problem is Timing issue loading DLLs #864, then you might see XXXXXXMD run correctly if it's by itself.

  3. Can I see your config file?

If you are concerned about posting anything publicly, you can email me privately. My email is easy to find.

@gbirchmeier
Copy link
Member

Are you able to try this? Any questions about my request?

@geraltdwf
Copy link
Author

Hello, sorry for not responding I was on holiday this week,

  1. I've tried to use FileLogFactory but there is only a LOGON (A) message which is logging into the file and others messages are not saved into file. I've tested it with other fix providers which works ok for me and they are saving logs properly.

  2. Yes, I removed XXXXXXXOR session from my config but issue still remains

  3. I'm using SettingsDictionary class to setup config


        SettingsDictionary dicConfig = new SettingsDictionary();
        dicConfig.SetString("ConnectionType", "initiator");
        dicConfig.SetDay("StartDay", DayOfWeek.Sunday);
        dicConfig.SetDay("EndDay", DayOfWeek.Saturday);
        dicConfig.SetDouble("HeartBtInt", val: 60);
        dicConfig.SetDouble("ReconnectInterval", 15);
        dicConfig.SetDouble("LogonTimeout", 60);
        dicConfig.SetString("FileStorePath", $"{binPath}/tmp");
        dicConfig.SetString("FileLogPath", $"{binPath}/tmp");
        dicConfig.SetBool("FileIncludeMilliseconds", true);
        dicConfig.SetBool("FileIncludeTimeStampForMessages", true);
        dicConfig.SetString("DataDictionary", QuickFixSettings.CheckDictionary("CONFIDENTIAL"));
        Settings.Set(dicConfig);
        
        SessionID quoteSessionID = new SessionID(
          beginString: "FIX.4.4",
          senderCompId: SenderCompId,
          targetCompId: TargetCompId);

        SettingsDictionary dicQuoteSession = new SettingsDictionary();
        dicQuoteSession.SetString("SocketConnectHost", "XXXXXXXXXX");
        dicQuoteSession.SetDouble("SocketConnectPort", XXXXXXXXXX);
        dicQuoteSession.SetString("StartTime", "00:00:00");
        dicQuoteSession.SetString("EndTime", "23:59:59");
        dicQuoteSession.SetString("ResetOnLogon", "Y");
        dicQuoteSession.SetString("SSLEnable", "Y");
        dicQuoteSession.SetString("SSLProtocols", "Tls12");
        dicQuoteSession.SetString("SSLValidateCertificates", "N");
        dicQuoteSession.SetString("SSLCheckCertificateRevocation", "N");
        dicQuoteSession.SetString("SSLCERTIFICATE", QuickFixSettings.CheckCertificates("SSLCERTIFICATE"));
        dicQuoteSession.SetString("SSLCERTIFICATEPASSWORD",      QuickFixSettings.CheckCertificates("SSLCERTIFICATEPASSWORD"));
        dicQuoteSession.SetString("SSLCACERTIFICATE", QuickFixSettings.CheckCertificates("SSLCACERTIFICATE"));
        this.Settings.Set(quoteSessionID, dicQuoteSession);

@gbirchmeier
Copy link
Member

I've tried to use FileLogFactory but there is only a LOGON (A) message which is logging into the file and others messages are not saved into file. I've tested it with other fix providers which works ok for me and they are saving logs properly.

QF users really need to understand that the FIX message logs generated by a LogFactory are the prime source of truth to what the engine is actually doing. Any other logging that you implement is secondary, and may actually be misleading.

If you don't see messages in the FIX log, then they are probably not being sent!

Please attach the event log and message log from that connection!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants