0

I try to send Market Data Request and the log file gave me this..

20151027-03:08:46.038 : 8=FIX.4.2 | 9=122 | 35=V | 34=2 | 49=CLTEST | 52=20151027-03:08:45.991 | 56=SERVTEST | 55=CPOTR DEC15 | 146=1 | 207=EXCH | 262=MDRID | 263=1 | 264=1 | 265=0 | 267=9 | 269=C | 10=250
20151027-03:08:46.116 : 8=FIX.4.2 | 9=100 | 35=3 | 34=2 | 49=SERVTEST | 52=20151027-03:08:39.456 | 56=CLTEST | 45=2 | 58=Required tag missing | 371=55 | 372=V | 373=1 | 10=097

The reject message said there are required tag missing, and it says the tag "55" that missing. Even though I've included the tag in my MDR message. Any idea?

Grant Birchmeier
  • 17,809
  • 11
  • 63
  • 98
Hobas Matius
  • 61
  • 2
  • 13

1 Answers1

1

Your fields are out of order. 55 (Symbol) should be inside of the 146 (NoRelatedSym) repeating group.

I see that your body fields are sorted numerically, which indicates to me that you are using one of the QuickFIX flavors, and that you've messed up your DataDictionary config.

Make sure your config has these two lines:

UseDataDictionary=Y
DataDictionary=path/to/your/FIX42.xml

If my assumptions are correct and you didn't leave anything out, this should set you straight.

Grant Birchmeier
  • 17,809
  • 11
  • 63
  • 98
  • Or am I wrong for coding the repeating group like this? msg.SetField(new NoRelatedSym(1)); msg.SetField(new Symbol("CPOTR DEC15")); msg.SetField(new SecurityExchange("EXCH")); – Hobas Matius Oct 28 '15 at 03:56
  • Yes, you are completely wrong. [Read the doc page about it.](http://quickfixn.org/tutorial/repeating-groups.html) – Grant Birchmeier Oct 28 '15 at 14:08
  • i don't understand where you saw that his 55 TAG IS NOT IN THE CORRECT place – eran otzap Jun 23 '20 at 20:06
  • @eranotzap I just looked at his message and saw that 55 came before 146, which means it was not in the 146 group. Simple. – Grant Birchmeier Jun 23 '20 at 21:21
  • but what defines a group ? how do you know that 146 is a group and not a field – eran otzap Jun 24 '20 at 06:50
  • I've been working with FIX for 10 years, I just know what many of the tag numbers are. And also: when all the body fields are ordered by increasing tag number without interruption, you know that no repeating groups are being respected (because groups would disrupt that ordering). – Grant Birchmeier Jun 24 '20 at 13:14