Validation. There is a reason everyone is talking about it.
If you do it wrong, your compliance personnel start pulling their hair out. As far as ESMA, Dodd-Frank and MiFID II trade reporting we are clearly in a world that is moving from low validation to one that is highly validated.
Com-Sci 101: Four Categories of Validation
Data Type Validation: “Did you send a properly formatted date, because you cant just send me any date….I require a properly formatted date.”
Range Validation:” Did you send me a value that is reasonable? Because I hate it when you send me a market price of $50billion.”
List Validation: “Did you send me an exact value that matches my list of acceptable values? I swear, if you miss a single character I will bounce your message.”
Structured Validation: “Did you send me your LEI? Because I’m going to check that it’s both in the right format and that it matches your company name.”
So What’s the Big Deal?
Latency. That’s the big deal. In some cases it takes repositories literally HOURS to validate the messages sent to them. The more validation regulators throw onto their plate, the longer it will take. The result? Your compliance teams have to wait and wait and wait to see if their submission was accepted. Did any of your trades get rejected? Yes? Ok…start again.. correct it…and wait and wait and wait.
So the takeaway, as we move into MIFID II is that you have two choices: 1) use a trade repository that is architected for speed (read great API w speedy validation); or 2) pre-validate everything to absolutely minimize the possibility of having an error that you will have to wait and wait on.
K3 as an integration platform to trade repositories does all forms of validation prior going to the TR. Likewise when sent we show the acknowledgement (or rejection) immediately upon receipt.
Considering that we have connected to just about everyone, I’d be remiss if I didn’t mention that the response time from destinations (ARMs, TRs, etc) is what we call “highly variable”. There is a huge technical disparity between trade destinations. It does make a difference because, for example, there is one repository that is so fast and comprehensive in terms of validation we really don’t bother pre-validating. (pre-validating takes just as long as validating against the actual repository) (read another way…spam the API to your heart’s content). Even across thousands of trades, I doubt we’ve waited for a response longer than 2 seconds. On the other end of the spectrum we have waited as much as 12 hours for a response. If you’ve got to wait this long, pre-validation is mandatory. So that is what all the validation hubbub is really about.