This blog post is about Synapse - Alpha Reply's Simulation Platform that empowers Financial Institutions to test their Financial Crime control environment. You get an overview of what Synapse is all about, covering both business and technical aspects of developing such a platform.
Synapse is a platform that simulates realistic financial transactions between both retail and corporate entities to test for fraudulent activities. The financial transactions comprise both:
Banks and other Financial Institutions can use Synapse to assess the performance of their control environments, through various metrics linked to the proportion of fraudulent transactions that are not being flagged by the controls in place (false negatives), as well as the proportion of genuine transactions that are mistakenly being flagged as fraudulent (false positives).
There are numerous challenges in achieving this outcome: from a functional perspective, we needed to:
Synapse creates a universe of agents, each with various characteristics, and assigns the agents behaviors that drive the transactions they undertake (genuine or fraudulent). It then iteratively loops through the agents and lets them transact between themselves.
Synapse is made up of three different types of agents:
The output of the simulation by agents who are Financial Institutions is a list of customers (including typical KYC information) with all of their transaction history. The end-user Financial Institution represents one of the multiple Financial Institutions in Synapse's universe of agents (with its product range and customer base adjusted to the reality). The remainder of the universe is calibrated to match a broad set of characteristics of the Financial Institutions home country. Foreign country agents are simulated in a similar, albeit simplified manner.
The technical implications of designing such a system are not trivial. A key consideration in building the Platform is creating a system that can scale to hundreds of millions of agents, generating and storing many billions of financial transactions over, typically several years.
We decided to use Go https://golang.org/, which appeared best placed for various reasons:
The most important technical design choice was to maximise the potential to run the simulations in parallel. This is a complex topic but, in a nutshell, means:
The last area to mention is how our clients (i.e. Financial Institutions) will interact with Synapse. Our current choice is to:
This is intentionally a (very) broad yet short overview of the various aspects involved in the design and development of Synapse. As mentioned in my first post, we will be digging deeper into each of these aspects over the next few months.
If you would like to join us to improve Synapse coverage and assess how you can leverage it for your organisation, please contact us at