A recipe is a hierarchical, modular document containing rules that govern numerous LUSID operations. See how to create or generate a recipe.
You require a recipe to:
Generate a valuation report, for a portfolio or a fund.
Perform a reconciliation operation on portfolios, holdings or transactions.
Generate a holdings report for certain complex instruments that require market data, for example inflation-linked bonds.
Enable instrument events.
Incorporate valuation results or other data from external systems.
You can also optionally use recipes to look up information dynamically instead of hard-coding it, for example exchange rates for transactions.
It is possible to create a single recipe that performs every operation, register it with every portfolio, and use it everywhere. You will need to pay careful attention to the composition of your market data rules and the quote scopes encapsulating market data in LUSID’s market data stores. There are numerous features to help with this, such as hierarchy and fallback rules, quote synthesis and conditional pricing models.
Alternatively, you can:
Create a library of static recipes for individual tasks or operations, and make sure to use the correct one for each.
Create a static ‘base’ recipe and compose new ‘virtual’ recipes on-the-fly. This is useful if you want to change just a few settings, and benefits from automatic update of virtual recipes if the base recipe changes. More information.
Recipes are complex and the documentation is split into articles targetting different responsibilities:
Locating market data
This can be equity or bond prices or FX rates held in the LUSID Quote Store, or more complex market data for valuing derivatives such as interest rate curves or volatility surfaces held in the LUSID Complex Market Data Store.Changing the default pricing models for instrument types
Each instrument type (equity, bond, future and so on) has a default pricing model provided by LUSID that you can either override or swap for a pricing model from a 3rd party vendor.Providing a set of default options
You can override the defaults to configure various aspects of a recipe's behavior, including aggregation (the process of deciding which metrics to report).Optionally, incorporating valuation results from other systems
Partial or complete results can be held in the LUSID Structured Result Store and incorporated into or replace certain valuation results calculated by LUSID.