FRTB-specific Configuration
Scopes
The scope describes which data is loaded and unloaded.
Each request to the Data Load Controller contains a scope. In the FRTB reference implementation, the as-of date scope is turned into a directory and all the files in that directory are loaded. When unloading data, the scope is turned into a RemoveWhere clause to be run on the datastore.
The following table shows you the three different scopes in the FRTB reference implementation. You can add your own scope definition if required, such as ‘book’, ‘portfolio’, and so on.
Scope | Description |
---|---|
Configuration Scope | This scope is used for configuration files, including the parameters which are fetched the parameters API. Data in this scope typically has a “start date” rather than an as-of date. The files in this scope are found in the “configuration” directory. This scope has no parameters. |
Historical Scope | This scope is used for historical summary data. This data is not at the trade level and does not include recent dates. Instead it is at the aggregate level (for example, book and legal entity) and contains a long history. The files in this scope are found in the “historical” directory. This scope has no parameters. |
As-Of Date Scope | This scope is for the daily trade-level files. The files in this scope are found in directories whose names match the requested date. This scope is parameterized by as-of date. For example: "scope":{ "AsOfDate": "2018-09-27" } |
Topic Aliases
Each input file is loaded with a topic (see Input file formats). Topic aliases are used to group those topics. Atoti FRTB contains the following topic aliases:
Alias | Description | Scope | Topics |
---|---|---|---|
ConfigurationData | Parameter set data | Configuration scope | Configuration |
TupleData | Tuples inserted directly into the datastore (for QIS double sums hierarchies) | Configuration scope | IMA_Trades, IMA_Summary |
FXData | Recent FX rates | As-of date scope | FXRates, EsScenarioFxRates |
OrganisationData | Book and Legal Entity hierarchies | As-of date scope | Reference and Booking Files: CombinedBookParentChildDesk, BookParentChild, BookDescription, DeskDescription, IRTDeskGroups, and Categories. BookHierarchy store tuples are generated from BookParentChild Store tuples, LegalEntityParentChild, and LegalEntityAttributes |
TradeBookingData | Trade attributes and mapping | As-of date scope | Trade_Attributes |
SBMData | SBM sensitivities and related bucket stores | As-of date scope | Equity Buckets, EquityBucketDescription, CommodityBuckets, DRCSecNonCtpBuckets, CSR_BUCKET_DESCRIPTION_NONSEC, CSR_BUCKET_DESCRIPTION_SECNONCTP, CSR_BUCKET_DESCRIPTION_SECCTP, SeniorityDescription, SBM_Curvature_Sensi, SBM_Delta_Sensi, SBM_Vega_Sensi, RRAO |
CrifData | CRIF | ||
SADRCData | SA DRC data | As-of date scope | DRC |
SAOverrides | UnderlyingDescriptionOverrides, ObligorOverrides, TrancheOverrides, RRAOOverrides | ||
CATradeData | IMA and SES trade level data | As-of date scope | Scenarios, IMARiskFactors, IMA_Trades |
IMADRCScenariosData | Descriptions of IMA DRC scenarios | As-of date scope | DRC_SCENARIO_COUNT, DRCScenarios |
IMADRCTradeData | Recent IMA DRC trade data | As-of date scope | DRC, DRC_NONLINEAR_RECOVERY |
PLTradeData | Recent PLAT and backtesting trade-level data | As-of date scope | PLSummary, PLScenarios |
ALLSA | FXData + OrganisationData + TradeBookingData + SBMData + SADRCData | As-of date scope | FXRates, Organisation, TradeBooking, SBM, SADRC, Crif, SAOverrides (loads all of these Aliases and their associated topics, as listed in this table (above)) |
ALLIMADaily | FXData + OrganisationData + TradeBookingData + CATradeData + IMADRCTradeData | As-of date scope | FXRates, Organisation, TradeBooking, CATrade, IMADRCTrade (loads all of these Aliases and their associated topics, as listed in this table (above)) |
StressCalibrationData | Trades & Scenarios data for Stress Calibration Cube | As-of date scope | StressCalibrationPLTrades, StressCalibrationScenarios, StressCalibrationScenarioFxRates |
HistoricalOrganisationData | BookDescriptionHistorical + BookParentChildHistorical | Historical scope | Book Parent Child, Desk Description, IRT Desk Groups, and Reference and Booking Files |
IMADRCSummaryData | Historical IMA DRC data | Historical scope | IMA_DRC_Summary, FXHistorical |
PLSummaryData | Historical/summary PLAT and backtesting Trades & Scenario data | Historical scope | PLSummary, PLSummaryScenarios, FXHistorical |
IMASummary | IMA and SES historical/summary data | Historical scope | IMA_Summary, IMARiskFactorsHistorical, FXHistorical, EsScenarioFxHistorical |
SASummary | CASummaryData | Historical scope | SBM_Delta_Sensi_Summary, SBM_Vega_Sensi_Summary, SBM_Curvature_Sensi_Summary, DRC_Summary, RRAO_Summary |
Configuration Properties
The following properties can be set in application.properties
:
Property | Default Value | Description |
---|---|---|
csvSource.dataset |
“data” | The directory containing the CSV files. The scope directories are immediate subdirectories of this |
initial-load.business-dates |
(null) | If set, the (comma-separated) set of as-of-dates to load at start-up |
initial-load.history |
true | If set to true , historical data will be loaded |
Initial Load Order
Topic Aliases
The following topic aliases are loaded on startup in the specified order.
Configuration
If there is a configuration
directory available, the following topics are loaded:
- ConfigurationData
- TupleData
As-of-Dates
If the configuration parameter initial-load.business-dates
is set, the dates listed in the parameter are used. For example, in the application.properties
file:
initial-load.business-dates=2018-09-28,2018-09-27
If the initial-load.business-dates
parameter is not set, the top level of the data directory is scanned for directories with date names. These dates are then used as the as-of-dates for the initial load. This matches the previous startup behavior.
Topics loaded with As-Of-Dates
For the set of determined as-of-dates, the following topics are loaded with the “AsOfDate” field set in the scope:
- IMADRCScenariosData
- ALLSA + ALLIMADaily + PLTradeData + StressCalibrationData
Historical Data (Optional)
If the configuration parameter initial-load.history
is set to true
and there is a historical
directory available, the following additional topics are loaded:
- HistoricalOrganisationData + IMASummary + PLSummaryData + IMADRCSummaryData