Activating and de-activating cubes
Cubes can be activated or de-activated from the configuration file application.yaml.
Configuration
Properties
To override the default setting of a specific cube, add the mr.enable.cubes.
followed by the cube name to your application.yaml file. For instance, to disable the PnL cube, add the following:
mr:
enable:
cubes:
pnl: `false`
Here’s the list of properties you can use to enable/disable the various cubes:
- mr.enable.cubes.common
- mr.enable.cubes.market-data
- mr.enable.cubes.pnl
- mr.enable.cubes.pnl-summary
- mr.enable.cubes.sensi
- mr.enable.cubes.sensi-summary
- mr.enable.cubes.var-es
- mr.enable.cubes.var-summary
Spring profiles
Profile | Description |
---|---|
dist-data-node | Only activate the data cubes (all except MRCombinedCube) and also the Netty bus messaging. |
dist-query-node | Only activate the query cube (MRCombinedCube) and also the Netty bus messaging. |
Datastore implication
De-activating a cube means that the unused stores will also be de-activated. The following matrix shows the mapping between store and cubes.
note
The MRCombinedCube does not require a store because it is a query cube.
Standard configuration
Store | Var-ES cube | Sensi cube | PnL cube | Var-ES Summary cube | Sensi Summary cube | PnL Summary cube |
---|---|---|---|---|---|---|
FXRates | X | X | X | X | X | X |
RoundingMethods1 | X | X | X | X | ||
Quantiles1 | X | X | X | X | ||
TradeAttributes | X | X | X | |||
BookParentChild | X | X | X | |||
BookHierarchy | X | X | X | |||
LegalEntityParentChild | X | X | X | |||
LegalEntityHierarchy | X | X | X | |||
CounterpartyParentChild | X | X | X | |||
CounterpartyHierarchy | X | X | X | |||
Counterparties | X | X | X | |||
Countries | X | X | X | |||
RiskFactorsCatalogue | X | X | X | |||
MarketDataSets | X | X | X | |||
Scenarios1 | X | X | ||||
PnL | X | |||||
Maturities2 | 2 | |||||
Tenors2 | 2 | |||||
Moneyness2 | 2 | |||||
DynamicMaturities | X | |||||
DynamicTenors | X | |||||
DynamicMoneyness | X | |||||
TradeSensitivities | X | |||||
MarketData | X | |||||
CorporateAction | X | |||||
SensiLadders | X | |||||
MarketShifts | X | |||||
TradePnLs | X | |||||
PnLBaseStore | X | |||||
SensiBaseStore | X | |||||
BaseStore | X |
Removing modules from your application
The default MR application includes all modules, with the full project code containing the Sensitivity, Market Data, PnL, VaR-ES, and MRCombined cubes (and Summary versions where applicable).
To remove a module completely, remove the dependency in the MR application pom.xml
file and modify the MarketRiskConfig
class to remove the imports of configuration classes.
All efforts have been made to minimize the amount of code changes required to achieve this removal, but some direct imports from the libraries might remain.