Skip to content

Commit 21003cc

Browse files
committed
Merge branch 'QPR-12302_TBS' into 'master'
Resolve QPR-12302 "Tbs" Closes QPR-12302 See merge request qs/oreswig!54
2 parents 2e7fd3f + 11f53ad commit 21003cc

20 files changed

Lines changed: 252 additions & 370 deletions

File tree

Docs/ore-swig.tex

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,6 @@ \subsection*{QuantExt Interfaces}
184184
\subitem DiscountingFxForward
185185
\subitem Payment
186186
\subitem PaymentDiscountingEngine
187-
\subitem OvernightIndexedBasisSwap
188187
\subitem Deposit
189188
\subitem DepositEngine
190189
\subitem DiscountingSwapEngineMultiCurve
@@ -195,7 +194,6 @@ \subsection*{QuantExt Interfaces}
195194
\subitem SubPeriodsSwapHelper
196195
\subitem SubPeriodsCoupon1
197196
\subitem OICCBSHelper
198-
\subitem OIBSHelper
199197
\subitem BasisTwoSwapHelper
200198
\subitem ImmFraRateHelper
201199
\subitem CrossCcyFixFloatSwapHelper

OREAnalytics-SWIG/Python/Examples/Input/conventions.xml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,42 +1027,42 @@
10271027
</TenorBasisTwoSwap>
10281028
<TenorBasisSwap>
10291029
<Id>USD-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1030-
<LongIndex>USD-LIBOR-6M</LongIndex>
1031-
<ShortIndex>USD-LIBOR-3M</ShortIndex>
1032-
<ShortPayTenor>6M</ShortPayTenor>
1033-
<SpreadOnShort>true</SpreadOnShort>
1030+
<PayIndex>USD-LIBOR-6M</PayIndex>
1031+
<ReceiveIndex>USD-LIBOR-3M</ReceiveIndex>
1032+
<ReceiveFrequency>6M</ReceiveFrequency>
1033+
<SpreadOnRec>true</SpreadOnRec>
10341034
<IncludeSpread>false</IncludeSpread>
10351035
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10361036
</TenorBasisSwap>
10371037
<TenorBasisSwap>
10381038
<Id>USD-LIBOR-1M-3M-BASIS-CONVENTIONS</Id>
1039-
<LongIndex>USD-LIBOR-3M</LongIndex>
1040-
<ShortIndex>USD-LIBOR-1M</ShortIndex>
1041-
<ShortPayTenor>3M</ShortPayTenor>
1042-
<SpreadOnShort>true</SpreadOnShort>
1039+
<PayIndex>USD-LIBOR-3M</PayIndex>
1040+
<ReceiveIndex>USD-LIBOR-1M</ReceiveIndex>
1041+
<ReceiveFrequency>3M</ReceiveFrequency>
1042+
<SpreadOnRec>true</SpreadOnRec>
10431043
<IncludeSpread>false</IncludeSpread>
10441044
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10451045
</TenorBasisSwap>
10461046
<TenorBasisSwap>
10471047
<Id>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1048-
<LongIndex>GBP-LIBOR-6M</LongIndex>
1049-
<ShortIndex>GBP-LIBOR-3M</ShortIndex>
1048+
<PayIndex>GBP-LIBOR-6M</PayIndex>
1049+
<ReceiveIndex>GBP-LIBOR-3M</ReceiveIndex>
10501050
</TenorBasisSwap>
10511051
<TenorBasisSwap>
10521052
<Id>CHF-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1053-
<LongIndex>CHF-LIBOR-6M</LongIndex>
1054-
<ShortIndex>CHF-LIBOR-3M</ShortIndex>
1053+
<PayIndex>CHF-LIBOR-6M</PayIndex>
1054+
<ReceiveIndex>CHF-LIBOR-3M</ReceiveIndex>
10551055
</TenorBasisSwap>
10561056
<TenorBasisSwap>
10571057
<Id>JPY-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1058-
<LongIndex>JPY-LIBOR-6M</LongIndex>
1059-
<ShortIndex>JPY-LIBOR-3M</ShortIndex>
1058+
<PayIndex>JPY-LIBOR-6M</PayIndex>
1059+
<ReceiveIndex>JPY-LIBOR-3M</ReceiveIndex>
10601060
</TenorBasisSwap>
10611061
<TenorBasisSwap>
10621062
<Id>EUR-OIS-1M-BASIS-CONVENTIONS</Id>
1063-
<LongIndex>EUR-EURIBOR-1M</LongIndex>
1064-
<ShortIndex>EUR-EONIA</ShortIndex>
1065-
<ShortPayTenor>1Y</ShortPayTenor>
1063+
<PayIndex>EUR-EURIBOR-1M</PayIndex>
1064+
<ReceiveIndex>EUR-EONIA</ReceiveIndex>
1065+
<ReceiveFrequency>1Y</ReceiveFrequency>
10661066
</TenorBasisSwap>
10671067
<BMABasisSwap>
10681068
<Id>USD-LIBOR-SIFMA-3M-BASIS-CONVENTIONS</Id>

