Menu

Suggestion are welcome

Charles
2006-02-09
2013-04-15
  • Charles

    Charles - 2006-02-09

    If you have any suggestion or feature to incorporate in the the project make them known now while it's still under heavy construction.

    It's easy to plan ahead and leave openings in the project to complete at a later time, but much harder to re-desgin after much work has been done.

     
    • Daniel Lynes

      Daniel Lynes - 2007-02-02

      Is there an easy way to reset the internal send queue message sequence number?  When you send the initial session login message, and you have the wrong sequence number, the FIX server if written according to spec, will send you back a logout message instead of a corresponding login message, and tell you in the text field what the correct sequence number is.

      Here's a sample message back:

      2007-02-02 10:41:33,234 [SocketEngine.Receive] DEBUG FIX4NET.Net.SocketEngine : ReceiveLoop - Message parsed from stream / Message=8=FIX.4.4|9=114|35=5|34=12|49=FXSOL|50=FixGateway|56=CURCON|52=20070202-18:41:15|58=Expect Sequence Number 12.Session terminated.|10=100|

      I've replaced all occurrences of Ctrl-A with a pipe symbol.

      Thanks.

       
    • Charles

      Charles - 2007-02-02

      Yes...

      After you initialize the SocketEngine call ResetMsgSeqNumOut and then call Logon.

      Example:
      IEngine engine = new SocketEngine();
      engine.Initialize("A2", null, "B2", null, typeof(MessageCacheFlatFile), factory);
      //Reset the outgoing MsgSeqNum to 50
      engine.ResetMsgSeqNumOut(50);
      engine.Logon(logonArgs);

      This works but it's not completely finished.  It's supposed to update the storage file with the new MsgSeqNum, but it doesn't.  So you have to send a message for the storage to be updated.  The other piece missing ability to lower the MsgSeqNum In/Out.

      When I get a chance will fix this in the next release.  Maybe next week since you seem to be interested.

       
    • Daniel Lynes

      Daniel Lynes - 2007-04-20

      I finally went through the trouble of updating my code to make use of FIX4NET 0.0.4, instead of 0.0.2.  However, the function call you had referred to, 'ResetMsgSeqNumOut' does not exist in 0.0.4.

      Is that a function call in SVN?  I can't seem to find it in SocketEngine.cs or IEngine.cs.  Thanks for any help you might be able to offer for that.

      Also, would you like all the updates I've made to FIX4NET?  I've added fields to ExecutionReport and NewOrderSingle that need to be there for Foreign Exchange.  I'm guessing you're predominantly concentrating on equity markets.

      Also, I've updated all MsgType values to be strings.  There are a number of MsgType's that are more than one character long.

       
    • Charles

      Charles - 2007-05-15

      I finally got some time to get back into this.

      Correct, ResetMsgSeqNumOut is only in my local version.  Seems to work increasing the MsgSeqNum but not lowering.  I will have to fix it.

      Please send me your updates to NewOrderSingle and ExecutionReport messages.  I appreciate the help adding those fields missed.

      Correct, MsgType should be a string.  I will make sure this gets incorporated into the next version.

      Thanks for participating in the project.

       

Log in to post a comment.