Migration notes 2.0.0
This page explains the changes required to migrate to the stated version of the Market Risk Accelerator.
Migrate to 2.0.0
Upgrading from version 1.10.0 See Market Risk Accelerator 2.0.0 Release Notes.
The Accelerator is using ActivePivot 5.9.6 and ActiveUI 4.3.13.
For new features and fixes included in these releases, please see the ActiveUI documentation and ActiveUI Migration Notes, and the release notes for ActivePivot.
For clients licensed to use ActiveMonitor, a skeleton module based on version 5.9.6 is included with the Market Risk Accelerator 2.0.0 release.
Headline announcement
- Usage of the common library : The common features used by all Accelerators are located in the ‘com.activeviam.apps/shared*.jar’ library. Several classes have been moved to this library. As a consequence a lot of imports have changed from ‘com.activeviam.risk’ to ‘com.activeviam.accelerator.common’.
- Upgrade to AP5.9 : The Accelerator now uses Active Pivot 5.9.x, which also means that only Java 11 is supported.
- Adjustments 2.0 : Integration of the interfaces allowing the interaction with the Sign-Off Module. Implementation details can be found in Sign-off API implementation notes.
- Profile for Sign-off functionality : The
enable-signoff
Spring Profile has been added to the Market Risk Accelerator, grouping all Sign-off functionality in a single toggled configuration. - Datastore Helper 2.0 : The Datastore Helper tool for defining and customizing the datastore schema has been upgraded to version 2.0. For details, refer to Datastore Helper implementation within MRA.
- JUnit 5 : Most of the tests now use JUnit 5.
- Data Connectors : The DEE feature is now integrated into an import/export toolbox library called “Data Connectors” prefixed with ‘com.activeviam.io’. See Data Connectors documentation for ActivePivot v5.10 or for ActivePivot v5.9
- Corporate Actions : The dividends, coupons, stock splits or merge are now taken in account for PnL calculations.
- Correlation : The correlation metric is handled. Its market data name is ‘RiskFactor 1/RiskFactor 2’.
- Cross-Gamma : The cross-gamma metric is handled; it is the gamma between two risk factors, without bucketing.
- Spring configuration : The Spring configuration templates for cube and datastore definition are in common with FRTB.
Input file formats
Added
File | Details |
---|---|
CrossGammaSensitivities.csv | Cross gamma sensitivity |
CorrelationSensitivities.csv | Correlation sensitivity |
CorporateAction.csv | Corporate actions description |
Modified
File | Details |
---|---|
*Sensitivities.csv | Added optional adjustment source tagging fields when using the enable-signoff profile. |
PL*Actuals.csv | Added optional adjustment source tagging fields when using the enable-signoff profile. |
Removed
None
Configuration files
Files Added
signoff.properties
File containing specific parameters for signoff operations.
New properties:
Property Name | Comment | Value |
---|---|---|
sign-off.adjustments.scheduler-pool-size | Scheduler pool size for the adjustmentexecution service. | 1 |
Files Modified
signoff.export.properties
New properties:
Property Name | Comment | Value |
---|---|---|
signoff.export.store.skip-hierarchies | Hierarchies that are not included in the export |
Updated properties:
Property Name | Comment | New Value | Old Value |
---|---|---|---|
signoff.export.cube.aggregated.aggregate-across | ALL::Trades;Risk Factors Secondary | ALL::Trades;Risk Factors;Risk Factors Secondary | |
signoff.export.cube.skip-hierarchies | VaR-ES Cube::Percentile,Sensitivity Cube::Ladder Shifts;BookHierarchy;LegalEntityHierarchy;Risk Factors | ALL::BookHierarchy;LegalEntityHierarchy,VaR-ES Cube::Percentile,Sensitivity Cube::Ladder Shifts |
Deleted properties:
None
risk-config.properties
New properties:
Property Name | Comment | Value |
---|---|---|
correlation.currency.level | Currency level for the correlation metric | Ccy@Currencies@Currencies |
cross.gamma.currency.level | Currency level for the cross gamma metric | Ccy@Currencies@Currencies |
sensi.type.dividend | Sensi type regexp filter for dividend sensitivity (part of the corporate actions) | ^(?i).*(?:delta |
sensi.type.cross.gamma | Sensi type regexp filter for the cross gamma metric | ^(?i).*(?:cross |
sensi.type.correlation | Sensi type regexp filter for the correlation metric | ^(?i).*correlation.*$ |
correlation.risk.level.split | Symbol that splits the market data name into the two risk factors for correlation (for instance “Ford/BMW” for Ford against BMW) | / |
agg.cache.size.var | Aggregate cache size for the VaR-ES cube | -1 |
agg.cache.size.sensi | Aggregate cache size for the sensi cube | -1 |
agg.cache.size.pnl | Aggregate cache size for the PnL cube | -1 |
agg.cache.size.combined | Aggregate cache size for the combined cube | -1 |
ctx.queries.time.limit.combined | Query timeout for the combined cube, in seconds | 30 |
ctx.queries.time.limit.data | Query timeout for all the data cubes, in seconds | 30 |
ctx.reference.ccy | Default reference currency for the context value | EUR |
ctx.var.time.period | Default time horizon scale for the VaR metrics | 1.0 |
ctx.dynamic.bucketing.set | Default set of buckets used for the dynamic bucketing | DEFAULT |
Updated properties:
Property Name | Comment | New Value | Old Value |
---|---|---|---|
tenors.fact.levels | Added Correlation | Delta::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Gamma::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Vega::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Vanna::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Volga::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Correlation::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk | Delta::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Gamma::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Vega::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Vanna::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk,Volga::Tenor Date@Tenor Dates@Risk;Tenor@Tenors@Risk |
tenors.fact.levels.labels | Added Correlation | Delta::Tenor@Tenors@Risk,Gamma::Tenor@Tenors@Risk,Vega::Tenor@Tenors@Risk,Vanna::Tenor@Tenors@Risk,Volga::Tenor@Tenors@Risk,Correlation::Tenor@Tenors@Risk | Delta::Tenor@Tenors@Risk,Gamma::Tenor@Tenors@Risk,Vega::Tenor@Tenors@Risk,Vanna::Tenor@Tenors@Risk,Volga::Tenor@Tenors@Risk |
tenors.fact.levels.dates | Added Correlation | Delta::Tenor Date@Tenor Dates@Risk,Gamma::Tenor Date@Tenor Dates@Risk,Vega::Tenor Date@Tenor Dates@Risk,Vanna::Tenor Date@Tenor Dates@Risk,Volga::Tenor Date@Tenor Dates@Risk,Correlation::Tenor Date@Tenor Dates@Risk | Delta::Tenor Date@Tenor Dates@Risk,Gamma::Tenor Date@Tenor Dates@Risk,Vega::Tenor Date@Tenor Dates@Risk,Vanna::Tenor Date@Tenor Dates@Risk,Volga::Tenor Date@Tenor Dates@Risk |
sensi.type.delta | Improved Regexp | ^(?i).*(?:delta | dividends |
sensi.type.cash | Improved Regexp | ^(?i).*cash.*$ | (?i).*(?:cash |
sensi.type.vega | Improved Regexp | ^(?i).*vega.*$ | (?i).*vega.* |
sensi.type.gamma | Exclusion of cross gamma | ^(?i).*(gamma)(?<!((?:cross | x).?gamma)).*$ |
sensi.type.vanna | Improved Regexp | ^(?i).*vanna.*$ | (?i).*vanna.* |
sensi.type.volga | Improved Regexp | ^(?i).*(?:volga | vomma).*$ |
sensi.type.theta | Improved Regexp | ^(?i).*theta.*$ | (?i).*(?:theta |
Deleted properties:
None
risk.properties
New properties:
Property Name | Comment | Value |
---|---|---|
sensiCrossGammaFilePattern | Cross gamma sensi file pattern | glob:**CrossGammaSensitivities*.csv |
sensiCorrelationFilePattern | Correlation sensi file pattern | glob:**CorrelationSensitivities*.csv |
corporateActionFilePattern | Corporate action file pattern | glob:**CorporateAction*.csv* |
Updated properties:
Property Name | Comment | New Value | Old Value |
---|---|---|---|
sensiGammaFilePattern | Exclusion of cross gamma | regex:^(?i).*Gamma(?<!CrossGamma)Sensitivities.*\.csv.*$ | glob:**GammaSensitivities*.csv |
Deleted properties:
None
greek-based-pl-formula-rules.properties
New properties:
Property Name | Comment | Value |
---|---|---|
formula.rule.dividend.* | Formula for the dividends | Absolute,1,1,false |
formula.rule.crossgamma.1.* | Formula for the risk 1rst factor of cross gamma | Relative,1,1,true |
formula.rule.crossgamma.2.* | Formula for the risk 2nd factor of cross gamma | Relative,1,1,true |
formula.rule.correlation.equity | Formula for the equity correlation | Relative,1,1,true |
formula.rule.correlation.* | Formula for the non-equity correlation | Relative,1,1,true |
Updated properties:
None
Deleted properties:
None
Files Deleted
None
Datastores
Added
Store | Details |
---|---|
CorporateAction | It is linked to the MarketData store, it contains the optional corporate actions performed on the market instruments such as dividend and stock split. |
Modified
By activating the ’enable-signoff’ profile, the following fields will be added :
Store | Field | Type | Description |
---|---|---|---|
PnL | Source | String | Describes the source of the data, for adjustment functionality (e.g Unadjusted, UserAdjustment1) |
PnL | Input type | String | The type of input for the row (e.g Data load, User input) |
By activating the ’enable-signoff’ and ‘scalar-sensi’ profile, the following fields will be added :
Store | Field | Type | Description |
---|---|---|---|
SensiBaseStore | Source | String | Describes the source of the data, for adjustment functionality (e.g Unadjusted, UserAdjustment1) |
SensiBaseStore | Input type | String | The type of input for the row (e.g Data load, User input) |
Other modifications
Modification | Store | Field | Type | Description |
---|---|---|---|---|
Deleted | SensiBaseStore | Sensi | String | Old Signoff tracker |
Deleted | TradePnLs | VaR | String | Old Signoff tracker |
Deleted | PnL | PnL | String | Old Signoff tracker |
Cube schema
Added
Cube | Dimension | Hierarchy | Levels | Datastore fields | Details |
---|---|---|---|---|---|
PLCube | Sign-off Adjustment | Source | Source, Input type | Source, Input type | Slices data by source and input type, for adjustment functionality. |
SensitivityCube | Sign-off Adjustment | Source | Source, Input type | Source, Input type | Slices data by source and input type, for adjustment functionality. |
Modified
Removed
Measures
Added
Cube | Measure | Details |
---|---|---|
SensitivityCube | Dividend FX Rate | FX rate applied to a dividend |
SensitivityCube | Dividend Current Native | Dividend in original currency |
SensitivityCube | Dividend Previous Native | Previous day’s dividend in original currency |
SensitivityCube | Dividend Current | The dividend |
SensitivityCube | Dividend Previous | Previous day’s dividend |
SensitivityCube | Split Ratio Current | Split ratio applied to a share |
SensitivityCube | Split Ratio Previous | Split ratio applied to a share the previous day |
SensitivityCube | Dividend PnL Explain Native | PnL explain in original currency generated by the dividends |
SensitivityCube | Dividend PnL Explain | PnL explain generated by the dividends |
SensitivityCube | Dividend Quantity | Quantity of underlying eligible for dividend |
SensitivityCube | Dividend Quantity DtD | Day-to-day variation of quantity eligible for dividend |
SensitivityCube | Dividend Quantity DtD % Difference | Day-to-day variation of quantity eligible for dividend in % |
SensitivityCube | Dividend Quantity Previous | Previous day’s quantity of underlying eligible for dividend |
SensitivityCube | Dividend Quantity with % Difference | Quantity of underlying eligible for dividend with variation |
SensitivityCube | Dividend Sensitivity | Sensitivity to the dividend in reporting currency |
SensitivityCube | Dividend Sensitivity DtD | Day-to-day variation of sensitivity to the dividend in reporting currency |
SensitivityCube | Dividend Sensitivity DtD % Difference | Day-to-day variation of sensitivity to the dividend in reporting currency in % |
SensitivityCube | Dividend Sensitivity Previous | Previous day’s sensitivity to the dividend in reporting currency |
SensitivityCube | Dividend Sensitivity with % Difference | Sensitivity to the dividend in reporting currency with variation |
Modified
none
Removed
Cube | Measure | Details |
---|---|---|
SensitivityCube | Delta Next MD Native | Next date market data |
SensitivityCube | Gamma Next MD Native | Next date market data |
SensitivityCube | Vanna Next MD Native | Next date market data |
SensitivityCube | Vega Next MD Native | Next date market data |
SensitivityCube | Volga Next MD Native | Next date market data |
SensitivityCube | Cash Next MD | Next date market data |
SensitivityCube | Delta Next MD | Next date market data |
SensitivityCube | Gamma Next MD | Next date market data |
SensitivityCube | Theta Next MD | Next date market data |
SensitivityCube | Vanna Next MD | Next date market data |
SensitivityCube | Vega Next MD | Next date market data |
SensitivityCube | Volga Next MD | Next date market data |
Context values
Added
none
Modified
none
Removed
none