OREAnalytics-SWIG/Python/Examples/Input/curveconfig.xml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -351,8 +351,8 @@
351351
<Quote>BASIS_SWAP/BASIS_SPREAD/1M/3M/USD/30Y</Quote>
352352
</Quotes>
353353
<Conventions>USD-LIBOR-1M-3M-BASIS-CONVENTIONS</Conventions>
354-
<ProjectionCurveLong>USD3M</ProjectionCurveLong>
355-
<ProjectionCurveShort>USD1M</ProjectionCurveShort>
354+
<ProjectionCurvePay>USD3M</ProjectionCurvePay>
355+
<ProjectionCurveReceive>USD1M</ProjectionCurveReceive>
356356
</TenorBasis>
357357
</Segments>
358358
</YieldCurve>
@@ -1059,8 +1059,8 @@
10591059
<Quote>BASIS_SWAP/BASIS_SPREAD/6M/12M/EUR/30Y</Quote>
10601060
</Quotes>
10611061
<Conventions>EUR-EURIBOR-6M-12M-BASIS-CONVENTIONS</Conventions>
1062-
<ProjectionCurveLong>EUR12M</ProjectionCurveLong>
1063-
<ProjectionCurveShort>EUR6M</ProjectionCurveShort>
1062+
<ProjectionCurvePay>EUR12M</ProjectionCurvePay>
1063+
<ProjectionCurveReceive>EUR6M</ProjectionCurveReceive>
10641064
</TenorBasis>
10651065
</Segments>
10661066
</YieldCurve>
@@ -1363,8 +1363,8 @@
13631363
<Quote>BASIS_SWAP/BASIS_SPREAD/3M/6M/USD/30Y</Quote>
13641364
</Quotes>
13651365
<Conventions>USD-LIBOR-3M-6M-BASIS-CONVENTIONS</Conventions>
1366-
<ProjectionCurveLong>USD6M</ProjectionCurveLong>
1367-
<ProjectionCurveShort>USD3M</ProjectionCurveShort>
1366+
<ProjectionCurvePay>USD6M</ProjectionCurvePay>
1367+
<ProjectionCurveReceive>USD3M</ProjectionCurveReceive>
13681368
</TenorBasis>
13691369
</Segments>
13701370
</YieldCurve>
@@ -1543,8 +1543,8 @@
15431543
<Quote>BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/70Y</Quote>
15441544
</Quotes>
15451545
<Conventions>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Conventions>
1546-
<ProjectionCurveLong>GBP6M</ProjectionCurveLong>
1547-
<ProjectionCurveShort/>
1546+
<ProjectionCurvePay>GBP6M</ProjectionCurvePay>
1547+
<ProjectionCurveReceive/>
15481548
</TenorBasis>
15491549
</Segments>
15501550
</YieldCurve>
@@ -2515,7 +2515,7 @@
25152515
<CurveId>BOND_YIELD_EUR</CurveId>
25162516
<CurveDescription>Bond yield curve EUR</CurveDescription>
25172517
<Currency>EUR</Currency>
2518-
<DiscountCurve></DiscountCurve>
2518+
<DiscountCurve/>
25192519
<Segments>
25202520
<Direct>
25212521
<Type>Zero</Type>

OREAnalytics-SWIG/Python/Examples/Notebooks/Example_1/Input/conventions.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -227,8 +227,8 @@
227227
</TenorBasisTwoSwap>
228228
<TenorBasisSwap>
229229
<Id>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
230-
<LongIndex>GBP-LIBOR-6M</LongIndex>
231-
<ShortIndex>GBP-LIBOR-3M</ShortIndex>
230+
<PayIndex>GBP-LIBOR-6M</PayIndex>
231+
<ReceiveIndex>GBP-LIBOR-3M</ReceiveIndex>
232232
</TenorBasisSwap>
233233

234234
<!-- FX Forwards -->

