On the surface, capital markets and the video games industry have little in common, with the exception of the fact that they are both extremely large. Banking is about trading, risk management and finance and video games are about great graphics, interactive experiences and ensuring users have a good time. In fact, the challenges faced by software teams in both industries are not as far apart as it might first appear. In many cases, the problems for which they need to solve in order to achieve success are very similar, even if the outcomes look, feel and act very different.
Entity Component System (ECS) architecture is a data-driven methodology used primarily in the video games industry. It aims to eliminate complex hierarchies that come from object-orientated design and offers extensive flexibility, and scope for creativity by doing away with rigid data models and focusing on discreet fragments of data, called ‘components’, which are added to flexible entities.
In traditional object-oriented design the functionality is directly tied to the data, but with the ECS architecture we segregate functionality from data using building of discreet blocks of functionality, called systems. This separation allows us to re-use the same systems across any data without changes to code. By finding ways to use this technology, banks can realise the benefits through improved agility, cost efficiencies and improved use of resources.
Here are three ways the capital markets and the video games industries are similar, and how ECS can work for both.
Multiple specialisms: In both industries, there is an intrinsic need for highly specialised skillsets. For video games, these might be artists, musicians, designers or programmers who come together to produce a single game. In banking, domain expertise in pricing, risk, trading and other areas are all needed to create effective systems. Finding ways for each of these specialists to be able to access flexible, easy-to-use, building blocks allows them to concentrate on providing the unique data and insight needed. For example, within banks, pricing and risk calculations require specialist domain knowledge, but can be very different across instruments. A pricing expert for bonds, is unlikely to apply the same skills to pricing options. ECS allows us to build the base calculator and then adapt it quickly for the relevant team’s data and requirements.
Constant change: Change is a never-ending and both banking and the video game industry are fast moving, requiring constant improvements to remain at the top. Game developers may need to create an entirely new game or update an old one by building in new levels or characters. In capital markets, these constant changes may take the form of regulatory changes, new market conditions, new products or a bank’s changing risk parameters. But the need to adapt quickly is the same.
For both, having the right building blocks in place means that the tools are there for recomposing or adapting to new requirements. Importantly, these building blocks can be created by anyone using the interface, and in turn re-used by development teams elsewhere. Traditionally, banks have been limited by the complexity and unique use that is built into each component of their systems, requiring complex development work to facilitate change. But with ECS, the building blocks can easily be adapted to incorporate new data or needs.
A bank wanting to trade a new product, with different data formats, may be limited in its ability to introduce this if it has to rewrite its entire system, with corresponding costs and time constraints. Using ECS, however, allows specific modules to be incorporated without disrupting existing workflows, reducing time to market and limiting the need for additional resource. For example, a bank wanting to trade Mexican swaps might be stymied by the fact that they use a 13-month calendar instead of the typical 12, and the software can’t compensate for this. Rather than rewriting the code from scratch, ECS allows us to drop in a module that adapts for Mexican calendars and then reintegrates with existing software.
Data: Today, it’s well understood that data flows are a huge challenge with both the capital markets and gaming industries inundated with data, which is likely to continue to increase. The problems that this brings to each industry may be somewhat different, but the underlying challenge of managing and using this data is the same. ECS architecture allows millions of entities to be sorted and managed rapidly and to bring coherence to the data management process and ensures it can be received, transformed and sent to where it needs to go.
ECS is one of the many areas in which video game technology can contribute to the world of financial software technology. Advancements such as artificial intelligence, high performance computing on GPUs, and innovative interaction paradigms like VR are all areas that are either already being used in finance or hold great potential for the future. In the current COVID-19 environment, it may well be that there is an opportunity to explore the use of virtual reality or augmented reality to re-define the dealing room from a physical space to a virtual one.
We are bringing ECS technology with the goal of revolutionising finance, exploring and developing these and other disruptive technologies for the market.