Imported from previous forum
Can I make a NewOrderMultileg wherein the legs themselves have legs?
I do not think so. Look thru
Version 5.0 Service pack 2 volume 4 (April 2009)
Page 154 of 198
Category: Multileg Orders (Swaps, Option strategies, etc)
There might be some obscure way using user defined non standard methods to do the multileg orders where the legs themselves have legs, but I dont see how this can be done using standard FIX message for New Order Multileg ^35=AB^
Can I make a NewOrderMultileg wherein the legs themselves have legs?
Robert,
the simple answer is no. FIX only has one example where such a recursive structure is supported. This is the case for market segments in the Market Definition messages where you can implement a hierarchy of market segments and tag 1325 ParentMarketSegmentID can refer to a market segment on the next higher level.
Recursive structures are highly complex and to my knowledge only of theoretical value for multileg orders. Do you have examples from the real world for complex instruments that have legs which are complex instruments themselves?
Theoretically, FIX does allow you to define such nested complex instruments but a few restrictions apply for order handling, execution and trade messages. The SecurityDefinition message contains an instrument identifier (SecurityID) and to define the legs. Instead of defining legs, you could simply identify them with LegSecurityID and send another message which has the value of LegSecurityID in the field SecurityID and its own . Again, you can either define the legs (now at nested level 2) or continue nesting by only identifying them and sending yet another message with the nested LegSecurityID in the field SecurityID. Your recursive instrument needs an ID at every level down to the simple instrument. The receiver has to piece the tree back together.
The restrictions for order handling are that you can only use the fields of NewOrderMultileg that IDENTIFY the complex instrument because you can only send a single NewOrderMultileg message. In other words, you can only reference IDs that you have defined with SecurityDefintion.
The same applies to executions and trades that need to be broken down into their individual pieces as you never have more than one level of nesting for legs.
Recursive structures can be very elegant but are like icebergs, you don’t see how much is underneath until you hit them…
Regards,
Hanno.
Can I make a NewOrderMultileg wherein the legs themselves have legs?