OREAnalytics-SWIG/Python/Examples/Notebooks/Example_1/Input/curveconfig.xml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<FXVolatilities>
44
<FXVolatility>
55
<CurveId>EURGBP</CurveId>
6-
<CurveDescription />
6+
<CurveDescription/>
77
<Dimension>ATM</Dimension>
88
<Expiries>1Y</Expiries>
99
<FXSpotID>FX/EUR/GBP</FXSpotID>
@@ -75,7 +75,7 @@
7575
<CurveId>EUR1D</CurveId>
7676
<CurveDescription>EUR discount curve bootstrapped from EONIA swap rates</CurveDescription>
7777
<Currency>EUR</Currency>
78-
<DiscountCurve />
78+
<DiscountCurve/>
7979
<Segments>
8080
<Direct>
8181
<Type>Zero</Type>
@@ -92,9 +92,9 @@
9292
</YieldCurve>
9393
<YieldCurve>
9494
<CurveId>EUR6M</CurveId>
95-
<CurveDescription />
95+
<CurveDescription/>
9696
<Currency>EUR</Currency>
97-
<DiscountCurve />
97+
<DiscountCurve/>
9898
<Segments>
9999
<Direct>
100100
<Type>Zero</Type>
@@ -110,9 +110,9 @@
110110
</YieldCurve>
111111
<YieldCurve>
112112
<CurveId>GBP1D</CurveId>
113-
<CurveDescription />
113+
<CurveDescription/>
114114
<Currency>GBP</Currency>
115-
<DiscountCurve />
115+
<DiscountCurve/>
116116
<Segments>
117117
<Direct>
118118
<Type>Zero</Type>
@@ -125,9 +125,9 @@
125125
</YieldCurve>
126126
<YieldCurve>
127127
<CurveId>GBP6M</CurveId>
128-
<CurveDescription />
128+
<CurveDescription/>
129129
<Currency>GBP</Currency>
130-
<DiscountCurve />
130+
<DiscountCurve/>
131131
<Segments>
132132
<Direct>
133133
<Type>Zero</Type>
@@ -184,4 +184,4 @@
184184
</YieldCurve>
185185
</YieldCurves>
186186

187-
</CurveConfiguration>
187+
</CurveConfiguration>

OREAnalytics-SWIG/Python/Examples/Notebooks/Example_2/Input/conventions.xml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,42 +1027,42 @@
10271027
</TenorBasisTwoSwap>
10281028
<TenorBasisSwap>
10291029
<Id>USD-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1030-
<LongIndex>USD-LIBOR-6M</LongIndex>
1031-
<ShortIndex>USD-LIBOR-3M</ShortIndex>
1032-
<ShortPayTenor>6M</ShortPayTenor>
1033-
<SpreadOnShort>true</SpreadOnShort>
1030+
<PayIndex>USD-LIBOR-6M</PayIndex>
1031+
<ReceiveIndex>USD-LIBOR-3M</ReceiveIndex>
1032+
<ReceiveFrequency>6M</ReceiveFrequency>
1033+
<SpreadOnRec>true</SpreadOnRec>
10341034
<IncludeSpread>false</IncludeSpread>
10351035
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10361036
</TenorBasisSwap>
10371037
<TenorBasisSwap>
10381038
<Id>USD-LIBOR-1M-3M-BASIS-CONVENTIONS</Id>
1039-
<LongIndex>USD-LIBOR-3M</LongIndex>
1040-
<ShortIndex>USD-LIBOR-1M</ShortIndex>
1041-
<ShortPayTenor>3M</ShortPayTenor>
1042-
<SpreadOnShort>true</SpreadOnShort>
1039+
<PayIndex>USD-LIBOR-3M</PayIndex>
1040+
<ReceiveIndex>USD-LIBOR-1M</ReceiveIndex>
1041+
<ReceiveFrequency>3M</ReceiveFrequency>
1042+
<SpreadOnRec>true</SpreadOnRec>
10431043
<IncludeSpread>false</IncludeSpread>
10441044
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10451045
</TenorBasisSwap>
10461046
<TenorBasisSwap>
10471047
<Id>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1048-
<LongIndex>GBP-LIBOR-6M</LongIndex>
1049-
<ShortIndex>GBP-LIBOR-3M</ShortIndex>
1048+
<PayIndex>GBP-LIBOR-6M</PayIndex>
1049+
<ReceiveIndex>GBP-LIBOR-3M</ReceiveIndex>
10501050
</TenorBasisSwap>
10511051
<TenorBasisSwap>
10521052
<Id>CHF-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1053-
<LongIndex>CHF-LIBOR-6M</LongIndex>
1054-
<ShortIndex>CHF-LIBOR-3M</ShortIndex>
1053+
<PayIndex>CHF-LIBOR-6M</PayIndex>
1054+
<ReceiveIndex>CHF-LIBOR-3M</ReceiveIndex>
10551055
</TenorBasisSwap>
10561056
<TenorBasisSwap>
10571057
<Id>JPY-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1058-
<LongIndex>JPY-LIBOR-6M</LongIndex>
1059-
<ShortIndex>JPY-LIBOR-3M</ShortIndex>
1058+
<PayIndex>JPY-LIBOR-6M</PayIndex>
1059+
<ReceiveIndex>JPY-LIBOR-3M</ReceiveIndex>
10601060
</TenorBasisSwap>
10611061
<TenorBasisSwap>
10621062
<Id>EUR-OIS-1M-BASIS-CONVENTIONS</Id>
1063-
<LongIndex>EUR-EURIBOR-1M</LongIndex>
1064-
<ShortIndex>EUR-EONIA</ShortIndex>
1065-
<ShortPayTenor>1Y</ShortPayTenor>
1063+
<PayIndex>EUR-EURIBOR-1M</PayIndex>
1064+
<ReceiveIndex>EUR-EONIA</ReceiveIndex>
1065+
<ReceiveFrequency>1Y</ReceiveFrequency>
10661066
</TenorBasisSwap>
10671067
<BMABasisSwap>
10681068
<Id>USD-LIBOR-SIFMA-3M-BASIS-CONVENTIONS</Id>

