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.


  1. This store is active even if only the PnL cube is activated ↩︎

  2. Only for the non-scalar profile ↩︎