Functionality

Image

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”

--Martin Fowler

Sokol Systems’ Asset Record combines the functional richness of three common back office systems: client positions and balances, cash records and balances, firm inventory system. By bringing these three systems together we were able to eliminate unnecessary data integrity controls which would normally be required to maintain data quality of back office.

Double entry integrity controls were built into the product’s core. As a result, the quality and integrity of the Asset Record is never compromised. At the same time, the behaviour of the double entry integrity is fully customizable through the implementation of custom journal postings modules.

Flexible journalling rules - At Sokol Systems, we focused on implementing the necessary ability to expand product coverage of the engine with minimal effort (from a couple of hours to a couple of days). As a result, the engine offers complete freedom to define how the incoming transactions of different types and classifications should be processed. The included with the product equity buy/sell and settlement journalling components provide a fully functional reference implementation. High performance open source rules engine is utilized to simplify the journalling component selection for a specific legal entity, instrument type and transaction type.

Asset Record Engine explicitly defines and reliably maintains the following standard position buckets:

  • start of day traded quantities
  • current traded quantities
  • value date start of day quantities
  • current value date quantities
  • start of day settled quantities
  • current settled quantities
  • future (T + X) dated settlement projections
  • Note: Value date is the contractual settlement date and settled date is the actual settlement date

These quantities are computed wholistically, complete referential data integrity across all these quantities is maintained by the processing engine. The position changes are recorded into the position store as a single operation preventing any inconsistency between these quantities.

Standard settlement data points are automatically computed by The Asset Record Engine. It performs the necessary calculations related to settlement projections and keeps track of the future settlement quantities based on the settlement dates provided on the incoming transactions and the market calendar details. Settlement position quantities are automatically calculated as "contractually settled" on the settlement date. Settlement postings are computed by a special component that is specifically designed to handle various settlement events.
Value dated position quantities are automatically calculated as “contractually settled” on the settlement date of the transaction. Value dated postings are computed by a special component that is specifically designed to handle various settlement events. Settlement position quantities are calculated when the transaction actually settles.
Both Depot and Nostro movements are supported and implemented as standard features of the engine. The only necessary customization to support cash Nostro and stock Depot movements is in the implementation of the settlement journalling component (reference implementation is provided and can be used without any changes).

Sokol Systems’ Asset Record Engine has a sophisticated mechanism to instantaneously compute position quantities with (as-of) and without (as-at) impact by backdated trades (adjustments) in real time with no performance degradation.

Asset Record Engine provides an ultra high performance snapshot capability. A full snapshot of the live position store can be taken with a single command. The system doesn’t even need to be shut down. The integrity of the datastore is ensured by the engine. The position store snapshot contains all the current positions including market business day information for every market in the system.

The Asset Record Engine is a multi-market system capable of real-time processing of business events from all markets across the world. It employs open source calendar libraries to reliably compute settlement projections and perform various business date calculations. Since, every financial institution has its own business calendar maintained in some reference data catalogs, Asset Record Engine provides flexibility to define and configure market holidays. No separate software deployment is required, the new version of the country or market specific configuration files is picked up by the running engine automatically.

Sokol Systems’ Asset Record is designed from the ground as a single business solution to handle all Client, Broker and Firm stock and cash positions. The consistency of the data between Client, Firm, Broker, Stock and Cash is built into the journal posting logic and can be easily augmented by providing multiple pluggable implementations of the journalling components.

The Asset Record Engine implements a configurable multi-market end-of-day processing. End-of-day process can be initiated on demand by sending a command to the engine or configured to be performed automatically at a specific time. When the system receives an end-of-day request, it switches to the next business day instantaneously, but also, takes a full end-of-day snapshot of the complete position store.
Once end-of-day event for a specific market is processed, any incoming transactions for that market are processed with a new business date. In case a trade was delayed and the end-of-day event happened before all the trades for the day were processed, these trades will be handled as back-dated adjustments (see As-Of and As-At processing).