Working with the Data in the Platform

When Caplin Platform integrates with other systems, it can be used to normalise data, which can then be filtered and sorted as required.

Normalising Backend Systems

The Platform can integrate with multiple systems that handle different asset classes or even use different technologies. You connect these systems to the Caplin Platform using Integration Adapters. These adapters convert data into normalised formats and sends it to other Caplin Platform components. Your client application or applications no longer have to worry about which system it is receiving or sending data to.

You can also use Caplin Transformer to further manipulate data flowing through the platform.

Delivering Data Efficiently

This page describes the different ways that the Caplin Platform can be used to communicate with existing systems.

Caplin makes use of two different methods of communicating with existing systems:

  • Fan-out
  • Channels


When subscribing to common data, a Fan-out approach is used. This simply means that subscriptions to the same data item from a number of clients are managed by Caplin Liberator allowing a single subscription to be made from Liberator to the backend systems. You can see this below:

When updates are sent from the backend systems, Liberator then sends the data to all subscribers.


The other style of communication is using Channels. This is often when the data is either bidirectional or private to that session. This typically is used for trading or for clients subscribing to custom data with parameters specific to that client. You can see this below:

Filtering and Sorting Data

This section describes how client apps can use the Caplin Platform to manipulate the data that is returned to them.

You can use the Caplin Platform and APIs to easily and efficiently manage lists of data on behalf of client applications. Caplin calls these lists containers.

A client application can make a single subscription to a whole container of real time data. This means that items can be added to, and removed from, the container in real time, and these changes are immediately sent to the client application. If the container is large (let's say it contains a long list), a client application can subscribe to just a portion of the elements in it. You can use this feature to ensure that only the data that will fit on an end-user's screen is sent, so the client application does not have to manage data that the end-user does not see. This technique significantly reduces both bandwidth and client processing load.

The Caplin Refiner module in Transformer provides a service to filter and sort containers. A client application can subscribe to a container, specifying filter and sort criteria. The Refiner module dynamically creates a custom container that matches the criteria, keeping the container up to date as the data within it changes.