OREAnalytics-SWIG/Python/Examples/Notebooks/Example_2/Input/curveconfig.xml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,8 @@
390390
<Quote>BASIS_SWAP/BASIS_SPREAD/1M/3M/USD/30Y</Quote>
391391
</Quotes>
392392
<Conventions>USD-LIBOR-1M-3M-BASIS-CONVENTIONS</Conventions>
393-
<ProjectionCurveLong>USD3M</ProjectionCurveLong>
394-
<ProjectionCurveShort>USD1M</ProjectionCurveShort>
393+
<ProjectionCurvePay>USD3M</ProjectionCurvePay>
394+
<ProjectionCurveReceive>USD1M</ProjectionCurveReceive>
395395
</TenorBasis>
396396
</Segments>
397397
</YieldCurve>
@@ -1098,8 +1098,8 @@
10981098
<Quote>BASIS_SWAP/BASIS_SPREAD/6M/12M/EUR/30Y</Quote>
10991099
</Quotes>
11001100
<Conventions>EUR-EURIBOR-6M-12M-BASIS-CONVENTIONS</Conventions>
1101-
<ProjectionCurveLong>EUR12M</ProjectionCurveLong>
1102-
<ProjectionCurveShort>EUR6M</ProjectionCurveShort>
1101+
<ProjectionCurvePay>EUR12M</ProjectionCurvePay>
1102+
<ProjectionCurveReceive>EUR6M</ProjectionCurveReceive>
11031103
</TenorBasis>
11041104
</Segments>
11051105
</YieldCurve>
@@ -1402,8 +1402,8 @@
14021402
<Quote>BASIS_SWAP/BASIS_SPREAD/3M/6M/USD/30Y</Quote>
14031403
</Quotes>
14041404
<Conventions>USD-LIBOR-3M-6M-BASIS-CONVENTIONS</Conventions>
1405-
<ProjectionCurveLong>USD6M</ProjectionCurveLong>
1406-
<ProjectionCurveShort>USD3M</ProjectionCurveShort>
1405+
<ProjectionCurvePay>USD6M</ProjectionCurvePay>
1406+
<ProjectionCurveReceive>USD3M</ProjectionCurveReceive>
14071407
</TenorBasis>
14081408
</Segments>
14091409
</YieldCurve>
@@ -1582,8 +1582,8 @@
15821582
<Quote>BASIS_SWAP/BASIS_SPREAD/6M/3M/GBP/70Y</Quote>
15831583
</Quotes>
15841584
<Conventions>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Conventions>
1585-
<ProjectionCurveLong>GBP6M</ProjectionCurveLong>
1586-
<ProjectionCurveShort/>
1585+
<ProjectionCurvePay>GBP6M</ProjectionCurvePay>
1586+
<ProjectionCurveReceive/>
15871587
</TenorBasis>
15881588
</Segments>
15891589
</YieldCurve>
@@ -2554,7 +2554,7 @@
25542554
<CurveId>BOND_YIELD_EUR</CurveId>
25552555
<CurveDescription>Bond yield curve EUR</CurveDescription>
25562556
<Currency>EUR</Currency>
2557-
<DiscountCurve></DiscountCurve>
2557+
<DiscountCurve/>
25582558
<Segments>
25592559
<Direct>
25602560
<Type>Zero</Type>

