Right ... the underlying issue here is that we have N entities each with their own IT systems. There is a serious and direct dependency between them in order to carry out daily trading as my custodial example shows. The way out is to have a realtime event feed between the two which requires a common serialization format, securityIds, accounts, etc. etc. Not even JPM or BNY has this so far as I know on the custodian side before we even entertain what trader X's company might have.
Therefore what tends to happen is ETL's where some middle-system imports the trader's and custodian views and tries to reconcile. Note these views are often only available after batch processes run at the end of the day ... The problems are ... tons:
- Even FIX/Swift etc. messages are prone to incomplete interpretation and mis-usage the latter hard to change once it's baked in. Setting up yet another format is a huge ask.
- Each end of the work invariably has a slightly different data model so even if one did get the data it's not like there's a memcmp of two structs at the bottom somewhere
- As I say blockchain w/ POW is not only slow, there are oodles of privacy concerns. And even if you tech'd that out blockchain would be a Merkle wrapper of something like a CSV/FIX/Omgeo/Swift message ... and what's the point then of all that crypto nonsense? Better to have a direct HTTPs connection, and skip the crypto work.
However, if counter-parties could somehow get messages from the exchange at the time the trade is done and forwarded something to the trader and counter-party (granted encroaching on the some $100 billion/yr custodian business) that might help. Indeed, other writers here make a good point: trading through exchanges is nice. Post-trade sucks.