Architectural Overview
Caplin Trader and Caplin Platform technologies power both the Caplin FX Sales Motif front-end and back-end systems respectively. The Caplin Integration Suite (CIS) and the FX integration API layers provide powerful connectivity tools to facilitate integration with your existing systems.
Architecture
Here is how the FX Sales Motif end-to-end technology stacks up:
Presentation layer
The FX Sales Motif front-end system delivers an advanced browser-based web trading application that is built entirely using HTML5, CSS and JavaScript. The application implements many of the tools, libraries and components available with Caplin Trader, and utilises a modular framework comprised of components known as blades.
A blade encapsulates a slice of business functionality. An assortment of blades and associated libraries are grouped into Motifs; in the case of the Caplin FX Sales Motif, an assortment is grouped to address the requirements of sales users at a bank trading on behalf of clients. A sales user is a person at a banking institution who is responsible for trading on behalf of end-users. Typically, these end-users represent the bank’s clients or customers. A sales user would require the ability to book and trade FX deals on behalf of those users, along with the ability to control any margins/spreads on those deals.
Each blade is designed to facilitate the underlying functions and protocols associated with the slice of business functionality, such as providing the interaction controllers, GUI/ UX and reactive/ proactive workflows. As an example, the Caplin FX Sales Motif includes an integrated group blotters blade that enable sales users to view various trade activity across multiple clients.
Blades are also used to implement trade ticket functionality with facilities to lock-in streaming rates and to control margins on-the-fly (MOTF) when trading on behalf of others (TOBO):
Here, the blade provides the sales user with a rich set of functionality that includes facilities for: switching the trade type between spot and outright forward/ swap with appropiate ticket configurations for each, editing currency pairs and amounts, controlling margins in real-time using margin and profit indicators, managing settlement dates with calendar controls, selecting client accounts, viewing streaming rates and final prices on the go, as well as options for controlling the direction of trade. A blade will manage all the resources required for implementing the particular slice of functionality (JavaScript, CSS, XML, HTML, Images). Blades are fully customisable and extensible and are also used to implement client and user search tools. See here for further reading.
This framework of blades is run and managed by BladeRunnerJS, which is a development toolkit and framework that you can use to construct enterprise-scale HTML5 web apps. It can be used to build, test and maintain each blade separately. It provides you with an internationalisation and localisation framework along with a Workbench facility that allows you to view and modify individual blades, so that you can develop and debug each blade in isolation from the rest of your web application.
Workbenches provide a development environment where you can run blades in a standalone web-page using a Jetty development web server:
From here you can make quick modifications and see the effects by refreshing your build. You can then run tests at a fine-grained level e.g. all app tests or just unit tests belonging to a blade before exporting your web app from the BladeRunnerJS development environment, to your production environment.
Export your app to run in production by creating a WAR file (Web Application Archive) that can be deployed on to a standard application server like JBoss or Tomcat. Once you deploy your war - your web app will then work in the same way as it did in the development environment. For more information on using BladeRunnerJS, see BladeRunnerJS.
Distribution and Web trading services layer
These layers represent the back-end systems for the FX Sales Motif. Here, Caplin Platform technology is utilised to handle trading, and stream financial data and messages over the internet to the Presentation Layer using Liberator and StreamLink. The back-end components provided by the Caplin Platform include Transformer - a high-speed data transformation engine for filtering and managing data streamed from external FX pricing systems, as well as components to handle data distrubution, permissioning and user-authentication.
Integration layer
The FX Integration API along with the Caplin Integration Suite provide a rich of set connectivity tools and APIs for easily creating adapters that integrate the Caplin FX Sales Motif with your existing back-end systems. Caplin offers standard trading adapters for Refinitiv Electronic Trading - Automated Dealing™ (RET-AD).
Deployment
The following diagram represents a typical deployment architecture for the FX Sales Motif and internal banking systems:
Of course deployment topologies vary in complexity, and the Caplin FX Sales Motif is equipped with the versatility for deployment into any type of banking system structure.