FIX Orchestra is "the full-stop at the end of FIX"
But how do we add value when using FIX Orchestra? One technique is something that is a little difficult to grasp conceptually at first - meta-programming.
The best way to describe this is "code that writes code". Let's take an example. A client supplies an SBE.xml file that contains details of the SBE encoded FIXP messages that they support. The SBE.xml file includes a reference to http://fixprotocol.io/2016/sbe which links to http://fixprotocol.io/2016/sbe/sbe.xsd
If you can consume the SBE.xml file then you can generate a series of message classes in your chosen language.
So, if you use Java, write some code and shazam - you have a complete set of classes to use with that FIXP session.
Here's the interesting bit - your Java code can be used (with modifications) to create message classes in lots of different languages.
For a recent project we have taken an SBE.xml file and created classes in:
What can stop a firm using the power of meta-programming to allow new rules-of-engagement to be implemented on the same-day as their counterparty releases their new rules-of-engagement?
Hint - nothing!