Instrument component in FIX message

Instrument component is marked as required in all the Order related messages( NewOrdeSingle(D), Order cancel/replace(G), OrderCancelRequest(F)). However, all the fields inside the Instrument component are marked as not required. What’s the rationale for this?
TIA

The Symbol(55) field is required at minimum. That information is lost when transitioned from manually edited FIX specifications to one generated from the FIX Repository. If you download the Vol. 1 of FIX 4.4 and go to the section Common Components, the section showing Instrument component you’ll see that in the Req’d col for Symbol(55) field has *** in it, the *** notates a note at the very end of the table and states " *** = Required status should match “Req’d” setting for component block in the message definition". Unfortunately this information got lost when the conmponent tables were generated from the repository.

So in a nutshell, if the component is marked as Req’d=Y the Symbol(55) is required. Same goes for UnderlyingInstrument and LegInstrument.

Thanks. I can see that in the downloaded version. On separate note, it’s standard practice to use instrument component even for cancellation and amendment.

Yes it is.

@willson how do you do cancel/amend ?

curious

Cancellation is done based on the OrigClOrderID(41) and security details are ignored. In case both OrderID(37) and OrigClOrderID(41) are provided, OrderID (37)will take precedence over OrigClOrderID(41) and the same will be used for cancellation.