CDS Cashflow Accounting System
Background
The Bank needed an automated system to generate accounting entries and post it to the appropriate buckets for all the CDS cleared trades.
Implementation
We had to study the different types of cash flows that are present in CDS, the accounting rules that apply to each of them, and determine the timing of accounting entry generation.
We implemented a system that periodically looked at all the cash flows of the CDS trades and ran the data through the accounting engine if the payment date was within the lead time for the currency involved. The accounting rules itself was modelled in an excel spreadsheet - which ran the key cashflow attributes through the set of accounting rules to determine which entries needed to be posted. It would then make the appropriate SOAP calls to post the entries. All the data was persisted in the central data warehouse The UI was updated to view the accounting entries that were generated by the service, along with a trace of the rule execution which caused the particular entry to get generated.
Main Tech Stack : Java 8, Google Guice, GRPC, REST, JPA, Hibernate, Multithreading, XML, XSD, Xpath, FpML, JSON, Mockito, Fitnesse, Maven, Jenkins, Sybase, Solace, MQ, Linux, SVN/Enterprise GitHub, Nexus Repository.
This resulted in a system which automatically generated and posted accounting entries at the correct times for the CDS trades. Users were able to easily view trades,drill down to the cash flows and then onto the accounting entries posted for each of them along with full trace information.