diff --git a/VarInput/Input/conventions.xml b/VarInput/Input/conventions.xml
new file mode 100644
index 0000000..145a0bd
--- /dev/null
+++ b/VarInput/Input/conventions.xml
@@ -0,0 +1,1721 @@
+
+
+ CHF-ZERO-CONVENTIONS
+ false
+ A365
+ Daily
+
+
+ EUR-ZERO-CONVENTIONS
+ false
+ A365
+ Daily
+
+
+ EUR-ZERO-CONVENTIONS-TENOR-BASED
+ true
+ A365
+ Continuous
+ Daily
+ TARGET
+ 2
+ TARGET
+ Following
+ false
+
+
+ GBP-ZERO-CONVENTIONS
+ false
+ A365
+ Daily
+
+
+ USD-ZERO-CONVENTIONS
+ false
+ A365
+ Daily
+
+
+ USD-ZERO-CONVENTIONS-TENOR-BASED
+ true
+ A365
+ Continuous
+ Daily
+ US
+ 2
+ US
+ Following
+ false
+
+
+ CDS-STANDARD-CONVENTIONS
+ 0
+ WeekendsOnly
+ Quarterly
+ ModifiedFollowing
+ TwentiethIMM
+ A360
+ true
+ true
+
+
+ AUD-BBSW-CONVENTIONS
+ true
+ AUD-BBSW
+
+
+ BRL-GENERIC-CONVENTIONS
+ true
+ BRL-GENERIC
+
+
+ CAD-CORRA-CONVENTIONS
+ true
+ CAD-CORRA
+
+
+ CAD-DEPOSIT
+ true
+ CAD-CDOR
+
+
+ CHF-LIBOR-CONVENTIONS
+ true
+ CHF-LIBOR
+
+
+ CHF-SARON-CONVENTIONS
+ true
+ CHF-SARON
+
+
+ CHF-TOIS-CONVENTIONS
+ true
+ CHF-TOIS
+
+
+ CLP-GENERIC-CONVENTIONS
+ true
+ CLP-GENERIC
+
+
+ CNY-GENERIC-CONVENTIONS
+ true
+ CNY-GENERIC
+
+
+ CZK-DEPOSIT
+ true
+ CZK-PRIBOR
+
+
+ DKK-DEPOSIT
+ true
+ DKK-CIBOR
+
+
+ DKK-DKKOIS-CONVENTIONS
+ true
+ DKK-DKKOIS
+
+
+ EUR-DEPOSIT
+ true
+ EUR-EURIBOR
+
+
+ EUR-EONIA-CONVENTIONS
+ true
+ EUR-EONIA
+
+
+ EUR-EURIBOR-CONVENTIONS
+ true
+ EUR-EURIBOR
+
+
+ GBP-DEPOSIT
+ true
+ GBP-LIBOR
+
+
+ GBP-LIBOR-CONVENTIONS
+ true
+ GBP-LIBOR
+
+
+ GBP-SONIA-CONVENTIONS
+ true
+ GBP-SONIA
+
+
+ HUF-DEPOSIT
+ true
+ HUF-BUBOR
+
+
+ IDR-GENERIC-CONVENTIONS
+ true
+ IDR-GENERIC
+
+
+ INR-GENERIC-CONVENTIONS
+ true
+ INR-GENERIC
+
+
+ JPY-LIBOR-CONVENTIONS
+ true
+ JPY-LIBOR
+
+
+ JPY-TIBOR-CONVENTIONS
+ true
+ JPY-TIBOR
+
+
+ KRW-GENERIC-CONVENTIONS
+ true
+ KRW-GENERIC
+
+
+ MXN-TIIE-CONVENTIONS
+ true
+ MXN-TIIE
+
+
+ MYR-GENERIC-CONVENTIONS
+ true
+ MYR-GENERIC
+
+
+ NOK-DEPOSIT
+ true
+ NOK-NIBOR
+
+
+ NZD-DEPOSIT
+ true
+ NZD-BKBM
+
+
+ PHP-GENERIC-CONVENTIONS
+ true
+ PHP-GENERIC
+
+
+ PLN-DEPOSIT
+ true
+ PLN-WIBOR
+
+
+ RUB-MOSPRIME-CONVENTIONS
+ true
+ RUB-MOSPRIME
+
+
+ SEK-DEPOSIT
+ true
+ SEK-STIBOR
+
+
+ SEK-SIOR-CONVENTIONS
+ true
+ SEK-SIOR
+
+
+ SEK-STIBOR-CONVENTIONS
+ true
+ SEK-STIBOR
+
+
+ SGD-DEPOSIT
+ true
+ SGD-SIBOR
+
+
+ TWD-GENERIC-CONVENTIONS
+ true
+ TWD-GENERIC
+
+
+ USD-FED-FUNDS-CONVENTIONS
+ true
+ USD-FedFunds
+
+
+ USD-LIBOR-CONVENTIONS
+ true
+ USD-LIBOR
+
+
+ AUD-BBSW-3M-FUTURES-CONVENTIONS
+ AUD-BBSW-3M
+
+
+ EURIBOR-3M-FUTURES-CONVENTIONS
+ EUR-EURIBOR-3M
+
+
+ JPY-LIBOR-3M-FUTURES-CONVENTIONS
+ JPY-LIBOR-3M
+
+
+ SEK-STIBOR-3M-FUTURES-CONVENTIONS
+ SEK-STIBOR-3M
+
+
+ USD-LIBOR-3M-FUTURES-CONVENTIONS
+ USD-LIBOR-3M
+
+
+ AUD-3M-FRA-CONVENTIONS
+ AUD-BBSW-3M
+
+
+ CAD-FRA-3M
+ CAD-CDOR-3M
+
+
+ CHF-3M-FRA-CONVENTIONS
+ CHF-LIBOR-3M
+
+
+ CHF-6M-FRA-CONVENTIONS
+ CHF-LIBOR-6M
+
+
+ CZK-3M-FRA
+ CZK-PRIBOR-3M
+
+
+ CZK-6M-FRA
+ CZK-PRIBOR-6M
+
+
+ EUR-12M-FRA-CONVENTIONS
+ EUR-EURIBOR-12M
+
+
+ EUR-3M-FRA-CONVENTIONS
+ EUR-EURIBOR-3M
+
+
+ EUR-6M-FRA-CONVENTIONS
+ EUR-EURIBOR-6M
+
+
+ GBP-3M-FRA
+ GBP-LIBOR-3M
+
+
+ GBP-6M-FRA
+ GBP-LIBOR-6M
+
+
+ HUF-6M-FRA
+ HUF-BUBOR-6M
+
+
+ JPY-3M-FRA-CONVENTIONS
+ JPY-LIBOR-3M
+
+
+ JPY-6M-FRA-CONVENTIONS
+ JPY-LIBOR-6M
+
+
+ NZD-3M-FRA
+ NZD-BKBM-3M
+
+
+ PLN-3M-FRA
+ PLN-WIBOR-3M
+
+
+ PLN-6M-FRA
+ PLN-WIBOR-6M
+
+
+ SEK-3M-FRA
+ SEK-STIBOR-3M
+
+
+ USD-1M-FRA-CONVENTIONS
+ USD-LIBOR-1M
+
+
+ USD-3M-FRA-CONVENTIONS
+ USD-LIBOR-3M
+
+
+ USD-6M-FRA-CONVENTIONS
+ USD-LIBOR-6M
+
+
+ AUD-CMS-1Y
+ AUD-6M-SWAP-CONVENTIONS
+
+
+ AUD-CMS-30Y
+ AUD-6M-SWAP-CONVENTIONS
+
+
+ CAD-CMS-1Y
+ CAD-3M-SWAP-CONVENTIONS
+
+
+ CAD-CMS-30Y
+ CAD-3M-SWAP-CONVENTIONS
+
+
+ CHF-CMS-1Y
+ CHF-3M-SWAP-CONVENTIONS
+
+
+ CHF-CMS-30Y
+ CHF-6M-SWAP-CONVENTIONS
+
+
+ DKK-CMS-1Y
+ DKK-3M-SWAP-CONVENTIONS
+
+
+ DKK-CMS-30Y
+ DKK-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-10Y
+ EUR-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-12M
+ EUR-3M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-1Y
+ EUR-3M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-20Y
+ EUR-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-2Y
+ EUR-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-30Y
+ EUR-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-3M
+ EUR-3M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-5Y
+ EUR-6M-SWAP-CONVENTIONS
+
+
+ EUR-CMS-6M
+ EUR-3M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-10Y
+ GBP-6M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-1Y
+ GBP-3M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-20Y
+ GBP-6M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-2Y
+ GBP-6M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-30Y
+ GBP-6M-SWAP-CONVENTIONS
+
+
+ GBP-CMS-5Y
+ GBP-6M-SWAP-CONVENTIONS
+
+
+ NOK-CMS-1Y
+ NOK-3M-SWAP-CONVENTIONS
+
+
+ NOK-CMS-30Y
+ NOK-6M-SWAP-CONVENTIONS
+
+
+ NZD-CMS-1Y
+ NZD-3M-SWAP
+
+
+ NZD-CMS-30Y
+ NZD-3M-SWAP
+
+
+ JPY-CMS-1Y
+ JPY-LIBOR-6M-SWAP-CONVENTIONS
+
+
+ JPY-CMS-30Y
+ JPY-LIBOR-6M-SWAP-CONVENTIONS
+
+
+ SEK-CMS-1Y
+ SEK-3M-SWAP-CONVENTIONS
+
+
+ SEK-CMS-30Y
+ SEK-6M-SWAP-CONVENTIONS
+
+
+ USD-CMS-10Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ USD-CMS-1Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ USD-CMS-20Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ USD-CMS-2Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ USD-CMS-30Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ USD-CMS-5Y
+ USD-3M-SWAP-CONVENTIONS
+
+
+ AUD-3M-SWAP-CONVENTIONS
+ AU
+ Quarterly
+ MF
+ A365
+ AUD-BBSW-3M
+
+
+ AUD-6M-SWAP-CONVENTIONS
+ AU
+ Semiannual
+ MF
+ A365
+ AUD-BBSW-6M
+
+
+ BRL-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ BRL-GENERIC-3M
+
+
+ CAD-3M-SWAP-CONVENTIONS
+ CA
+ Semiannual
+ MF
+ ACT/365
+ CAD-CDOR-3M
+ Semiannual
+ Compounding
+
+
+ CAD-3M-SWAP-CONVENTIONS-1Y
+ CA
+ Annual
+ MF
+ ACT/365
+ CAD-CDOR-3M
+ Annual
+ Compounding
+
+
+ CHF-3M-SWAP-CONVENTIONS
+ ZUB,UK
+ Annual
+ MF
+ 30/360
+ CHF-LIBOR-3M
+
+
+ CHF-6M-SWAP-CONVENTIONS
+ ZUB,UK
+ Annual
+ MF
+ 30/360
+ CHF-LIBOR-6M
+
+
+ CLP-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ CLP-GENERIC-3M
+
+
+ CNY-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ CNY-GENERIC-3M
+
+
+ COP-3M-SWAP
+ COP
+ Quarterly
+ MF
+ ACT/360
+ COP-IBR-3M
+
+
+ CZK-3M-SWAP
+ CZK
+ Annual
+ MF
+ ACT/360
+ CZK-PRIBOR-3M
+
+
+ CZK-6M-SWAP
+ CZK
+ Annual
+ MF
+ ACT/360
+ CZK-PRIBOR-6M
+
+
+ DKK-3M-SWAP-CONVENTIONS
+ DEN
+ Annual
+ MF
+ 30/360
+ DKK-CIBOR-3M
+
+
+ DKK-6M-SWAP-CONVENTIONS
+ DEN
+ Annual
+ MF
+ 30/360
+ DKK-CIBOR-6M
+
+
+ EUR-12M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-12M
+
+
+ EUR-1M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-1M
+
+
+ EUR-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-3M
+
+
+ EUR-6M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-6M
+
+
+ GBP-3M-SWAP-CONVENTIONS
+ UK
+ Annual
+ MF
+ A365
+ GBP-LIBOR-3M
+
+
+ GBP-6M-SWAP-CONVENTIONS
+ UK
+ Semiannual
+ MF
+ A365
+ GBP-LIBOR-6M
+
+
+ HKD-3M-SWAP
+ HKD
+ Quarterly
+ MF
+ A365
+ HKD-HIBOR-3M
+
+
+ HUF-6M-SWAP
+ HUF
+ Annual
+ MF
+ A365
+ HUF-BUBOR-6M
+
+
+ IDR-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ IDR-GENERIC-3M
+
+
+ INR-3M-SWAP
+ INR
+ Semiannual
+ MF
+ A365
+ INR-MIFOR-3M
+
+
+ INR-6M-SWAP
+ INR
+ Semiannual
+ MF
+ A365
+ INR-MIFOR-6M
+
+
+ INR-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ INR-GENERIC-3M
+
+
+ JPY-LIBOR-3M-SWAP-CONVENTIONS
+ JP,UK
+ Semiannual
+ MF
+ A365
+ JPY-LIBOR-3M
+
+
+ JPY-LIBOR-6M-SWAP-CONVENTIONS
+ JP,UK
+ Semiannual
+ MF
+ A365
+ JPY-LIBOR-6M
+
+
+ JPY-TIBOR-3M-SWAP-CONVENTIONS
+ JP
+ Semiannual
+ MF
+ A365
+ JPY-TIBOR-3M
+
+
+ KRW-3M-SWAP
+ KRW
+ Quarterly
+ MF
+ A365
+ KRW-KORIBOR-3M
+
+
+ KRW-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ KRW-GENERIC-3M
+
+
+ MXN-28D-SWAP-CONVENTIONS
+ MXN
+ Lunarmonth
+ MF
+ ACT/360
+ MXN-TIIE-28D
+
+
+ MYR-3M-SWAP
+ MYR
+ Quarterly
+ MF
+ A365
+ MYR-KLIBOR-3M
+
+
+ MYR-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ MYR-GENERIC-3M
+
+
+ NOK-3M-SWAP-CONVENTIONS
+ NOK
+ Annual
+ MF
+ 30/360
+ NOK-NIBOR-3M
+
+
+ NOK-6M-SWAP-CONVENTIONS
+ NOK
+ Annual
+ MF
+ 30/360
+ NOK-NIBOR-6M
+
+
+ NZD-3M-SWAP
+ NZD
+ Semiannual
+ MF
+ A365
+ NZD-BKBM-3M
+
+
+ NZD-6M-SWAP
+ NZD
+ Semiannual
+ MF
+ A365
+ NZD-BKBM-6M
+
+
+ PHP-3M-SWAP
+ PHP
+ Quarterly
+ MF
+ ACT/360
+ PHP-PHIREF-3M
+
+
+ PHP-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ PHP-GENERIC-3M
+
+
+ PLN-3M-SWAP
+ PLN
+ Annual
+ MF
+ ACT/ACT
+ PLN-WIBOR-3M
+
+
+ PLN-6M-SWAP
+ PLN
+ Annual
+ MF
+ ACT/ACT
+ PLN-WIBOR-6M
+
+
+ RUB-3M-SWAP
+ RUB
+ Annual
+ MF
+ ACT/ACT
+ RUB-MOSPRIME-3M
+
+
+ SEK-3M-SWAP-CONVENTIONS
+ SS
+ Annual
+ MF
+ 30/360
+ SEK-STIBOR-3M
+
+
+ SEK-6M-SWAP-CONVENTIONS
+ SS
+ Annual
+ MF
+ 30/360
+ SEK-STIBOR-6M
+
+
+ SGD-6M-SWAP-CONVENTIONS
+ SGD
+ Annual
+ MF
+ 30/360
+ SGD-SIBOR-6M
+
+
+ THB-6M-SWAP
+ THB
+ Semiannual
+ MF
+ A365
+ THB-BIBOR-6M
+
+
+ TWD-3M-SWAP
+ TWD
+ Quarterly
+ MF
+ A365
+ TWD-TAIBOR-3M
+
+
+ TWD-GENERIC-3M-SWAP-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ TWD-GENERIC-3M
+
+
+ USD-1M-SWAP-ANNUAL-CONVENTIONS
+ US,UK
+ Annual
+ MF
+ ACT/360
+ USD-LIBOR-1M
+
+
+ USD-1M-SWAP-CONVENTIONS
+ US,UK
+ Annual
+ MF
+ 30/360
+ USD-LIBOR-1M
+
+
+ USD-3M-SWAP-ANNUAL-CONVENTIONS
+ US,UK
+ Annual
+ MF
+ ACT/360
+ USD-LIBOR-3M
+
+
+ USD-3M-SWAP-CONVENTIONS
+ US,UK
+ Semiannual
+ MF
+ 30/360
+ USD-LIBOR-3M
+
+
+ USD-6M-SWAP-CONVENTIONS
+ US,UK
+ Semiannual
+ MF
+ 30/360
+ USD-LIBOR-6M
+
+
+ ZAR-3M-SWAP
+ ZAR
+ Quarterly
+ MF
+ A365
+ ZAR-JIBAR-3M
+
+
+ CAD-OIS-CONVENTIONS
+ 2
+ CAD-CORRA
+ A365
+ 2
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ CHF-OIS-CONVENTIONS
+ 1
+ CHF-TOIS
+ 30/360
+ 2
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ CHF-OIS-SARON-CONVENTIONS
+ 1
+ CHF-SARON
+ 30/360
+ 2
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ DKK-OIS-CONVENTIONS
+ 2
+ DKK-DKKOIS
+ A360
+ 0
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ EUR-OIS-CONVENTIONS
+ 2
+ EUR-EONIA
+ A360
+ 1
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ GBP-OIS-CONVENTIONS
+ 0
+ GBP-SONIA
+ A365
+ 0
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ JPY-OIS-CONVENTIONS
+ 2
+ JPY-TONAR
+ A360
+ 1
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ SEK-OIS-CONVENTIONS
+ 2
+ SEK-SIOR
+ A360
+ 0
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ USD-OIS-CONVENTIONS
+ 2
+ USD-FedFunds
+ A360
+ 2
+ false
+ Annual
+ Following
+ Following
+ Backward
+
+
+ USD-AVERAGE-OIS-CONVENTIONS
+ 2
+ 6M
+ 30/360
+ US
+ MF
+ MF
+ USD-FedFunds
+ 3M
+ 2
+
+
+ EUR-EURIBOR-6M-12M-BASIS-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-12M
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-6M
+ true
+
+
+ EUR-EURIBOR-3M-6M-BASIS-CONVENTIONS
+ TARGET
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-6M
+ Annual
+ MF
+ 30/360
+ EUR-EURIBOR-3M
+ true
+
+
+ DKK-CIBOR-3M-6M-BASIS-CONVENTIONS
+ DKK
+ Annual
+ MF
+ 30/360
+ DKK-CIBOR-6M
+ Annual
+ MF
+ 30/360
+ DKK-CIBOR-3M
+ true
+
+
+ NOK-NIBOR-3M-6M-BASIS-CONVENTIONS
+ NOK
+ Annual
+ MF
+ 30/360
+ NOK-NIBOR-6M
+ Annual
+ MF
+ 30/360
+ NOK-NIBOR-3M
+ true
+
+
+ SEK-STIBOR-3M-6M-BASIS-CONVENTIONS
+ SEK
+ Annual
+ MF
+ 30/360
+ SEK-STIBOR-6M
+ Annual
+ MF
+ 30/360
+ SEK-STIBOR-3M
+ true
+
+
+ AUD-BBSW-3M-6M-BASIS-CONVENTIONS
+ AUD-BBSW-6M
+ AUD-BBSW-3M
+
+
+ CHF-LIBOR-3M-6M-BASIS-CONVENTIONS
+ CHF-LIBOR-6M
+ CHF-LIBOR-3M
+
+
+ EUR-EURIBOR-1S-3M-6M-BASIS-CONVENTIONS
+ EUR-EURIBOR-6M
+ EUR-EURIBOR-3M
+
+
+ EUR-OIS-1M-BASIS-CONVENTIONS
+ EUR-EURIBOR-1M
+ EUR-EONIA
+ 1Y
+
+
+ GBP-LIBOR-3M-6M-BASIS-CONVENTIONS
+ GBP-LIBOR-6M
+ GBP-LIBOR-3M
+
+
+ JPY-LIBOR-3M-6M-BASIS-CONVENTIONS
+ JPY-LIBOR-6M
+ JPY-LIBOR-3M
+
+
+ USD-LIBOR-1M-3M-BASIS-CONVENTIONS
+ USD-LIBOR-3M
+ USD-LIBOR-1M
+ 3M
+ true
+ false
+ Compounding
+
+
+ USD-LIBOR-3M-6M-BASIS-CONVENTIONS
+ USD-LIBOR-6M
+ USD-LIBOR-3M
+ 6M
+ true
+ false
+ Compounding
+
+
+ CHF-USD-FX-CONVENTIONS
+ 2
+ CHF
+ USD
+ 10000.0000
+ ZUB,US
+ true
+
+
+ EUR-AUD-FX-CONVENTIONS
+ 2
+ EUR
+ AUD
+ 10000.0000
+ TARGET,AU
+ true
+
+
+ EUR-CAD-FX-CONVENTIONS
+ 2
+ EUR
+ CAD
+ 10000.0000
+ TARGET,CA
+ true
+
+
+ EUR-CHF-FX-CONVENTIONS
+ 2
+ EUR
+ CHF
+ 10000.0000
+ TARGET,ZUB
+ true
+
+
+ EUR-DKK-FX-CONVENTIONS
+ 2
+ EUR
+ DKK
+ 10000.0000
+ TARGET,DEN
+ true
+
+
+ EUR-GBP-FX-CONVENTIONS
+ 2
+ EUR
+ GBP
+ 10000.0000
+ TARGET,UK
+ true
+
+
+ EUR-NOK-FX-CONVENTIONS
+ 2
+ EUR
+ NOK
+ 10000.0000
+ TARGET,NOK
+ true
+
+
+ EUR-NZD-FX-CONVENTIONS
+ 2
+ EUR
+ NZD
+ 10000.0000
+ TARGET,NZD
+ true
+
+
+ EUR-JPY-FX-CONVENTIONS
+ 2
+ EUR
+ JPY
+ 100.0000
+ TARGET,JP
+ true
+
+
+ EUR-SEK-FX-CONVENTIONS
+ 2
+ EUR
+ SEK
+ 10000.0000
+ TARGET,SEK
+ true
+
+
+ EUR-USD-FX-CONVENTIONS
+ 2
+ EUR
+ USD
+ 10000.0000
+ TARGET,US
+ true
+
+
+ GBP-USD-FX-CONVENTIONS
+ 2
+ GBP
+ USD
+ 10000.0000
+ UK,US
+ true
+
+
+ USD-BRL-FX-CONVENTIONS
+ 2
+ USD
+ BRL
+ 10000.0000
+ US
+ true
+
+
+ USD-CAD-FX-CONVENTIONS
+ 2
+ USD
+ CAD
+ 10000.0000
+ US,CA
+ true
+
+
+ USD-CHF-FX-CONVENTIONS
+ 2
+ USD
+ CHF
+ 10000.0000
+ ZUB,US
+ true
+
+
+ USD-CLP-FX-CONVENTIONS
+ 2
+ USD
+ CLP
+ 1.0000
+ US
+ true
+
+
+ USD-CNY-FX-CONVENTIONS
+ 2
+ USD
+ CNY
+ 10000.0000
+ US
+ true
+
+
+ USD-GBP-FX-CONVENTIONS
+ 2
+ USD
+ GBP
+ 10000.0000
+ UK,US
+ true
+
+
+ USD-IDR-FX-CONVENTIONS
+ 2
+ USD
+ IDR
+ 10000.0000
+ US
+ true
+
+
+ USD-INR-FX-CONVENTIONS
+ 2
+ USD
+ INR
+ 100.0000
+ US
+ true
+
+
+ USD-JPY-FX-CONVENTIONS
+ 2
+ USD
+ JPY
+ 100.0000
+ US,JP
+ true
+
+
+ USD-KRW-FX-CONVENTIONS
+ 2
+ USD
+ KRW
+ 100.0000
+ US
+ true
+
+
+ USD-MXN-FX-CONVENTIONS
+ 2
+ USD
+ MXN
+ 1.0000
+ US
+ true
+
+
+ USD-MYR-FX-CONVENTIONS
+ 2
+ USD
+ MYR
+ 10000.0000
+ US
+ true
+
+
+ USD-NOK-FX-CONVENTIONS
+ 2
+ USD
+ NOK
+ 10000.0000
+ US,NOK
+ true
+
+
+ USD-PHP-FX-CONVENTIONS
+ 2
+ USD
+ PHP
+ 10.0000
+ US
+ true
+
+
+ USD-SEK-FX-CONVENTIONS
+ 2
+ USD
+ SEK
+ 10000.0000
+ US,SEK
+ true
+
+
+ USD-TWD-FX-CONVENTIONS
+ 2
+ USD
+ TWD
+ 1.0000
+ US
+ true
+
+
+ EUR-AUD-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,AU,UK
+ MF
+ EUR-EURIBOR-3M
+ AUD-BBSW-3M
+
+
+ EUR-CAD-XCCY-BASIS-CONVENTIONS
+ 2
+ CA,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ CAD-CDOR-3M
+
+
+ EUR-CHF-XCCY-BASIS-CONVENTIONS
+ 2
+ ZUB,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ CHF-LIBOR-3M
+
+
+ EUR-DKK-XCCY-BASIS-CONVENTIONS
+ 2
+ DKK,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ DKK-CIBOR-3M
+
+
+ EUR-GBP-XCCY-BASIS-CONVENTIONS
+ 2
+ UK,TARGET
+ MF
+ EUR-EURIBOR-3M
+ GBP-LIBOR-3M
+
+
+ EUR-JPY-XCCY-BASIS-CONVENTIONS
+ 2
+ TKB,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ JPY-LIBOR-3M
+
+
+ EUR-NOK-XCCY-BASIS-CONVENTIONS
+ 2
+ NOK,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ NOK-NIBOR-3M
+
+
+ EUR-NZD-XCCY-BASIS-CONVENTIONS
+ 2
+ NZD,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ NZD-BKBM-3M
+
+
+ EUR-SEK-XCCY-BASIS-CONVENTIONS
+ 2
+ SEK,TARGET,UK
+ MF
+ EUR-EURIBOR-3M
+ SEK-STIBOR-3M
+
+
+ EUR-USD-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ EUR-EURIBOR-3M
+
+
+ USD-BRL-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ BRL-GENERIC-3M
+
+
+ USD-CAD-XCCY-BASIS-CONVENTIONS
+ 2
+ CA,US,UK
+ MF
+ USD-LIBOR-3M
+ CAD-CDOR-3M
+
+
+ USD-CHF-XCCY-BASIS-CONVENTIONS
+ 2
+ ZUB,US,UK
+ MF
+ USD-LIBOR-3M
+ CHF-LIBOR-3M
+
+
+ USD-CLP-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ CLP-GENERIC-3M
+
+
+ USD-CNY-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ CNY-GENERIC-3M
+
+
+ USD-GBP-XCCY-BASIS-CONVENTIONS
+ 2
+ UK,US
+ MF
+ USD-LIBOR-3M
+ GBP-LIBOR-3M
+
+
+ USD-IDR-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ IDR-GENERIC-3M
+
+
+ USD-INR-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ INR-GENERIC-3M
+
+
+ USD-JPY-XCCY-BASIS-CONVENTIONS
+ 2
+ JP,US,UK
+ MF
+ USD-LIBOR-3M
+ JPY-LIBOR-3M
+
+
+ USD-KRW-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ KRW-GENERIC-3M
+
+
+ USD-MXN-3M-XCCY-BASIS-CONVENTIONS
+ 2
+ MXN,US,UK
+ MF
+ USD-LIBOR-3M
+ MXN-TIIE-3M
+
+
+ USD-MXN-XCCY-BASIS-CONVENTIONS
+ 2
+ MXN,US,UK
+ MF
+ MXN-TIIE-28D
+ USD-LIBOR-1M
+
+
+ USD-MYR-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ MYR-GENERIC-3M
+
+
+ USD-NOK-XCCY-BASIS-CONVENTIONS
+ 2
+ NOK,US,UK
+ MF
+ USD-LIBOR-3M
+ NOK-NIBOR-3M
+
+
+ USD-PHP-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ PHP-GENERIC-3M
+
+
+ USD-SEK-XCCY-BASIS-CONVENTIONS
+ 2
+ SEK,US,UK
+ MF
+ USD-LIBOR-3M
+ SEK-STIBOR-3M
+
+
+ USD-TWD-GENERIC-XCCY-BASIS-CONVENTIONS
+ 2
+ TARGET,US,UK
+ MF
+ USD-LIBOR-3M
+ TWD-GENERIC-3M
+
+
+ EUHICP_INFLATIONSWAP
+ TARGET
+ MF
+ 30/360
+ EUHICP
+ false
+ 3M
+ false
+ TARGET
+ MF
+
+
+ EUHICPXT_INFLATIONSWAP
+ TARGET
+ MF
+ 30/360
+ EUHICPXT
+ false
+ 3M
+ false
+ TARGET
+ MF
+
+
+ FRHICP_INFLATIONSWAP
+ TARGET
+ MF
+ 30/360
+ FRHICP
+ false
+ 3M
+ false
+ TARGET
+ MF
+
+
+ UKRPI_INFLATIONSWAP
+ UK
+ MF
+ 30/360
+ UKRPI
+ false
+ 3M
+ false
+ UK
+ MF
+
+
+ USCPI_INFLATIONSWAP
+ US
+ MF
+ 30/360
+ USCPI
+ false
+ 3M
+ false
+ US
+ MF
+
+
+ ZACPI_INFLATIONSWAP
+ ZAR
+ MF
+ 30/360
+ ZACPI
+ false
+ 3M
+ false
+ ZAR
+ MF
+
+
diff --git a/VarInput/Input/curveconfig.xml b/VarInput/Input/curveconfig.xml
new file mode 100644
index 0000000..4df5a65
--- /dev/null
+++ b/VarInput/Input/curveconfig.xml
@@ -0,0 +1,1775 @@
+
+
+
+ AUDJPY
+
+ ATM
+ 1M,3M,6M,1Y,2Y
+ FX/AUD/JPY
+
+
+ EURAUD
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,5Y
+ FX/EUR/AUD
+
+
+ EURCAD
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y
+ FX/EUR/CAD
+
+
+ EURCHF
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,5Y,7Y,10Y
+ FX/EUR/CHF
+
+
+ EURGBP
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,5Y,7Y,10Y
+ FX/EUR/GBP
+
+
+ EURJPY
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ FX/EUR/JPY
+
+
+ EURUSD
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ FX/EUR/USD
+
+
+ USDJPY
+
+ ATM
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ FX/USD/JPY
+
+
+
+
+ AUD_SW_LN
+ AUD lognormal swaption volatilities
+ ATM
+ Lognormal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ AUD-CMS-1Y
+ AUD-CMS-30Y
+
+
+ CAD_SW_LN
+ CAD lognormal swaption volatilities
+ ATM
+ Lognormal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ CAD-CMS-1Y
+ CAD-CMS-30Y
+
+
+ CHF_SW_N
+ CHF normal swaption volatilities
+ ATM
+ Normal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ CHF-CMS-1Y
+ CHF-CMS-30Y
+
+
+ EUR_SW_N
+ EUR normal swaption volatilities
+ ATM
+ Normal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y,25Y,30Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y,25Y,30Y
+ EUR-CMS-1Y
+ EUR-CMS-30Y
+
+
+ GBP_SW_N
+ GBP normal swaption volatilities
+ ATM
+ Normal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y
+ GBP-CMS-1Y
+ GBP-CMS-30Y
+
+
+ JPY_SW_N
+ JPY normal swaption volatilities
+ ATM
+ Normal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y
+ JPY-CMS-1Y
+ JPY-CMS-30Y
+
+
+ USD_SW_N
+ USD normal swaption volatilities
+ ATM
+ Normal
+ Flat
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1M,3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y,25Y,30Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y,25Y,30Y
+ USD-CMS-1Y
+ USD-CMS-30Y
+
+
+
+
+ EUR_CF_N
+ EUR normal cap floor volatilities
+ Normal
+ Linear
+ FALSE
+ Actual/365 (Fixed)
+ TARGET
+ Following
+ 1Y,2Y,3Y,4Y,5Y,6Y,7Y,8Y,9Y,10Y,12Y,15Y,20Y,25Y,30Y
+ -0.015,-0.01,0,0.005,0.01,0.015,0.02,0.03,0.04,0.05,0.06,0.07,0.1
+
+ EUR-EURIBOR-6M
+ Yield/EUR/EUR1D
+ OptionletVolatilities
+ LinearFlat
+ LinearFlat
+
+ true
+
+
+
+ CHF_CF_N
+ CHF normal cap floor volatilities
+ Normal
+ Linear
+ FALSE
+ Actual/365 (Fixed)
+ CHF
+ Following
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,12Y,15Y,20Y
+ -0.015,-0.01,-0.005,0,0.005,0.01,0.015,0.02,0.03,0.04,0.05
+ CHF-LIBOR-6M
+ Yield/CHF/CHF1D
+ OptionletVolatilities
+ LinearFlat
+ LinearFlat
+
+ true
+
+
+
+
+
+
+
+ AUD3M
+
+ AUD
+
+
+
+ Deposit
+
+ MM/RATE/AUD/2D/3M
+
+ AUD-BBSW-CONVENTIONS
+ AUD3M
+
+
+ Tenor Basis Swap
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/12Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/25Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/AUD/30Y
+
+ AUD-BBSW-3M-6M-BASIS-CONVENTIONS
+ AUD6M
+ AUD3M
+
+
+
+
+ AUD6M
+
+ AUD
+
+
+
+ Deposit
+
+ MM/RATE/AUD/2D/6M
+
+ AUD-BBSW-CONVENTIONS
+ AUD6M
+
+
+ Swap
+
+ IR_SWAP/RATE/AUD/2D/6M/1Y
+ IR_SWAP/RATE/AUD/2D/6M/2Y
+ IR_SWAP/RATE/AUD/2D/6M/3Y
+ IR_SWAP/RATE/AUD/2D/6M/4Y
+ IR_SWAP/RATE/AUD/2D/6M/5Y
+ IR_SWAP/RATE/AUD/2D/6M/6Y
+ IR_SWAP/RATE/AUD/2D/6M/7Y
+ IR_SWAP/RATE/AUD/2D/6M/8Y
+ IR_SWAP/RATE/AUD/2D/6M/9Y
+ IR_SWAP/RATE/AUD/2D/6M/10Y
+ IR_SWAP/RATE/AUD/2D/6M/12Y
+ IR_SWAP/RATE/AUD/2D/6M/15Y
+ IR_SWAP/RATE/AUD/2D/6M/20Y
+ IR_SWAP/RATE/AUD/2D/6M/25Y
+ IR_SWAP/RATE/AUD/2D/6M/30Y
+
+ AUD-6M-SWAP-CONVENTIONS
+ AUD6M
+
+
+
+
+ AUD-IN-EUR
+ AUD collateralized in EUR discount curve
+ AUD
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/AUD/1D
+ FXFWD/RATE/EUR/AUD/1W
+ FXFWD/RATE/EUR/AUD/2W
+ FXFWD/RATE/EUR/AUD/3W
+ FXFWD/RATE/EUR/AUD/1M
+ FXFWD/RATE/EUR/AUD/2M
+ FXFWD/RATE/EUR/AUD/3M
+ FXFWD/RATE/EUR/AUD/4M
+ FXFWD/RATE/EUR/AUD/5M
+ FXFWD/RATE/EUR/AUD/6M
+ FXFWD/RATE/EUR/AUD/7M
+ FXFWD/RATE/EUR/AUD/8M
+ FXFWD/RATE/EUR/AUD/9M
+ FXFWD/RATE/EUR/AUD/10M
+ FXFWD/RATE/EUR/AUD/11M
+ FXFWD/RATE/EUR/AUD/1Y
+
+ EUR-AUD-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/AUD
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/AUD/3M/20Y
+
+ EUR-AUD-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/AUD
+ AUD3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ CAD3M
+
+ CAD
+
+
+
+ Deposit
+
+ MM/RATE/CAD/2D/3M
+
+ CAD-DEPOSIT
+ CAD3M
+
+
+ Swap
+
+ IR_SWAP/RATE/CAD/2D/3M/1Y
+
+ CAD-3M-SWAP-CONVENTIONS-1Y
+ CAD3M
+
+
+ Swap
+
+ IR_SWAP/RATE/CAD/2D/3M/2Y
+ IR_SWAP/RATE/CAD/2D/3M/3Y
+ IR_SWAP/RATE/CAD/2D/3M/4Y
+ IR_SWAP/RATE/CAD/2D/3M/5Y
+ IR_SWAP/RATE/CAD/2D/3M/6Y
+ IR_SWAP/RATE/CAD/2D/3M/7Y
+ IR_SWAP/RATE/CAD/2D/3M/8Y
+ IR_SWAP/RATE/CAD/2D/3M/9Y
+ IR_SWAP/RATE/CAD/2D/3M/10Y
+ IR_SWAP/RATE/CAD/2D/3M/15Y
+ IR_SWAP/RATE/CAD/2D/3M/20Y
+ IR_SWAP/RATE/CAD/2D/3M/25Y
+ IR_SWAP/RATE/CAD/2D/3M/30Y
+
+ CAD-3M-SWAP-CONVENTIONS
+ CAD3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ CAD-IN-EUR
+ CAD collateralized in EUR discount curve
+ CAD
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/CAD/1D
+ FXFWD/RATE/EUR/CAD/1W
+ FXFWD/RATE/EUR/CAD/2W
+ FXFWD/RATE/EUR/CAD/3W
+ FXFWD/RATE/EUR/CAD/1M
+ FXFWD/RATE/EUR/CAD/2M
+ FXFWD/RATE/EUR/CAD/3M
+ FXFWD/RATE/EUR/CAD/4M
+ FXFWD/RATE/EUR/CAD/5M
+ FXFWD/RATE/EUR/CAD/6M
+ FXFWD/RATE/EUR/CAD/7M
+ FXFWD/RATE/EUR/CAD/8M
+ FXFWD/RATE/EUR/CAD/9M
+ FXFWD/RATE/EUR/CAD/10M
+ FXFWD/RATE/EUR/CAD/11M
+ FXFWD/RATE/EUR/CAD/1Y
+
+ EUR-CAD-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/CAD
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CAD/3M/20Y
+
+ EUR-CAD-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/CAD
+ CAD3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ CHF1D
+ CHF discount curve bootstrapped from TOIS swap rates
+ CHF
+ CHF1D
+
+
+ Deposit
+
+ MM/RATE/CHF/0D/1D
+
+ CHF-TOIS-CONVENTIONS
+
+
+ OIS
+
+ IR_SWAP/RATE/CHF/2D/1D/1M
+ IR_SWAP/RATE/CHF/2D/1D/2M
+ IR_SWAP/RATE/CHF/2D/1D/3M
+ IR_SWAP/RATE/CHF/2D/1D/6M
+ IR_SWAP/RATE/CHF/2D/1D/9M
+ IR_SWAP/RATE/CHF/2D/1D/1Y
+ IR_SWAP/RATE/CHF/2D/1D/2Y
+ IR_SWAP/RATE/CHF/2D/1D/3Y
+ IR_SWAP/RATE/CHF/2D/1D/4Y
+ IR_SWAP/RATE/CHF/2D/1D/5Y
+ IR_SWAP/RATE/CHF/2D/1D/6Y
+ IR_SWAP/RATE/CHF/2D/1D/7Y
+ IR_SWAP/RATE/CHF/2D/1D/8Y
+ IR_SWAP/RATE/CHF/2D/1D/9Y
+ IR_SWAP/RATE/CHF/2D/1D/10Y
+ IR_SWAP/RATE/CHF/2D/1D/12Y
+ IR_SWAP/RATE/CHF/2D/1D/15Y
+ IR_SWAP/RATE/CHF/2D/1D/20Y
+ IR_SWAP/RATE/CHF/2D/1D/25Y
+ IR_SWAP/RATE/CHF/2D/1D/30Y
+
+
+ CHF-OIS-CONVENTIONS
+
+
+ Discount
+ LogLinear
+ A365
+ 0.000000000001
+
+
+ CHF3M
+
+ CHF
+
+
+
+ Deposit
+
+ MM/RATE/CHF/2D/3M
+
+ CHF-LIBOR-CONVENTIONS
+ CHF3M
+
+
+ Tenor Basis Swap
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/12Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/25Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/CHF/30Y
+
+ CHF-LIBOR-3M-6M-BASIS-CONVENTIONS
+ CHF6M
+ CHF3M
+
+
+
+
+ CHF6M
+
+ CHF
+
+
+
+ Deposit
+
+ MM/RATE/CHF/2D/6M
+
+ CHF-LIBOR-CONVENTIONS
+ CHF6M
+
+
+ Swap
+
+ IR_SWAP/RATE/CHF/2D/6M/1Y
+ IR_SWAP/RATE/CHF/2D/6M/2Y
+ IR_SWAP/RATE/CHF/2D/6M/3Y
+ IR_SWAP/RATE/CHF/2D/6M/4Y
+ IR_SWAP/RATE/CHF/2D/6M/5Y
+ IR_SWAP/RATE/CHF/2D/6M/6Y
+ IR_SWAP/RATE/CHF/2D/6M/7Y
+ IR_SWAP/RATE/CHF/2D/6M/8Y
+ IR_SWAP/RATE/CHF/2D/6M/9Y
+ IR_SWAP/RATE/CHF/2D/6M/10Y
+ IR_SWAP/RATE/CHF/2D/6M/12Y
+ IR_SWAP/RATE/CHF/2D/6M/15Y
+ IR_SWAP/RATE/CHF/2D/6M/20Y
+ IR_SWAP/RATE/CHF/2D/6M/25Y
+ IR_SWAP/RATE/CHF/2D/6M/30Y
+
+ CHF-6M-SWAP-CONVENTIONS
+ CHF6M
+
+
+
+
+ CHF-IN-EUR
+ CHF collateralized in EUR discount curve
+ CHF
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/CHF/1D
+ FXFWD/RATE/EUR/CHF/1W
+ FXFWD/RATE/EUR/CHF/2W
+ FXFWD/RATE/EUR/CHF/3W
+ FXFWD/RATE/EUR/CHF/1M
+ FXFWD/RATE/EUR/CHF/2M
+ FXFWD/RATE/EUR/CHF/3M
+ FXFWD/RATE/EUR/CHF/4M
+ FXFWD/RATE/EUR/CHF/5M
+ FXFWD/RATE/EUR/CHF/6M
+ FXFWD/RATE/EUR/CHF/7M
+ FXFWD/RATE/EUR/CHF/8M
+ FXFWD/RATE/EUR/CHF/9M
+ FXFWD/RATE/EUR/CHF/10M
+ FXFWD/RATE/EUR/CHF/11M
+ FXFWD/RATE/EUR/CHF/1Y
+
+ EUR-CHF-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/CHF
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/CHF/3M/20Y
+
+ EUR-CHF-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/CHF
+ CHF3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+
+ DKK3M
+
+ DKK
+
+
+
+ Deposit
+
+ MM/RATE/DKK/2D/3M
+
+ DKK-DEPOSIT
+ DKK3M
+
+
+ Tenor Basis Two Swaps
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/6Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/8Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/9Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/DKK/30Y
+
+ DKK-CIBOR-3M-6M-BASIS-CONVENTIONS
+ DKK6M
+ DKK3M
+
+
+
+
+ DKK6M
+
+ DKK
+
+
+
+ Deposit
+
+ MM/RATE/DKK/2D/6M
+
+ DKK-DEPOSIT
+ DKK6M
+
+
+ Swap
+
+ IR_SWAP/RATE/DKK/2D/6M/1Y
+ IR_SWAP/RATE/DKK/2D/6M/2Y
+ IR_SWAP/RATE/DKK/2D/6M/3Y
+ IR_SWAP/RATE/DKK/2D/6M/4Y
+ IR_SWAP/RATE/DKK/2D/6M/5Y
+ IR_SWAP/RATE/DKK/2D/6M/6Y
+ IR_SWAP/RATE/DKK/2D/6M/7Y
+ IR_SWAP/RATE/DKK/2D/6M/8Y
+ IR_SWAP/RATE/DKK/2D/6M/9Y
+ IR_SWAP/RATE/DKK/2D/6M/10Y
+ IR_SWAP/RATE/DKK/2D/6M/12Y
+ IR_SWAP/RATE/DKK/2D/6M/15Y
+ IR_SWAP/RATE/DKK/2D/6M/20Y
+ IR_SWAP/RATE/DKK/2D/6M/25Y
+ IR_SWAP/RATE/DKK/2D/6M/30Y
+
+ DKK-6M-SWAP-CONVENTIONS
+ DKK6M
+
+
+
+
+ DKK-IN-EUR
+ DKK collateralized in EUR discount curve
+ DKK
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/DKK/1D
+ FXFWD/RATE/EUR/DKK/1W
+ FXFWD/RATE/EUR/DKK/2W
+ FXFWD/RATE/EUR/DKK/3W
+ FXFWD/RATE/EUR/DKK/1M
+ FXFWD/RATE/EUR/DKK/2M
+ FXFWD/RATE/EUR/DKK/3M
+ FXFWD/RATE/EUR/DKK/4M
+ FXFWD/RATE/EUR/DKK/5M
+ FXFWD/RATE/EUR/DKK/6M
+ FXFWD/RATE/EUR/DKK/7M
+ FXFWD/RATE/EUR/DKK/8M
+ FXFWD/RATE/EUR/DKK/9M
+ FXFWD/RATE/EUR/DKK/10M
+ FXFWD/RATE/EUR/DKK/11M
+ FXFWD/RATE/EUR/DKK/1Y
+
+ EUR-DKK-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/DKK
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/DKK/3M/20Y
+
+ EUR-DKK-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/DKK
+ DKK3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+
+ EUR3M
+
+ EUR
+ EUR1D
+
+
+ Deposit
+
+ MM/RATE/EUR/2D/3M
+
+ EUR-EURIBOR-CONVENTIONS
+ EUR3M
+
+
+ Tenor Basis Two Swaps
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/6Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/8Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/9Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/12Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/25Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/30Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/40Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/EUR/50Y
+
+ EUR-EURIBOR-3M-6M-BASIS-CONVENTIONS
+ EUR6M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ EUR6M
+
+ EUR
+ EUR1D
+
+
+ Deposit
+
+ MM/RATE/EUR/2D/6M
+
+ EUR-EURIBOR-CONVENTIONS
+ EUR6M
+
+
+ FRA
+
+ FRA/RATE/EUR/1M/6M
+ FRA/RATE/EUR/2M/6M
+ FRA/RATE/EUR/3M/6M
+ FRA/RATE/EUR/4M/6M
+ FRA/RATE/EUR/5M/6M
+ FRA/RATE/EUR/6M/6M
+ FRA/RATE/EUR/7M/6M
+ FRA/RATE/EUR/8M/6M
+ FRA/RATE/EUR/9M/6M
+ FRA/RATE/EUR/10M/6M
+ FRA/RATE/EUR/11M/6M
+ FRA/RATE/EUR/1Y/6M
+
+ EUR-6M-FRA-CONVENTIONS
+ EUR6M
+
+
+ Swap
+
+ IR_SWAP/RATE/EUR/2D/6M/2Y
+ IR_SWAP/RATE/EUR/2D/6M/3Y
+ IR_SWAP/RATE/EUR/2D/6M/4Y
+ IR_SWAP/RATE/EUR/2D/6M/5Y
+ IR_SWAP/RATE/EUR/2D/6M/7Y
+ IR_SWAP/RATE/EUR/2D/6M/10Y
+ IR_SWAP/RATE/EUR/2D/6M/12Y
+ IR_SWAP/RATE/EUR/2D/6M/15Y
+ IR_SWAP/RATE/EUR/2D/6M/20Y
+ IR_SWAP/RATE/EUR/2D/6M/25Y
+ IR_SWAP/RATE/EUR/2D/6M/30Y
+ IR_SWAP/RATE/EUR/2D/6M/50Y
+
+ EUR-6M-SWAP-CONVENTIONS
+ EUR6M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ EUR12M
+
+ EUR
+ EUR1D
+
+
+ Deposit
+
+ MM/RATE/EUR/2D/1Y
+
+ EUR-EURIBOR-CONVENTIONS
+ EUR12M
+
+
+ Tenor Basis Two Swaps
+
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/2Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/3Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/4Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/5Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/6Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/7Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/8Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/9Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/10Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/12Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/15Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/20Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/25Y
+ BASIS_SWAP/BASIS_SPREAD/12M/6M/EUR/30Y
+
+ EUR-EURIBOR-6M-12M-BASIS-CONVENTIONS
+ EUR12M
+ EUR6M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ EUR1D
+ EUR discount curve bootstrapped from EONIA swap rates
+ EUR
+
+
+
+ Deposit
+
+ MM/RATE/EUR/0D/1D
+
+ EUR-EONIA-CONVENTIONS
+
+
+ OIS
+
+ IR_SWAP/RATE/EUR/2D/1D/1M
+ IR_SWAP/RATE/EUR/2D/1D/2M
+ IR_SWAP/RATE/EUR/2D/1D/3M
+ IR_SWAP/RATE/EUR/2D/1D/6M
+ IR_SWAP/RATE/EUR/2D/1D/1Y
+ IR_SWAP/RATE/EUR/2D/1D/2Y
+ IR_SWAP/RATE/EUR/2D/1D/3Y
+ IR_SWAP/RATE/EUR/2D/1D/4Y
+ IR_SWAP/RATE/EUR/2D/1D/5Y
+ IR_SWAP/RATE/EUR/2D/1D/6Y
+ IR_SWAP/RATE/EUR/2D/1D/7Y
+ IR_SWAP/RATE/EUR/2D/1D/8Y
+ IR_SWAP/RATE/EUR/2D/1D/9Y
+ IR_SWAP/RATE/EUR/2D/1D/10Y
+ IR_SWAP/RATE/EUR/2D/1D/12Y
+ IR_SWAP/RATE/EUR/2D/1D/15Y
+ IR_SWAP/RATE/EUR/2D/1D/20Y
+ IR_SWAP/RATE/EUR/2D/1D/25Y
+ IR_SWAP/RATE/EUR/2D/1D/30Y
+
+ EUR-OIS-CONVENTIONS
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+
+ GBP1D
+
+ GBP
+ GBP1D
+
+
+ OIS
+
+ IR_SWAP/RATE/GBP/0D/1D/1M
+ IR_SWAP/RATE/GBP/0D/1D/2M
+ IR_SWAP/RATE/GBP/0D/1D/3M
+ IR_SWAP/RATE/GBP/0D/1D/6M
+ IR_SWAP/RATE/GBP/0D/1D/9M
+ IR_SWAP/RATE/GBP/0D/1D/1Y
+ IR_SWAP/RATE/GBP/0D/1D/2Y
+ IR_SWAP/RATE/GBP/0D/1D/3Y
+ IR_SWAP/RATE/GBP/0D/1D/4Y
+ IR_SWAP/RATE/GBP/0D/1D/5Y
+ IR_SWAP/RATE/GBP/0D/1D/6Y
+ IR_SWAP/RATE/GBP/0D/1D/7Y
+ IR_SWAP/RATE/GBP/0D/1D/8Y
+ IR_SWAP/RATE/GBP/0D/1D/9Y
+ IR_SWAP/RATE/GBP/0D/1D/10Y
+ IR_SWAP/RATE/GBP/0D/1D/12Y
+ IR_SWAP/RATE/GBP/0D/1D/15Y
+ IR_SWAP/RATE/GBP/0D/1D/20Y
+ IR_SWAP/RATE/GBP/0D/1D/25Y
+ IR_SWAP/RATE/GBP/0D/1D/30Y
+
+
+
+
+ GBP-OIS-CONVENTIONS
+ GBP1D
+
+
+
+
+ GBP3M
+
+ GBP
+
+
+
+ Deposit
+
+ MM/RATE/GBP/0D/3M
+
+ GBP-DEPOSIT
+ GBP3M
+
+
+ Tenor Basis Swap
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/12Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/30Y
+
+ GBP-LIBOR-3M-6M-BASIS-CONVENTIONS
+ GBP6M
+ GBP3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ GBP6M
+
+ GBP
+
+
+
+ Deposit
+
+ MM/RATE/GBP/0D/6M
+
+ GBP-DEPOSIT
+ GBP6M
+
+
+ Swap
+
+ IR_SWAP/RATE/GBP/0D/6M/1Y
+ IR_SWAP/RATE/GBP/0D/6M/2Y
+ IR_SWAP/RATE/GBP/0D/6M/3Y
+ IR_SWAP/RATE/GBP/0D/6M/4Y
+ IR_SWAP/RATE/GBP/0D/6M/5Y
+ IR_SWAP/RATE/GBP/0D/6M/6Y
+ IR_SWAP/RATE/GBP/0D/6M/7Y
+ IR_SWAP/RATE/GBP/0D/6M/8Y
+ IR_SWAP/RATE/GBP/0D/6M/9Y
+ IR_SWAP/RATE/GBP/0D/6M/10Y
+ IR_SWAP/RATE/GBP/0D/6M/12Y
+ IR_SWAP/RATE/GBP/0D/6M/15Y
+ IR_SWAP/RATE/GBP/0D/6M/20Y
+ IR_SWAP/RATE/GBP/0D/6M/25Y
+ IR_SWAP/RATE/GBP/0D/6M/30Y
+
+ GBP-6M-SWAP-CONVENTIONS
+ GBP6M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ GBP-IN-EUR
+ GBP collateralized in EUR discount curve
+ GBP
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/GBP/1D
+ FXFWD/RATE/EUR/GBP/1W
+ FXFWD/RATE/EUR/GBP/2W
+ FXFWD/RATE/EUR/GBP/3W
+ FXFWD/RATE/EUR/GBP/1M
+ FXFWD/RATE/EUR/GBP/2M
+ FXFWD/RATE/EUR/GBP/3M
+ FXFWD/RATE/EUR/GBP/4M
+ FXFWD/RATE/EUR/GBP/5M
+ FXFWD/RATE/EUR/GBP/6M
+ FXFWD/RATE/EUR/GBP/7M
+ FXFWD/RATE/EUR/GBP/8M
+ FXFWD/RATE/EUR/GBP/9M
+ FXFWD/RATE/EUR/GBP/10M
+ FXFWD/RATE/EUR/GBP/11M
+ FXFWD/RATE/EUR/GBP/1Y
+
+ EUR-GBP-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/GBP
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/GBP/3M/20Y
+
+ EUR-GBP-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/GBP
+ GBP3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ JPY1D
+ JPY discount curve bootstrapped from MUTAN swap rates
+ JPY
+ JPY1D
+
+
+ OIS
+
+ IR_SWAP/RATE/JPY/2D/1D/1M
+ IR_SWAP/RATE/JPY/2D/1D/2M
+ IR_SWAP/RATE/JPY/2D/1D/3M
+ IR_SWAP/RATE/JPY/2D/1D/6M
+ IR_SWAP/RATE/JPY/2D/1D/9M
+ IR_SWAP/RATE/JPY/2D/1D/1Y
+ IR_SWAP/RATE/JPY/2D/1D/2Y
+ IR_SWAP/RATE/JPY/2D/1D/3Y
+ IR_SWAP/RATE/JPY/2D/1D/4Y
+ IR_SWAP/RATE/JPY/2D/1D/5Y
+ IR_SWAP/RATE/JPY/2D/1D/6Y
+ IR_SWAP/RATE/JPY/2D/1D/7Y
+ IR_SWAP/RATE/JPY/2D/1D/8Y
+ IR_SWAP/RATE/JPY/2D/1D/9Y
+ IR_SWAP/RATE/JPY/2D/1D/10Y
+ IR_SWAP/RATE/JPY/2D/1D/12Y
+ IR_SWAP/RATE/JPY/2D/1D/15Y
+ IR_SWAP/RATE/JPY/2D/1D/20Y
+ IR_SWAP/RATE/JPY/2D/1D/25Y
+ IR_SWAP/RATE/JPY/2D/1D/30Y
+ IR_SWAP/RATE/JPY/2D/1D/40Y
+
+ JPY-OIS-CONVENTIONS
+
+
+ Discount
+ LogLinear
+ A365
+ 0.000000000001
+
+
+ JPY3M
+
+ JPY
+
+
+
+ Deposit
+
+ MM/RATE/JPY/2D/3M
+
+ JPY-LIBOR-CONVENTIONS
+ JPY3M
+
+
+ Tenor Basis Swap
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/6Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/8Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/9Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/JPY/30Y
+
+ JPY-LIBOR-3M-6M-BASIS-CONVENTIONS
+ JPY6M
+ JPY3M
+
+
+
+
+ JPY6M
+
+ JPY
+
+
+
+ Deposit
+
+ MM/RATE/JPY/0D/1D
+
+ JPY-TIBOR-CONVENTIONS
+ JPY6M
+
+
+ Deposit
+
+ MM/RATE/JPY/2D/6M
+
+ JPY-LIBOR-CONVENTIONS
+ JPY6M
+
+
+ Swap
+
+ IR_SWAP/RATE/JPY/2D/6M/1Y
+ IR_SWAP/RATE/JPY/2D/6M/2Y
+ IR_SWAP/RATE/JPY/2D/6M/3Y
+ IR_SWAP/RATE/JPY/2D/6M/4Y
+ IR_SWAP/RATE/JPY/2D/6M/5Y
+ IR_SWAP/RATE/JPY/2D/6M/6Y
+ IR_SWAP/RATE/JPY/2D/6M/7Y
+ IR_SWAP/RATE/JPY/2D/6M/8Y
+ IR_SWAP/RATE/JPY/2D/6M/9Y
+ IR_SWAP/RATE/JPY/2D/6M/10Y
+ IR_SWAP/RATE/JPY/2D/6M/12Y
+ IR_SWAP/RATE/JPY/2D/6M/15Y
+ IR_SWAP/RATE/JPY/2D/6M/20Y
+ IR_SWAP/RATE/JPY/2D/6M/25Y
+ IR_SWAP/RATE/JPY/2D/6M/30Y
+
+ JPY-LIBOR-6M-SWAP-CONVENTIONS
+ JPY6M
+
+
+
+
+ JPY-IN-EUR
+ JPY collateralized in EUR discount curve
+ JPY
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/JPY/1D
+ FXFWD/RATE/EUR/JPY/1W
+ FXFWD/RATE/EUR/JPY/2W
+ FXFWD/RATE/EUR/JPY/3W
+ FXFWD/RATE/EUR/JPY/1M
+ FXFWD/RATE/EUR/JPY/2M
+ FXFWD/RATE/EUR/JPY/3M
+ FXFWD/RATE/EUR/JPY/4M
+ FXFWD/RATE/EUR/JPY/5M
+ FXFWD/RATE/EUR/JPY/6M
+ FXFWD/RATE/EUR/JPY/7M
+ FXFWD/RATE/EUR/JPY/8M
+ FXFWD/RATE/EUR/JPY/9M
+ FXFWD/RATE/EUR/JPY/10M
+ FXFWD/RATE/EUR/JPY/11M
+ FXFWD/RATE/EUR/JPY/1Y
+
+ EUR-JPY-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/JPY
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/JPY/3M/20Y
+
+ EUR-JPY-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/JPY
+ JPY3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ NOK3M
+
+ NOK
+
+
+
+ Deposit
+
+ MM/RATE/NOK/2D/3M
+
+ NOK-DEPOSIT
+ NOK3M
+
+
+ Tenor Basis Two Swaps
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/6Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/8Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/9Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/15Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/NOK/30Y
+
+ NOK-NIBOR-3M-6M-BASIS-CONVENTIONS
+ NOK6M
+ NOK3M
+
+
+
+
+ NOK6M
+
+ NOK
+
+
+
+ Deposit
+
+ MM/RATE/NOK/2D/6M
+
+ NOK-DEPOSIT
+ NOK6M
+
+
+ Swap
+
+ IR_SWAP/RATE/NOK/2D/6M/1Y
+ IR_SWAP/RATE/NOK/2D/6M/2Y
+ IR_SWAP/RATE/NOK/2D/6M/3Y
+ IR_SWAP/RATE/NOK/2D/6M/4Y
+ IR_SWAP/RATE/NOK/2D/6M/5Y
+ IR_SWAP/RATE/NOK/2D/6M/7Y
+ IR_SWAP/RATE/NOK/2D/6M/10Y
+ IR_SWAP/RATE/NOK/2D/6M/12Y
+ IR_SWAP/RATE/NOK/2D/6M/15Y
+ IR_SWAP/RATE/NOK/2D/6M/20Y
+ IR_SWAP/RATE/NOK/2D/6M/25Y
+ IR_SWAP/RATE/NOK/2D/6M/30Y
+
+ NOK-6M-SWAP-CONVENTIONS
+ NOK6M
+
+
+
+
+ NOK-IN-EUR
+ NOK collateralized in EUR discount curve
+ NOK
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/NOK/1D
+ FXFWD/RATE/EUR/NOK/1W
+ FXFWD/RATE/EUR/NOK/2W
+ FXFWD/RATE/EUR/NOK/3W
+ FXFWD/RATE/EUR/NOK/1M
+ FXFWD/RATE/EUR/NOK/2M
+ FXFWD/RATE/EUR/NOK/3M
+ FXFWD/RATE/EUR/NOK/4M
+ FXFWD/RATE/EUR/NOK/5M
+ FXFWD/RATE/EUR/NOK/6M
+ FXFWD/RATE/EUR/NOK/7M
+ FXFWD/RATE/EUR/NOK/8M
+ FXFWD/RATE/EUR/NOK/9M
+ FXFWD/RATE/EUR/NOK/10M
+ FXFWD/RATE/EUR/NOK/11M
+ FXFWD/RATE/EUR/NOK/1Y
+
+ EUR-NOK-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/NOK
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NOK/3M/15Y
+
+ EUR-NOK-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/NOK
+ NOK3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ NZD3M
+
+ NZD
+
+
+
+ Deposit
+
+ MM/RATE/NZD/2D/3M
+
+ NZD-DEPOSIT
+ NZD3M
+
+
+ Swap
+
+ IR_SWAP/RATE/NZD/2D/3M/1Y
+ IR_SWAP/RATE/NZD/2D/3M/2Y
+ IR_SWAP/RATE/NZD/2D/3M/3Y
+ IR_SWAP/RATE/NZD/2D/3M/4Y
+ IR_SWAP/RATE/NZD/2D/3M/5Y
+ IR_SWAP/RATE/NZD/2D/3M/7Y
+ IR_SWAP/RATE/NZD/2D/3M/10Y
+
+ NZD-3M-SWAP
+ NZD3M
+
+
+
+
+ NZD-IN-EUR
+ NZD collateralized in EUR discount curve
+ NZD
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/NZD/1D
+ FXFWD/RATE/EUR/NZD/1W
+ FXFWD/RATE/EUR/NZD/2W
+ FXFWD/RATE/EUR/NZD/3W
+ FXFWD/RATE/EUR/NZD/1M
+ FXFWD/RATE/EUR/NZD/2M
+ FXFWD/RATE/EUR/NZD/3M
+ FXFWD/RATE/EUR/NZD/4M
+ FXFWD/RATE/EUR/NZD/5M
+ FXFWD/RATE/EUR/NZD/6M
+ FXFWD/RATE/EUR/NZD/7M
+ FXFWD/RATE/EUR/NZD/8M
+ FXFWD/RATE/EUR/NZD/9M
+ FXFWD/RATE/EUR/NZD/10M
+ FXFWD/RATE/EUR/NZD/11M
+ FXFWD/RATE/EUR/NZD/1Y
+
+ EUR-NZD-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/NZD
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/NZD/3M/10Y
+
+ EUR-NZD-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/NZD
+ NZD3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ SEK3M
+
+ SEK
+
+
+
+ Deposit
+
+ MM/RATE/SEK/2D/3M
+
+ SEK-STIBOR-CONVENTIONS
+ SEK3M
+
+
+ Swap
+
+ IR_SWAP/RATE/SEK/2D/3M/1Y
+ IR_SWAP/RATE/SEK/2D/3M/2Y
+ IR_SWAP/RATE/SEK/2D/3M/3Y
+ IR_SWAP/RATE/SEK/2D/3M/4Y
+ IR_SWAP/RATE/SEK/2D/3M/5Y
+ IR_SWAP/RATE/SEK/2D/3M/6Y
+ IR_SWAP/RATE/SEK/2D/3M/7Y
+ IR_SWAP/RATE/SEK/2D/3M/8Y
+ IR_SWAP/RATE/SEK/2D/3M/9Y
+ IR_SWAP/RATE/SEK/2D/3M/10Y
+ IR_SWAP/RATE/SEK/2D/3M/12Y
+ IR_SWAP/RATE/SEK/2D/3M/15Y
+ IR_SWAP/RATE/SEK/2D/3M/20Y
+ IR_SWAP/RATE/SEK/2D/3M/25Y
+ IR_SWAP/RATE/SEK/2D/3M/30Y
+
+ SEK-3M-SWAP-CONVENTIONS
+ SEK3M
+
+
+
+
+ SEK6M
+
+ SEK
+
+
+
+ Deposit
+
+ MM/RATE/SEK/2D/6M
+
+ SEK-DEPOSIT
+ SEK6M
+
+
+ Tenor Basis Two Swaps
+
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/1Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/2Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/3Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/4Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/5Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/6Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/7Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/8Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/9Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/10Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/20Y
+ BASIS_SWAP/BASIS_SPREAD/6M/3M/SEK/30Y
+
+ SEK-STIBOR-3M-6M-BASIS-CONVENTIONS
+ SEK6M
+ SEK3M
+
+
+
+
+ SEK-IN-EUR
+ SEK collateralized in EUR discount curve
+ SEK
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/SEK/1D
+ FXFWD/RATE/EUR/SEK/1W
+ FXFWD/RATE/EUR/SEK/2W
+ FXFWD/RATE/EUR/SEK/3W
+ FXFWD/RATE/EUR/SEK/1M
+ FXFWD/RATE/EUR/SEK/2M
+ FXFWD/RATE/EUR/SEK/3M
+ FXFWD/RATE/EUR/SEK/4M
+ FXFWD/RATE/EUR/SEK/5M
+ FXFWD/RATE/EUR/SEK/6M
+ FXFWD/RATE/EUR/SEK/7M
+ FXFWD/RATE/EUR/SEK/8M
+ FXFWD/RATE/EUR/SEK/9M
+ FXFWD/RATE/EUR/SEK/10M
+ FXFWD/RATE/EUR/SEK/11M
+ FXFWD/RATE/EUR/SEK/1Y
+
+ EUR-SEK-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/SEK
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/EUR/3M/SEK/3M/20Y
+
+ EUR-SEK-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/SEK
+ SEK3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+ USD1D
+ USD discount curve bootstrapped from FED FUNDS swap rates
+ USD
+
+
+
+ Deposit
+
+ MM/RATE/USD/0D/1D
+
+ USD-FED-FUNDS-CONVENTIONS
+
+
+ OIS
+
+ IR_SWAP/RATE/USD/2D/1D/1M
+ IR_SWAP/RATE/USD/2D/1D/3M
+ IR_SWAP/RATE/USD/2D/1D/6M
+ IR_SWAP/RATE/USD/2D/1D/9M
+ IR_SWAP/RATE/USD/2D/1D/1Y
+ IR_SWAP/RATE/USD/2D/1D/2Y
+ IR_SWAP/RATE/USD/2D/1D/3Y
+ IR_SWAP/RATE/USD/2D/1D/4Y
+ IR_SWAP/RATE/USD/2D/1D/5Y
+ IR_SWAP/RATE/USD/2D/1D/6Y
+ IR_SWAP/RATE/USD/2D/1D/7Y
+ IR_SWAP/RATE/USD/2D/1D/8Y
+ IR_SWAP/RATE/USD/2D/1D/9Y
+ IR_SWAP/RATE/USD/2D/1D/10Y
+ IR_SWAP/RATE/USD/2D/1D/12Y
+ IR_SWAP/RATE/USD/2D/1D/15Y
+ IR_SWAP/RATE/USD/2D/1D/20Y
+ IR_SWAP/RATE/USD/2D/1D/25Y
+ IR_SWAP/RATE/USD/2D/1D/30Y
+
+
+ USD-OIS-CONVENTIONS
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+ USD3M
+
+ USD
+
+
+
+ Deposit
+
+ MM/RATE/USD/2D/3M
+
+ USD-LIBOR-CONVENTIONS
+ USD3M
+
+
+ Swap
+
+ IR_SWAP/RATE/USD/2D/3M/1Y
+ IR_SWAP/RATE/USD/2D/3M/2Y
+ IR_SWAP/RATE/USD/2D/3M/3Y
+ IR_SWAP/RATE/USD/2D/3M/4Y
+ IR_SWAP/RATE/USD/2D/3M/5Y
+ IR_SWAP/RATE/USD/2D/3M/6Y
+ IR_SWAP/RATE/USD/2D/3M/7Y
+ IR_SWAP/RATE/USD/2D/3M/8Y
+ IR_SWAP/RATE/USD/2D/3M/9Y
+ IR_SWAP/RATE/USD/2D/3M/10Y
+ IR_SWAP/RATE/USD/2D/3M/12Y
+ IR_SWAP/RATE/USD/2D/3M/15Y
+ IR_SWAP/RATE/USD/2D/3M/20Y
+ IR_SWAP/RATE/USD/2D/3M/25Y
+ IR_SWAP/RATE/USD/2D/3M/30Y
+
+ USD-3M-SWAP-CONVENTIONS
+ USD3M
+
+
+
+
+ USD-IN-EUR
+ USD collateralized in EUR discount curve
+ USD
+
+
+
+ FX Forward
+
+ FXFWD/RATE/EUR/USD/1D
+ FXFWD/RATE/EUR/USD/1W
+ FXFWD/RATE/EUR/USD/2W
+ FXFWD/RATE/EUR/USD/3W
+ FXFWD/RATE/EUR/USD/1M
+ FXFWD/RATE/EUR/USD/2M
+ FXFWD/RATE/EUR/USD/3M
+ FXFWD/RATE/EUR/USD/4M
+ FXFWD/RATE/EUR/USD/5M
+ FXFWD/RATE/EUR/USD/6M
+ FXFWD/RATE/EUR/USD/7M
+ FXFWD/RATE/EUR/USD/8M
+ FXFWD/RATE/EUR/USD/9M
+ FXFWD/RATE/EUR/USD/10M
+ FXFWD/RATE/EUR/USD/11M
+ FXFWD/RATE/EUR/USD/1Y
+
+ EUR-USD-FX-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/USD
+
+
+ Cross Currency Basis Swap
+
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/2Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/3Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/4Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/5Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/7Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/10Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/15Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/20Y
+ CC_BASIS_SWAP/BASIS_SPREAD/USD/3M/EUR/3M/30Y
+
+ EUR-USD-XCCY-BASIS-CONVENTIONS
+ EUR1D
+ FX/RATE/EUR/USD
+ USD3M
+ EUR3M
+
+
+ Discount
+ LogLinear
+ A365
+ 0.00000000000100
+
+
+
+
+
+ SECURITY_1
+ Security
+ BOND/YIELD_SPREAD/SECURITY_1
+ RECOVERY_RATE/RATE/SECURITY_1
+
+
+
+
+
\ No newline at end of file
diff --git a/VarInput/Input/pricingengine.xml b/VarInput/Input/pricingengine.xml
new file mode 100644
index 0000000..5e6db09
--- /dev/null
+++ b/VarInput/Input/pricingengine.xml
@@ -0,0 +1,213 @@
+
+
+ LGM
+
+ Bootstrap
+ CoterminalATM
+ 0.03
+ HullWhite
+ 0.0001
+ 0.01
+ Hagan
+
+ Grid
+
+ 10
+ 10
+ 3.0
+ 3.0
+
+
+
+ DiscountedCashflows
+
+ DiscountingRiskyBondEngine
+
+ 6M
+
+
+
+ IborCapModel
+
+ IborCapEngine
+
+
+
+ BlackOrBachelier
+
+ BlackIborCouponPricer
+
+ 1.0
+ Black76
+
+
+
+ LinearTSR
+
+ LinearTSRPricer
+
+ 3.0
+ 0.0001
+ -2.0000
+ 0.0
+ RateBound
+ 0.0000001
+ 2.0000
+ 2.0000
+ 0.01
+
+
+
+ Hagan
+
+ Numerical
+
+ 1.0
+ 0.0
+ 0.000001
+ 0.0
+ Standard
+
+
+
+ BrigoMercurio
+
+ 0.7
+ 0.8
+ 0.72
+ 0.75
+
+ Analytic
+
+ 16
+
+
+
+ ZeroVol
+
+ 0.7
+ 0.8
+ 0.72
+ 0.75
+
+ Analytic
+
+ 16
+
+
+
+ DiscountedCashflows
+
+ DiscountingCommodityForwardEngine
+
+
+
+ BlackScholes
+
+ AnalyticEuropeanEngine
+
+
+
+ DiscountedCashflows
+
+ MidPointCdsEngine
+
+
+
+ DiscountedCashflows
+
+ DiscountingCrossCurrencySwapEngine
+
+
+
+ DiscountedCashflows
+
+ DiscountingEquityForwardEngine
+
+
+
+ BlackScholesMerton
+
+ AnalyticEuropeanEngine
+
+
+
+ BlackBachelier
+
+ BlackBachelierSwaptionEngine
+
+
+
+ DiscountedCashflows
+
+ DiscountingFxForwardEngine
+
+
+
+ GarmanKohlhagen
+
+ AnalyticEuropeanEngine
+
+
+
+ DiscountedCashflows
+
+ DiscountingSwapEngineOptimised
+
+
+
+ BlackScholesMerton
+
+ ReplicatingVarianceSwapEngine
+
+ 0.05
+ 8
+ 11
+
+
+
+ YYCapModel
+
+ YYCapEngine
+
+
+
+ BrigoMercurio
+
+ ECB
+
+ MC
+
+ 1000
+ 42
+ Y
+ Y
+
+
+
+ Generic
+
+ BlackScholes
+ GaussianCam
+ USD
+ false
+ 3M(1W),1Y(1M),5Y(3M),10Y(1Y),50Y(5Y)
+ 0.01
+ 0.01
+ false
+ false
+ true
+ true
+
+ Generic
+
+ MC
+ 10000
+ 10000
+ 6
+ 24
+ false
+ 1.0
+
+
+
diff --git a/VarInput/Input/sensitivity.xml b/VarInput/Input/sensitivity.xml
new file mode 100644
index 0000000..c109407
--- /dev/null
+++ b/VarInput/Input/sensitivity.xml
@@ -0,0 +1,125 @@
+
+
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+ Absolute
+ 0.0001
+ 6M,1Y,2Y,3Y,5Y,7Y,10Y,15Y,20Y
+
+
+
+
+
+ Relative
+ 0.01
+
+
+ Relative
+ 0.01
+
+
+ Relative
+ 0.01
+
+
+ Relative
+ 0.01
+
+
+
+
+
+ Relative
+ 0.01
+ 1Y,2Y,3Y,5Y
+
+
+
+ Relative
+ 0.01
+ 1Y,2Y,3Y,5Y
+
+
+
+ Relative
+ 0.01
+ 1Y,2Y,3Y,5Y
+
+
+
+
+
+
+ Relative
+ 0.01
+ 1Y,5Y,7Y,10Y
+ 1Y,5Y,10Y
+
+
+
+
+
+
+ Absolute
+ 0.0001
+ 1Y,2Y,3Y,5Y,7Y,10Y
+ 0.01,0.02,0.03,0.04,0.05
+ EUR-EURIBOR-6M
+
+
+
+
+
+ DiscountCurve/EUR,DiscountCurve/EUR
+ IndexCurve/EUR,IndexCurve/EUR
+ DiscountCurve/EUR,IndexCurve/EUR
+
+
diff --git a/VarInput/Input/simulation.xml b/VarInput/Input/simulation.xml
new file mode 100644
index 0000000..8c68c71
--- /dev/null
+++ b/VarInput/Input/simulation.xml
@@ -0,0 +1,326 @@
+
+
+ 236,1M
+ EUR,AUD,CAD,CHF,GBP,JPY,USD
+ SobolBrownianBridge
+ 42
+ 1000
+ Steps
+ JoeKuoD7
+ A365
+
+
+ Exact
+ EUR
+
+ EUR
+ AUD
+ CAD
+ CHF
+ GBP
+ JPY
+ USD
+
+ 0.0001
+
+
+ Bootstrap
+
+ Y
+ Hagan
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
+ 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01
+
+
+ N
+ HullWhite
+ Constant
+
+ 0.030000000000
+
+
+ 1Y,2Y,4Y,6Y,8Y,10Y,12Y,14Y,16Y,18Y,19Y
+ 19Y,18Y,16Y,14Y,12Y,10Y,8Y,6Y,4Y,2Y,1Y
+
+
+ 0.000000000000
+ 1.000000000000
+
+
+
+ BestFit
+
+ Y
+ Hagan
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0, 7.0
+ 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01
+
+
+ N
+ HullWhite
+ Constant
+
+ 0.030000000000
+
+
+ 1Y,2Y,4Y,6Y,8Y,10Y,12Y,14Y,16Y,18Y,19Y
+ 19Y,18Y,16Y,14Y,12Y,10Y,8Y,6Y,4Y,2Y,1Y
+
+
+ 0.000000000000
+ 1.000000000000
+
+
+
+ BestFit
+
+ Y
+ Hagan
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0, 7.0
+ 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01
+
+
+ N
+ HullWhite
+ Constant
+
+ 0.030000000000
+
+
+ 1Y,2Y,4Y,6Y,8Y,10Y,12Y,14Y,16Y,18Y,19Y
+ 19Y,18Y,16Y,14Y,12Y,10Y,8Y,6Y,4Y,2Y,1Y
+
+
+ 0.000000000000
+ 1.000000000000
+
+
+
+
+
+ EUR
+ Bootstrap
+
+ Y
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
+ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1
+
+
+ 1Y, 2Y, 3Y, 4Y, 5Y, 7Y, 10Y
+
+
+
+ EUR
+ Bootstrap
+
+ Y
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
+ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1
+
+
+ 1Y, 2Y, 3Y, 4Y, 5Y, 7Y, 10Y
+
+
+
+ EUR
+ BestFit
+
+ Y
+ Piecewise
+ 1.0, 2.0, 3.0, 5.0, 7.0, 10.0
+ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1
+
+
+ 6M, 1Y, 2Y, 3Y, 5Y, 7Y, 10Y
+
+
+
+ EUR
+ BestFit
+
+ Y
+ Piecewise
+ 1.0,2.0,3.0,5.0,7.0
+ 0.1,0.1,0.1,0.1,0.1,0.1
+
+
+ 1Y, 2Y, 3Y, 5Y, 7Y, 10Y
+
+
+
+ EUR
+ BestFit
+
+ Y
+ Piecewise
+ 1.0, 2.0, 3.0, 5.0
+ 0.1, 0.1, 0.1, 0.1, 0.1
+
+
+ 6M, 1Y, 2Y, 3Y, 5Y
+
+
+
+ EUR
+ BestFit
+
+ Y
+ Piecewise
+ 1.0, 2.0, 3.0, 4.0, 5.0
+ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1
+
+
+ 6M, 1Y, 2Y, 3Y, 4Y, 5Y
+
+
+
+
+ 0.00000000
+ 0.00000000
+ 0.00000000
+
+
+
+ EUR
+
+ AUD
+ CAD
+ CHF
+ EUR
+ GBP
+ JPY
+ USD
+
+
+
+ 3M,6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y,12Y,15Y,20Y
+ LogLinear
+ FlatFwd
+
+
+
+ AUD-BBSW-6M
+ AUD-BBSW-3M
+ CAD-CDOR-3M
+ CHF-LIBOR-12M
+ CHF-LIBOR-6M
+ CHF-LIBOR-3M
+ EUR-ESTER
+ EUR-EONIA
+ EUR-EURIBOR-12M
+ EUR-EURIBOR-3M
+ EUR-EURIBOR-6M
+ EUR-EURIBOR-1M
+ GBP-LIBOR-6M
+ GBP-LIBOR-3M
+ JPY-LIBOR-6M
+ JPY-LIBOR-3M
+ USD-LIBOR-3M
+ USD-SOFR
+ CHF-SARON
+ GBP-SONIA
+ JPY-TONAR
+
+
+
+ EUR-CMS-10Y
+ EUR-ESTER
+
+
+ EUR-CMS-1Y
+ EUR-ESTER
+
+
+ EUR-CMS-2Y
+ EUR-ESTER
+
+
+ EUR-CMS-30Y
+ EUR-ESTER
+
+
+ GBP-CMS-1Y
+ GBP-SONIA
+
+
+ GBP-CMS-10Y
+ GBP-SONIA
+
+
+ GBP-CMS-30Y
+ GBP-SONIA
+
+
+
+ 6M,1Y,2Y
+
+
+
+ False
+ ForwardVariance
+
+ AUD
+ CAD
+ CHF
+ EUR
+ GBP
+ JPY
+ USD
+
+ 6M,1Y,2Y,3Y,5Y,10Y,12Y,15Y,20Y
+ 1Y,2Y,3Y,4Y,5Y,7Y,10Y,15Y,20Y,30Y
+
+
+ False
+ ConstantVariance
+
+ EUR
+ CHF
+
+ ACT/ACT
+ 1Y,2Y,3Y,4Y,5Y,6Y,7Y,8Y,9Y,10Y,12Y,15Y,20Y,25Y,30Y
+ -0.015,-0.0125,-0.01,-0.005,-0.0025,0.00,0.0025,0.005,0.01,0.02,0.03,0.05,0.10
+
+
+ False
+ ForwardVariance
+
+ USDJPY
+ EURCHF
+ EURGBP
+
+ 6M,1Y,2Y,3Y,4Y,5Y,7Y,10Y
+
+
+ False
+
+ EUR-CMS-2Y,EUR-EURIBOR-6M
+ EUR-CMS-2Y,EUR-EURIBOR-3M
+ EUR-CMS-10Y,EUR-EURIBOR-6M
+ EUR-CMS-10Y,EUR-EURIBOR-3M
+ EUR-CMS-10Y,EUR-CMS-2Y
+ EUR-CMS-30Y,EUR-CMS-2Y
+ EUR-CMS-30Y,EUR-CMS-10Y
+
+ 1Y,2Y
+
+
+ false
+
+ SECURITY_1
+
+
+
+ EUR
+
+
+ EUR-EONIA
+ EUR-EURIBOR-3M
+
+
+
diff --git a/VarInput/Input/todaysmarket.xml b/VarInput/Input/todaysmarket.xml
new file mode 100644
index 0000000..fd5f5cc
--- /dev/null
+++ b/VarInput/Input/todaysmarket.xml
@@ -0,0 +1,218 @@
+
+
+ xois_eur
+
+
+ xva
+ xois_eur
+ xva
+ xva
+ xva
+
+
+ xois_eur
+ xois_eur
+
+
+ default
+ xva
+ inccy_swap
+ xva
+ xva
+ xva
+
+
+
+
+
+
+ Yield/AUD/AUD6M
+ Yield/CAD/CAD3M
+ Yield/CHF/CHF6M
+ Yield/DKK/DKK6M
+ Yield/EUR/EUR6M
+ Yield/GBP/GBP6M
+ Yield/JPY/JPY6M
+ Yield/NOK/NOK6M
+ Yield/NZD/NZD3M
+ Yield/SEK/SEK3M
+ Yield/USD/USD3M
+
+
+
+ Yield/AUD/AUD-IN-EUR
+ Yield/CAD/CAD-IN-EUR
+ Yield/CHF/CHF-IN-EUR
+ Yield/DKK/DKK-IN-EUR
+ Yield/EUR/EUR1D
+ Yield/GBP/GBP-IN-EUR
+ Yield/JPY/JPY-IN-EUR
+ Yield/NOK/NOK-IN-EUR
+ Yield/NZD/NZD-IN-EUR
+ Yield/SEK/SEK-IN-EUR
+ Yield/USD/USD-IN-EUR
+
+
+ Yield/AUD/AUD6M
+ Yield/AUD/AUD3M
+ Yield/CAD/CAD3M
+ Yield/CHF/CHF3M
+ Yield/CHF/CHF6M
+ Yield/CHF/CHF6M
+ Yield/DKK/DKK3M
+ Yield/DKK/DKK6M
+ Yield/EUR/EUR12M
+ Yield/EUR/EUR1D
+ Yield/EUR/EUR1D
+ Yield/EUR/EUR3M
+ Yield/EUR/EUR3M
+ Yield/EUR/EUR6M
+ Yield/GBP/GBP3M
+ Yield/GBP/GBP6M
+ Yield/JPY/JPY3M
+ Yield/JPY/JPY6M
+ Yield/NOK/NOK3M
+ Yield/NOK/NOK6M
+ Yield/NZD/NZD3M
+ Yield/SEK/SEK3M
+ Yield/SEK/SEK6M
+ Yield/USD/USD3M
+ Yield/GBP/GBP1D
+ Yield/CHF/CHF1D
+ Yield/JPY/JPY1D
+ Yield/USD/USD1D
+
+
+ Security/SECURITY_1
+
+
+
+ AUD-BBSW-6M
+
+
+ AUD-BBSW-6M
+
+
+ CAD-CDOR-3M
+
+
+ CAD-CDOR-3M
+
+
+ DKK-CIBOR-3M
+
+
+ DKK-CIBOR-3M
+
+
+ CHF-LIBOR-6M
+
+
+ CHF-LIBOR-6M
+
+
+ EUR-EURIBOR-3M
+
+
+ EUR-EURIBOR-6M
+
+
+ EUR-EURIBOR-6M
+
+
+ EUR-EURIBOR-6M
+
+
+ EUR-EURIBOR-6M
+
+
+ EUR-EURIBOR-6M
+
+
+ EUR-EURIBOR-6M
+
+
+ GBP-LIBOR-6M
+
+
+ GBP-LIBOR-6M
+
+
+ GBP-LIBOR-6M
+
+
+ NOK-NIBOR-6M
+
+
+ NOK-NIBOR-6M
+
+
+ NZD-BKBM-3M
+
+
+ NZD-BKBM-3M
+
+
+ JPY-LIBOR-6M
+
+
+ JPY-LIBOR-6M
+
+
+ SEK-STIBOR-3M
+
+
+ SEK-STIBOR-3M
+
+
+ USD-LIBOR-3M
+
+
+ USD-LIBOR-3M
+
+
+
+
+
+
+
+ FX/EUR/AUD
+ FX/EUR/CAD
+ FX/EUR/CHF
+ FX/EUR/DKK
+ FX/EUR/GBP
+ FX/EUR/JPY
+ FX/EUR/NOK
+ FX/EUR/NZD
+ FX/EUR/SEK
+ FX/EUR/USD
+
+
+ FXVolatility/AUD/JPY/AUDJPY
+ FXVolatility/USD/JPY/USDJPY
+ FXVolatility/EUR/USD/EURUSD
+ FXVolatility/EUR/GBP/EURGBP
+ FXVolatility/EUR/CHF/EURCHF
+ FXVolatility/EUR/JPY/EURJPY
+ FXVolatility/EUR/CAD/EURCAD
+ FXVolatility/EUR/AUD/EURAUD
+
+
+ SwaptionVolatility/EUR/EUR_SW_N
+ SwaptionVolatility/AUD/AUD_SW_LN
+ SwaptionVolatility/CAD/CAD_SW_LN
+ SwaptionVolatility/CHF/CHF_SW_N
+ SwaptionVolatility/GBP/GBP_SW_N
+ SwaptionVolatility/JPY/JPY_SW_N
+ SwaptionVolatility/USD/USD_SW_N
+
+
+ CapFloorVolatility/EUR/EUR_CF_N
+ CapFloorVolatility/CHF/CHF_CF_N
+
+
+
+
+
+
+
diff --git a/VarInput/README.md b/VarInput/README.md
new file mode 100644
index 0000000..ce52cff
--- /dev/null
+++ b/VarInput/README.md
@@ -0,0 +1,32 @@
+# VarInput.py
+
+A tool to create a scenario file for historic simulation VAR and simultaneously calculate a variance covariance matrix from these scenarios, which can be used in analytic VAR calculations.
+
+Customize input files to the needed ones:
+
+`historicmarketdataFile = "Input/histmarketdata.txt"`
+`fixingdataFile = "Input/Fixingdata.txt"`
+`curveconfigFile = "Input/curveconfig.xml"`
+`conventionsFile = "Input/conventions.xml"`
+`pricingengineFile = "Input/pricingengine.xml"`
+`todaysmarketFile = "Input/todaysmarket.xml"`
+`simulationFile = "Input/simulation.xml"`
+`sensitivityFile = "Input/sensitivity.xml"`
+
+And also the output files can be customized:
+
+`outputcovarianceFile = 'covariance.csv'`
+`outputscenariosFile = 'scenarios.csv'`
+
+These settings can also be configured in a separate file called `VarInput.config` in the same folder, which is compiled/executed if it exists.
+
+Apart from the ORE config files (curveconfig, conventions, pricingengine, todaysmarket, simulation and sensitivity)
+- a historic market data file is required, which is essentially a concatenation of several ORE market data files for the required historic dates.
+- a fixing data file is needed.
+
+The sensitivity configuration is actually not required for the scenario report, it is used by the tool to derive the required differential calculation method for the input of the variance covariance calculation.
+
+The results of the first historic data are regarded as a reference for the required columns (I don't check the simulation.xml),
+if there are any missing subsequent market data, the results of the scenario report are discarded with a warning.
+
+Module requirements: numpy, pandas, lxml and ORE (tested with version 1.8.12.1)
\ No newline at end of file
diff --git a/VarInput/VarInput.py b/VarInput/VarInput.py
new file mode 100644
index 0000000..4d14ca8
--- /dev/null
+++ b/VarInput/VarInput.py
@@ -0,0 +1,216 @@
+import numpy as np
+import pandas as pd
+import os
+import ORE as ore
+from lxml import etree
+from warnings import simplefilter
+simplefilter(action="ignore", category=pd.errors.PerformanceWarning)
+
+# input files
+historicmarketdataFile = "Input/histmarketdata.txt"
+fixingdataFile = "Input/Fixingdata.txt"
+curveconfigFile = "Input/curveconfig.xml"
+conventionsFile = "Input/conventions.xml"
+pricingengineFile = "Input/pricingengine.xml"
+todaysmarketFile = "Input/todaysmarket.xml"
+simulationFile = "Input/simulation.xml"
+sensitivityFile = "Input/sensitivity.xml"
+# output files
+outputcovarianceFile = 'covariance.csv'
+outputscenariosFile = 'scenarios.csv'
+
+# override standard config with VarInput.config
+if os.path.isfile('VarInput.config'):
+ print("found VarInput.config, reading config from there")
+ with open('VarInput.config', 'r') as file:
+ config = file.read()
+ b = compile(config, 'VarInput.config', 'exec')
+ exec(b)
+
+def decodeXML(filename):
+ if not os.path.isfile(filename):
+ print("no file " + filename + " found!")
+ os._exit(1)
+ return etree.tostring(etree.parse(filename)).decode('UTF-8')
+
+def check(app):
+ errors = app.getErrors()
+ time = app.getRunTime()
+ print ("%.2f sec, %d errors" % (time, len(errors)))
+ if len(errors) > 0:
+ for e in errors:
+ print(e)
+ return False
+ else:
+ return True
+
+def ql_period_in_years(periodStr):
+ period = ore.Period(periodStr)
+ units = period.units()
+ if units == ore.Days:
+ denominator = 365
+ elif units == ore.Weeks:
+ denominator = 52
+ elif units == ore.Months:
+ denominator = 12
+ elif units == ore.Years:
+ denominator = 1
+ else:
+ print("unhandled period unit " + str(units))
+ os._exit(1)
+ return period.length() / denominator
+
+# prepare historic market data for iterative scenario analytic
+print("reading historicmarketdataFile")
+if not os.path.isfile(historicmarketdataFile):
+ print("no file " + historicmarketdataFile + " found!")
+ os._exit(1)
+df = pd.read_csv(historicmarketdataFile,sep='\t',header=None)
+df.columns = ["Date", "Name", "Value"]
+df["wholeLine"] = df["Date"].astype(str)+"\t"+df["Name"]+"\t"+df["Value"].astype(str)
+df["Date"] = pd.to_datetime(df["Date"],format="%Y%m%d")
+
+# set up ORE for running scenario analytic
+print("set up ORE for running scenario analytic")
+inputs = ore.InputParameters()
+inputs.setResultsPath(".")
+inputs.setAllFixings(True)
+inputs.setEntireMarket(True)
+inputs.setCurveConfigs(decodeXML(curveconfigFile))
+inputs.setConventions(decodeXML(conventionsFile))
+inputs.setPricingEngine(decodeXML(pricingengineFile))
+inputs.setTodaysMarketParams(decodeXML(todaysmarketFile))
+inputs.insertAnalytic("SCENARIO")
+inputs.setScenarioSimMarketParams(decodeXML(simulationFile))
+
+# get YieldCurve Tenors from simulation.xml for converting discount factors and fxspot rates
+simmarketDef = etree.parse(simulationFile)
+tenors = simmarketDef.find("./Market/YieldCurves/Configuration/Tenors").text.split(",")
+tenorsYrs = [ ql_period_in_years(period) for period in tenors]
+
+# get information from sensitivity.xml for shifting
+if not os.path.isfile(sensitivityFile):
+ print("no file " + sensitivityFile + " found!")
+ os._exit(1)
+sensitivityDef = etree.parse(sensitivityFile)
+values = {}
+for el in sensitivityDef.iterfind("./"):
+ if el.tag == "CrossGammaFilter":
+ continue
+ for subEl in el.iterfind("./"):
+ # need to change name for FXSpot (from scenario report) <> FxSpot (from sensitivity.xml)
+ startPattern = (subEl.tag if subEl.tag != "FxSpot" else "FXSpot") + "/" + subEl.attrib.values()[0]
+ shiftSize = float(subEl.find("./ShiftSize").text)
+ shiftType = subEl.find("./ShiftType").text
+ if shiftType in values:
+ if shiftSize in values[shiftType]:
+ values[shiftType][shiftSize].append(startPattern)
+ else:
+ values[shiftType][shiftSize] = []
+ else:
+ values[shiftType] = {}
+ values[shiftType][shiftSize] = []
+ values[shiftType][shiftSize].append(startPattern)
+
+if not os.path.isfile(fixingdataFile):
+ print("no file " + fixingdataFile + " found!")
+ os._exit(1)
+with open(fixingdataFile) as f:
+ fixingsdata = ore.StrVector(f.read().splitlines())
+
+# create scenarios file as well for output of historic scenarios
+if os.path.isfile(outputscenariosFile):
+ os.remove(outputscenariosFile)
+file=open(outputscenariosFile, 'w')
+
+headerRow = ""
+dfriskfact = pd.DataFrame()
+columnCount = int # the expected column count, this is taken from the report for the first historic date which should be sufficient for the required output columns
+for scenDate in df["Date"].unique():
+ print("starting ORE scenario report for " + str(scenDate))
+ # get marketdata block from history
+ marketdata = df[df["Date"] == scenDate]["wholeLine"].tolist()
+ inputs.setAsOfDate(scenDate.strftime("%Y-%m-%d"))
+
+ # run scenario report
+ oreapp = ore.OREApp(inputs, "log.txt", 63, True)
+ oreapp.run(marketdata,fixingsdata)
+ if not check(oreapp):
+ os._exit(1)
+ report = oreapp.getReport("scenario")
+
+ # write historic scenarios, first create headerRow only once ...
+ if headerRow == "":
+ columnCount = report.columns()
+ for i in range(columnCount):
+ headerRow += report.header(i)+("\t" if i < columnCount-1 else "")
+ file.write(headerRow + "\n")
+ # ... then write data row for history date and accumulate history for covariance calculation, but only if report columns are the same size as the expected column count
+ if report.columns() == columnCount:
+ dataRow = report.dataAsString(0)[0]+"\t"+str(report.dataAsSize(1)[0])+"\t"
+ for i in range(2,columnCount):
+ dataRow += str(report.dataAsReal(i)[0])+("\t" if i < columnCount-1 else "")
+ file.write(dataRow + "\n")
+
+ # accumulate history for covariance calculation, converting curves to zero rates
+ for i in range(3,columnCount):
+ riskfactor = report.header(i)
+ riskfactorParts = riskfactor.split("/")
+ if riskfactorParts[0] == "DiscountCurve" or riskfactorParts[0] == "IndexCurve":
+ # convert curve discountfactor to zero rate before
+ dfriskfact.at[scenDate,riskfactor] = -np.log(float(report.dataAsReal(i)[0]))/tenorsYrs[int(riskfactorParts[2])]
+ else:
+ # use riskfactor value directly
+ dfriskfact.at[scenDate,riskfactor] = report.dataAsReal(i)[0]
+ else:
+ print("skipping scenario report for date " + report.dataAsString(0)[0] + " as it returned " + str(report.columns()) + " columns, which is less than the expected column count: " + str(columnCount))
+file.close()
+
+# dfriskfact.to_pickle("riskfactors")
+# dfriskfact = pd.read_pickle("riskfactors")
+
+print("calculating variance-covariance matrix from historic data")
+# transpose the risk factors so the dates are horizontal and the risk factors vertical (for np.cov)
+dfriskfactT = dfriskfact.T
+
+# calculate differentials according to shiftType and shiftSize for each riskfactor
+convLog = ""
+for shiftType in ['Absolute','Relative']:
+ values[shiftType]["data"] = pd.DataFrame()
+ for shiftSize in values[shiftType].keys():
+ if shiftSize == "data":
+ continue
+ for startPattern in values[shiftType][shiftSize]:
+ dfPart = dfriskfactT[dfriskfactT.index.str.startswith(startPattern)]
+ if dfPart.empty:
+ continue
+ dfPartDelayed = dfPart.shift(1, axis=1)
+ if (shiftType == 'Absolute'):
+ resDf = (dfPartDelayed - dfPart) * (1/shiftSize)
+ else:
+ resDf = (dfPartDelayed / dfPart - 1) * (1/shiftSize)
+ if values[shiftType]["data"].empty:
+ values[shiftType]["data"] = resDf
+ else:
+ values[shiftType]["data"] = pd.concat([values[shiftType]["data"], resDf], axis=0)
+
+# put all differentials together, remove missing data and calculate the variance covariance matrix
+finalDf = pd.concat([values['Absolute']["data"], values['Relative']["data"]], axis=0)
+finalDf.drop(columns=finalDf.columns[0], axis=1, inplace=True) # remove first column -> difference to delayed
+if (finalDf.isna().any().sum() > 0):
+ print("following dates have missing data:")
+ print(finalDf.loc[finalDf.isna().any(axis=1),finalDf.isnull().any()])
+ ret = input("should these be removed (maybe business holiday) or [c]ancel to repair input data?")
+ if ret == 'c':
+ os._exit(1)
+ finalDf.dropna(axis=1,inplace=True)
+varcovar = np.cov(finalDf)
+
+# output covariance file in ORE format
+if os.path.isfile(outputcovarianceFile):
+ os.remove(outputcovarianceFile)
+file=open(outputcovarianceFile, 'w')
+for x in range(0, varcovar.shape[0]):
+ for y in range(x, varcovar.shape[1]):
+ vcov = varcovar[x,y]
+ file.write(str(finalDf.index[x]) + "\t" + str(finalDf.index[y]) + "\t%.2f" % vcov + "\n")