Microservices and the Amazon Cloud

Capital Markets have been at the leading edge of adopting software technology to gain advantage and increase automation, but in the recent past have fallen behind the curve compared to the infrastructure, practices and technologies used by the Tech sector.

Background

I remember like it was yesterday (actually 1990 🙂 ) using Cobol on an IBM Mainframe while working at Chase Manhattan and then getting the first Sun workstations and moving to Unix and the C programming language.

Then object-orientated programming languages, C++ and Smalltalk, became as the best way to model the complexity of Swaps and Options and manage the rapid product innovation in Derivatives products. While relational databases (Sybase, Oracle) and SQL became the standard way to store and retrieve data.

Leaving my role as an in-house developer, I discovered a world of software vendors specialising in Derivatives and pioneering the use of C++ and Relational Databases; Renaissance Software and Infinity Financial Technology are the two that spring directly to mind.

These vendors and their modern-day successors, such as Calypso and Murex, have created massively successful enterprise-wide applications with frameworks that have been used by many firms to incorporate their own analytics, add bespoke products, configure specific workflows and so on. They have served the industry well.

However since the Financial Crisis of 2007-08, the world of Capital Markets has fundamentally altered and Derivatives in particular are subject to more regulation, higher capital, revenue contraction and cost pressures.

A world in which continuing with existing software infrastructure with it’s high operating cost, massive demand for IT resources, propensity for budgets to get out of control, deliverables to fall by the wayside and prohibitive two-year upgrade cycles, is an outdated business model.

What do we believe should take its place?

First we need to learn from the industry that has made the largest investment in software technology and moved to the leading edge; the US Tech sector with Amazon, Apple, Facebook, Google, Netflix and others.

Second we need to decide which of the best practices, infrastructure and technologies created and used by the Tech sector can be utilised in Capital Markets.

When we started Clarus Financial Technology in 2012, our inspiration was precisely this; how could we disrupt a software infrastructure characterised by enterprise applications by leveraging practices and technology created by the Tech sector.

Our Core Principles of Clarity, Connectivity, Performance and Week 1 Value came from this idea.

We have tried to live by these principles with all of our products, SDRView, SEFView, CCPView and CHARM, hosted on the Amazon Cloud and delivered via Web UIs and REST APIs.

Now we are ready for the next stage of the journey in software for capital markets.

A journey from monolithic enterprise applications to microservices.

Microservices

Microservices are fine-grained services that can be accessed from any programming language and used to rapidly assemble a more complex system, service or UI.

Unlike libraries and toolkits, microservices do not require the use of a specific language (e.g. Java or C#) and they do not need to be hosted in the memory process of the calling program.

Microservices provide building blocks that can be assembled using the easy to use REST over http protocol.

Unlike libraries which need to be upgraded (often painfully), microservices consist of loosely coupled components, well suited to agile deployment and instant deployment.

Microservices are available individually and offer the potential of a pay for what you consume model.

Unlike enterprise applications or libraries where the whole system has to be purchased and installed before a single function can be used.

Amazon Cloud

Amazon Web Services (AWS) has emerged as by far the largest cloud provider and one that we at Clarus just like the majority of other start-ups have utilised from inception and grown with.

We have found the economics, scalability, security and reliability of AWS to be ideal for the computationally intensive and data intensive processes required in Derivatives and far exceeding the economics and scale of the private compute grids of the large Investment banks.

Deploying Microservices on AWS, offers us the potential to move to a scalable pay for what you consume model and offer massively computational services at a new price point. A price point that allows firms to run more complex tasks and do so much more frequently, while still lowering their IT budgets.

The combination of Microservices and AWS is an exciting one.

Clarus Microservices

We recently launch v1.0, details of which can be seen here.

clarus-microservices

These offer a set of simple to use microservices for Swaps, covering both Data and Analytics.

Microservices that can be assembled by anyone to build more complex systems.

Using their choice of programming language, whether python, perl, r, java or c#.

We believe that this offers a better paradigm for the software infrastructure of the future.

A future that was promised by object orientated libraries but failed to be realised because of the reliance on a specific programming language, the requirement to integrate data at great cost and the need to manage deployment, scale and reliability oneself.

Clarus Microservices are managed, deployed and scaled by us on AWS freeing up users to concentrate only on assembling and utilising.

Lets look at a few simple examples.

Example One – Volume

Want to know the volume of 10Y USD IRS traded in the US today?

You just need to invoke the following Clarus Microservice from your language of choice.

https://eval.clarusft.com/api/rest/v1/sdr/Volume.html?ticker=USSW10

Returning an html table of results:

screen-shot-2016-10-19-at-10-54-39

(Note : This requires login credentials, please register here to request).

Example Two – Clearing Eligibility

Want to know whether a USD Basis Swap trade is clearable at both CME and LCH?

Using the R programming language:

screen-shot-2016-10-19-at-11-04-44

Returning a csv file with:

screen-shot-2016-10-18-at-22-12-57

As Clearing Houses launch new clearable currencies and products, we keep the Clarus Microservices updated, so you do not need to write and maintain code for this check.

Example Three – Converting FpML

Financial Products Markup Language (FpML), is an XML representation for OTC Derivatives that is the lingua franca of how to represent a Swap trade and is accepted or produced by SEFs, SDRs and CCPs. However at 8K in file size for a vanilla swap, it is a verbose format that is not easy for a human to understand.

Meaning the world is full of different code implementations that convert to and from a human readable format on a screen to FpML. What if this task could be performed by a component available everywhere?

Lets convert a natural text description of a USD IRS trade represented by the BBG Ticker USSW10.

Using the Python programming language:

screen-shot-2016-10-19-at-11-12-47

Returning a fully formed FpML file with all the market standard conventions.

screen-shot-2016-10-18-at-22-43-10

Easy as that and allows you to get rid of all that source code to convert to and from FpML or indeed other common data formats used for Swaps and Other Derivatives.

Example Four – Dashboard

Business Dashboards that empower end-users to look at large datasets and get insights have become increasingly popular and widely available.

It is easy to use your Dashboard software of choice (e.g. Tableau, Qlik, Klipfolio) with Clarus Microservices to create your own views to show key price and volume information for Swaps.

Using Klipfolio:

klipfolio-sdr-examples

(Click on the image to be taken to the interactive dashboard)

Clarity of information and easily customisable for each user.

Invitation to Try

That is the end of the examples.

Microservices are an emerging new technology.

One that is inspired by practices in the Tech sector.

Derivatives infrastructure will soon start to migrate from enterprise applications to microservices.

Microservices provided by many best-of breed vendors.

We have released V1 of Clarus Microservices.

And plan to roll out more microservices in more categories.

We invite you to try them for yourself.

Begin your journey.

Stay informed with our FREE newsletter, subscribe here.