Providing a reactive architecture to improve the efficiency and extend the business benefits
Enhanced the customer experience with features upgrades and streamlined processes, robust infrastructure and better features & upgrades.
About Bank of America
Our partner is a global financial institution that helps major corporations and businesses with an impressive suite of financial and investment solutions. Recognised as one of the world′s best investment banks, its services range from corporate & investment banking solutions, mergers & acquisitions, debt, equity, foreign exchange markets trading, lending, risk management, research, and more.
- Enhanced the customer experience with features upgrades and streamlined processes.
- Major boost in the business ROI with a remodeled trading platform.
- 20% to 30% increase in the number of trading transactions per day.
- Significant decrease in costs and expenses by making the system compliant trading regulatories.
- Minimum downtimes, increased resilience, and better service quality in traffic spikes with the reactive architecture.
Our partner already had a resilient trading platform in place that has helped major institutional clients to invest in the European markets to raise capital. The investment banking firm had a Straight-Through Processing (STP) system in place. When it comes to trading, an STP helps to automate the entire transaction process when one invests in a financial instrument so that minimum manual intervention is required. The entire transaction workflow, from placing the order to the final settlement, is managed by a standalone system. The workflow includes a Front office (Trade capture & execution), Middle Office (Trade enrichment, validations, bookings & confirmation), and finally, the Back Office (Clearing & Settlement).
Our partner wanted to improvise their middleware system which was written in Scala Programming Language and built on an actor-based, in-house event sourcing system.
The middleware system is responsible for:
- Capturing client orders from the Front Office
- Getting allocation instructions from the client
- Trade validation
- Order Confirmation
The existing system in place already had an impressive turnaround time, with trade confirmations being sent to clients within minutes or even seconds. However, our partner wanted to grow their business and have more clients onboard by enriching their platform and reducing the turnaround time further. This is where we stepped in.
- Fully managed platforms on AWS enabled them to utilise native tools such as S3 as their file system.
- Automated cluster management simplifies the infrastructure and operations at any scale.
- Collaborative notebook environment with support for multiple languages (SQL, Scala, Python, R) enables a diverse team of users to work together in their preferred language.
Introduced a new feature to optimise the process workflow.
To optimise the process workflow, we introduced a new feature, “Replace”, keeping the Financial Information Exchange (FIX) protocol in mind. It significantly eased the process of modifying an existing trade. The ‘Replace’ feature changed the way trades had to be modified. Earlier, the client was struggling to modify their existing trades as it took a lot of manual effort to do so. It was a complex procedure as trades had to be cancelled and needed to be placed all over again.
Now, this process has been reduced to a single step of just replacing the current trade with the new one.
This solution also removes the redundant transactions in the entire system from the front office to the downstream applications.
Capacitated the system for compliance with regulatory requirements
The MiFID II regulations were instituted in the EU to protect the interests of the investors within the financial markets. In a case where investment banks fail to comply with the requirements of regulatory conditions, huge fines are levied by the authorities. It is a mandate that systems comply with it; within the stipulated deadline. Our team ensured the complete re-evaluation of the application and enabled it to comply with this regulation. It required exhaustive study of each and every clause of the regulation and sophisticated software engineering expertise to ensure that all trades comply with them.
Giving the system an infrastructural The application was not following proper architectural and design principles to remain resilient in the face of system failure or downtime. It was tightly coupled with the front office components, and dependencies were so high that if there were any error, failure, or upgrade in the front office systems, the middleware application would be stalled. We enabled an architectural overhaul to ensure the decoupling of components. This minimised the dependency of the application on external components and made it more responsive and resilient.
Revamp the entire trade settlement and clearance process Getting trades cleared is an important step. Often a trader will submit a Front Office Trade, which then flows through the Middle Office and Back Office through various systems to settle the trade so that money is exchanged. In this, a clearing house ensures that both parties carry on the financial transaction ethically and buyers & sellers adhere to the contractual obligations. Earlier, the investment bank had to approach every clearing house in the European markets so that individual trades could be cleared, which proved to be a costly and time-consuming process. We helped the investment bank’s system to integrate with an external centralised clearing menu. Now, the trades are automatically cleared by the centralizedcentralised system, which acts as a bridge between the investment bank and individual clearing houses in all European markets.
Restructuring how commissions are handled A commission is a service charge levied by the broker in exchange for investment advice or handling the buy-and-sell process. In case of a disagreement on the commission rate between the two parties, the trade would not be processed and would throw an exception in the application. The trader would have to resolve this situation manually on paper. After our intervention, a lot of manual effort was cut down as such orders could be processed digitally within the application.
Migration to an in-house event streaming platform We stepped up in the migration from an open-source event streaming platform to an in-house, proprietary framework. The investment bank wanted to ensure that all the bank’s systems rely on the AMPS (Advanced Message Processing System) framework instead of Kafka, and we assisted them in the endeavor.
With all these, we also helped our partner in
- New deployments & releases.
- Keeping them aligned with the regulatory disclaimers which helps in preventing any untoward activities while trades are being executed.
- End-to-end testing of the newly developed functionalities, user acceptance testing of the product in the UAT environment and subsequently releasing the same on production.
- Enhanced the customer experience with features upgrades and streamlined processes, robust infrastructure and better features & upgrades.
- With the efficient and optimised process, they onboarded more clients and experienced a major boost in business ROI.
- Integrating the FIX protocol with the ′Replace′ functionality and equipping the system to handle commission mismatch scenarios, we significantly eliminated manual effort from the workflow.
- With the elimination of manuals efforts and ease of complex process, there was an overall increase of 20% to 30% in the number of transactions per day as a result of this initiative.
- By enabling the MiFID II and other regulations within the stipulated deadlines, we helped the investment bank save millions of dollars in fines along with their prestigious position within the industry.
- The application is now more robust and resilient in the face of component failures & downtimes. The new-found resilience has resulted in a more reliable application, better service quality and higher productivity.
The original trading platform was also based on this highly functional, scalable, and concise programming language
Cucumber for BDD
A Behaviour-driven development framework; used to write acceptance tests
Actor-based Event Sourcing framework on Akka
For building a reactive system which follows the principles of domain-driven design; event-sourcing to atomically update state and publish events
IT automation platform for configuration management and automatic deployment
A network authentication protocol for building application and user level security infrastructure.
Communication protocol that outlines messaging specifications used in trade communications
To build the integration layer between different applications or services
AMPS (Advanced Message Processing System)
A fast messaging engine that supports both publish-subscribe messaging and queuing
To enable CI/CD
ITSM BMC Remedy
For change request and production release management.
For application monitoring