OREAnalytics-SWIG/Python/Examples/Notebooks/Example_3/Input/bak/conventions.xml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,42 +1027,42 @@
10271027
</TenorBasisTwoSwap>
10281028
<TenorBasisSwap>
10291029
<Id>USD-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1030-
<LongIndex>USD-LIBOR-6M</LongIndex>
1031-
<ShortIndex>USD-LIBOR-3M</ShortIndex>
1032-
<ShortPayTenor>6M</ShortPayTenor>
1033-
<SpreadOnShort>true</SpreadOnShort>
1030+
<PayIndex>USD-LIBOR-6M</PayIndex>
1031+
<ReceiveIndex>USD-LIBOR-3M</ReceiveIndex>
1032+
<ReceiveFrequency>6M</ReceiveFrequency>
1033+
<SpreadOnRec>true</SpreadOnRec>
10341034
<IncludeSpread>false</IncludeSpread>
10351035
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10361036
</TenorBasisSwap>
10371037
<TenorBasisSwap>
10381038
<Id>USD-LIBOR-1M-3M-BASIS-CONVENTIONS</Id>
1039-
<LongIndex>USD-LIBOR-3M</LongIndex>
1040-
<ShortIndex>USD-LIBOR-1M</ShortIndex>
1041-
<ShortPayTenor>3M</ShortPayTenor>
1042-
<SpreadOnShort>true</SpreadOnShort>
1039+
<PayIndex>USD-LIBOR-3M</PayIndex>
1040+
<ReceiveIndex>USD-LIBOR-1M</ReceiveIndex>
1041+
<ReceiveFrequency>3M</ReceiveFrequency>
1042+
<SpreadOnRec>true</SpreadOnRec>
10431043
<IncludeSpread>false</IncludeSpread>
10441044
<SubPeriodsCouponType>Compounding</SubPeriodsCouponType>
10451045
</TenorBasisSwap>
10461046
<TenorBasisSwap>
10471047
<Id>GBP-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1048-
<LongIndex>GBP-LIBOR-6M</LongIndex>
1049-
<ShortIndex>GBP-LIBOR-3M</ShortIndex>
1048+
<PayIndex>GBP-LIBOR-6M</PayIndex>
1049+
<ReceiveIndex>GBP-LIBOR-3M</ReceiveIndex>
10501050
</TenorBasisSwap>
10511051
<TenorBasisSwap>
10521052
<Id>CHF-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1053-
<LongIndex>CHF-LIBOR-6M</LongIndex>
1054-
<ShortIndex>CHF-LIBOR-3M</ShortIndex>
1053+
<PayIndex>CHF-LIBOR-6M</PayIndex>
1054+
<ReceiveIndex>CHF-LIBOR-3M</ReceiveIndex>
10551055
</TenorBasisSwap>
10561056
<TenorBasisSwap>
10571057
<Id>JPY-LIBOR-3M-6M-BASIS-CONVENTIONS</Id>
1058-
<LongIndex>JPY-LIBOR-6M</LongIndex>
1059-
<ShortIndex>JPY-LIBOR-3M</ShortIndex>
1058+
<PayIndex>JPY-LIBOR-6M</PayIndex>
1059+
<ReceiveIndex>JPY-LIBOR-3M</ReceiveIndex>
10601060
</TenorBasisSwap>
10611061
<TenorBasisSwap>
10621062
<Id>EUR-OIS-1M-BASIS-CONVENTIONS</Id>
1063-
<LongIndex>EUR-EURIBOR-1M</LongIndex>
1064-
<ShortIndex>EUR-EONIA</ShortIndex>
1065-
<ShortPayTenor>1Y</ShortPayTenor>
1063+
<PayIndex>EUR-EURIBOR-1M</PayIndex>
1064+
<ReceiveIndex>EUR-EONIA</ReceiveIndex>
1065+
<ReceiveFrequency>1Y</ReceiveFrequency>
10661066
</TenorBasisSwap>
10671067
<BMABasisSwap>
10681068
<Id>USD-LIBOR-SIFMA-3M-BASIS-CONVENTIONS</Id>

0 commit comments

Comments
 (0)