The last section of this post series is on trade perspectives. In fact, our earlier sections on the static structure of the bank and the temporal evolution of the trade have been in preparation to this last section. In the next couple of posts, we will see how the quants, quantitative developers and the middle office professionals (and the rest) see trades and trading activity. Their views are important and need to be accommodated in the design philosophy of any trading platform.
Where do these perspectives come from and why do we need to know about them? Trade perspectives are based on the work paradigm specific to each business unit. Because of what aspect of the trading activity a group focuses on, they evolve a paradigm, or a mental model, that works best for them.
In order to understand, let’s take a look at how we work with a modern personal computer. The paradigm we are presented with is one of a desk and a filing cabinet. So we have a desktop, folders and files. They have become so natural for us now that we cannot imagine another way of interacting with a computer at all. The Internet, on the other hand, is built on a paradigm of something that hovers over us, which is why we “down”-load stuff from it and “up”-load stuff into it. But the programmers and architects who develop such paradigms often do work with different and less known paradigms as well; for instance we have ports and sockets and streams and so on.
If we do not appreciate the work paradigm, we will find the jargon that comes with it mysterious and incomprehensible. This is especially true if we are to work on projects that cut across multiple business units with differing paradigms.
To illustrate it further with an example from our trading world, let’s look at how we identify a trade. The quants really do not care about the trade identification number; for them, it is the pricing model that is the basic unit that they work with. The quantitative developer, on the other hand, would like the identifier to be something unique per trade. A structurer would like to have one identifying reference for the trade with possible sub IDs for the individual sub trades that make up a structure. While this requirement is easy enough to implement, the software architecture also has to cater to trade cancellation and amendment requirements from Front Office and Middle Office. What happens when a structure is modified or canceled? How do we find and deal withall the related trades? This problem will almost invariably ends up requiring a link ID in the database. Trade number amendments on a live deal create problem for documentation and operations staff as well, who might demand another immutable external reference number attached each trade. Audit will require integrity and indelibility on everything, demanding database record duplication. As we can see, the perspectives and work paradigms of each business unit translate to often conflicting requirements on the program design at a fundamental level. It is for this reason that we will take close look at the trade perspectives in the following posts of this series.