Market Data Store - Data Modelling

I am currently drafting a data model for market data storage, to be used in a scenario engine project within the risk management area. This new engine will be replacing an existing system, which is deemed to be quite out of date, and does not cater for all the risk factors required by the business.

I have started reviewing the existing system to learn about a thing or two about the data model used. One thing I quickly noticed is that it has separate group of tables for each risk factor. Prior to this, I had a plan to create a centralized generic table to store all type of risk factors.

So this rings a bell. Why was it done that way in the existing system? Is there a good reason why each risk factor has its own set of tables? Is it because they are so different from each other, that no common attributes can be found across the various risk factors? Or it is simply a bad existing design?

I have decided to keep my original idea to have a generic table for all type of risk factors for now. As this will give the system flexibility to add new risk factors easily in the future. However, I need to start doing some homework to understand the storage requirement better.

So what are the facts that I know so far

FACTS

  • 100 risk factors
  • between 30-50 bucket points within a single curve
  • system will need to cater for up to 1000 scenarios
  • observation length is between 2-7 years
  • most risk factors will only need a single bucket (tenor) identifier , others will need two (tenor and strike) - question: can the two types live in a single table?
So the workflow will be as follows:
  • load market data from various sources
  • clean market data, fill in gaps, either by copying previous day’s market data, or in the case of missing time horizon (buckets), interpolate
  • cleaned market data is then disturbed/shocked in various ways to produce scenarios.

To be continued … honest

No comments yet.

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>