Stability within Capital Markets

I find it highly entertaining that the financial community and regulators are getting together to propose a “solution” to software design – that is, passing rules and regulation to force developers and engineers to build better software.  What ever happened to good design, code reviews, instrumentation and profiling… let alone proper change management and rollback procedures?

From the start, instrumentation and key statistics need to be identified and collected within all production applications and services. These statistics further need to be stored and constantly analyzed against the current data set looking for anomalies across the production environments. Trading patterns, client behaviors, and capital markets are consistently changing, requiring proactive monitoring and capacity planning.

It is also necessary to have a dedicated team responsible for the monitoring and support of all production services and infrastructure. Client support teams or, worse, developers, cannot have this responsibility. They have other jobs to do, and they are all busy doing them.

Credit & Risk Limits are also key requirements to ensure that client trading does not breach the desired risk controls established by Compliance. It does not take a thousand orders to breach a credit or risk limit.

There is no single, magic bullet to ensure stability within capital markets. Rather, the combination of proper design and analysis, the collection of key statistics, multi-level alarms, change management policies, and proactive monitoring of production are all key components required to ensure a healthy and robust production environment.