@@ -13,6 +13,7 @@ \subsubsection{Yield Curves}
1313 <Segments> </Segments>
1414 <InterpolationVariable> </InterpolationVariable>
1515 <InterpolationMethod> </InterpolationMethod>
16+ <MixedInterpolationCutoff> </MixedInterpolationCutoff>
1617 <YieldCurveDayCounter> </YieldCurveDayCounter>
1718 <Tolerance> </Tolerance>
1819 <Extrapolation> </Extrapolation>
@@ -40,6 +41,8 @@ \subsubsection{Yield Curves}
4041\emph {Discount }.
4142\item InterpolationMethod [Optional]: The interpolation method to use. The allowable values are given in Table
4243\ref {tab:allow_interp_methods }. If the element is omitted or left blank, then it defaults to \emph {LogLinear }.
44+ \item MixedInterpolationCutoff [Optional]: If a mixed interpolation method is used, the number of segments to which the
45+ first interpolation method is applied. Defaults to 1.
4346\item YieldCurveDayCounter [Optional]: The day count basis used internally by the yield curve to calculate the time between
4447dates. In particular, if the curve is queried for a zero rate without specifying the day count basis, the zero rate that
4548is returned has this basis. If the element is omitted or left blank, then it defaults to \emph {A365 }.
@@ -88,6 +91,10 @@ \subsubsection{Yield Curves}
8891 LogQuadratic & Quadratic interpolation on the natural log of the interpolation variable \\ \hline
8992 Hermite & Hermite cubic spline interpolation \\ \hline
9093 CubicSpline & Non-monotonic cubic spline interpolation with second derivative at left and right \\ \hline
94+ DefaultLogMixedLinearCubic & Mixed interpolation, first linear, then monotonic Kruger cubic spline \\ \hline
95+ MonotonicLogMixedLinearCubic & Mixed interpolation, first linear, then monotonic natural cubic spline \\ \hline
96+ KrugerLogMixedLinearCubic & Mixed interpolation, first linear, then non-monotonic Kruger cubic spline \\ \hline
97+ LogMixedLinearCubicNaturalSpline & Mixed interpolation, first linear, then non-monotonic natural cubic spline \\ \hline
9198 ExponentialSplines & Exponential Spline curve fitting, for Fitted Bond Curves only \\ \hline
9299 NelsonSiegel & Nelson-Siegel curve fitting, for Fitted Bond Curves only \\ \hline
93100 Svensson & Svensson curve fitting, for Fitted Bond Curves only \\ \hline
@@ -149,7 +156,22 @@ \subsubsection*{Simple Segment}
149156floating rates on the instruments underlying the quotes listed in the \lstinline !Quote ! nodes during the bootstrap
150157procedure. This is an optional node. If it is left blank or omitted, then the projection curve is assumed to equal the
151158curve being bootstrapped i.e.\ the current CurveId. The \lstinline !PillarChoice ! node determines the bootstrap pillars
152- that are used (MaturityDate, LastRelevantDate).
159+ that are used (MaturityDate, LastRelevantDate, if not given 'LastRelevantDate' is the default value).
160+
161+ The \lstinline !Priority ! node determines the priority of the segment, this has to be a non-negative integer. A lower
162+ number means a higher priority (more `` important'' ) segment. If two adjacent segments overlap w.r.t. the pillar dates of
163+ their instruments, instruments from the segment with lower priority are removed until the overlap is resolved. In
164+ addition, a minimum distance (measured in calendar days) between the segments is preserved. This distance is given in
165+ the \lstinline !MinDistance ! node for the instruments of the current and following segment. If not given, the priority of
166+ a segment defaults to 0 (highest possible priority), the minimum distance defaults to $ 1 $ . Consider the example given in
167+ \ref {lst:priorities_min_distances }. In this case:
168+ \begin {itemize }
169+ \item instruments from the start of the second segment with pillar date strictly earlier than $ d_1 + 5 $ , where $ d_1 $ is
170+ the maximum pillar date of instruments in the first segment, will be removed
171+ \item instruments from the end of the second segment with pillar date strictly later than $ d_3 - 10 $ , where $ d_3 $ is the
172+ mininum pillar date of instruments in the third segment, will be removed
173+ \end {itemize }
174+
153175
154176\begin {listing }[H]
155177% \hrule\medskip
@@ -163,13 +185,37 @@ \subsubsection*{Simple Segment}
163185 </Quotes>
164186 <Conventions> </Conventions>
165187 <PillarChoice> </PillarChoice>
188+ <Priority> </Priority>
189+ <MinDistance> </MinDistance>
166190 <ProjectionCurve> </ProjectionCurve>
167191</Simple>
168192\end {minted }
169193\caption {Simple yield curve segment}
170194\label {lst:simple_segment }
171195\end {listing }
172196
197+ \begin {listing }[H]
198+ % \hrule\medskip
199+ \begin {minted }[fontsize=\footnotesize ]{xml}
200+ <Simple>
201+ ...
202+ <Priority>0</Priority>
203+ <MinDistance>5</MinDistance>
204+ </Simple>
205+ <Simple>
206+ ...
207+ <Priority>2</Priority>
208+ <MinDistance>10</MinDistance>
209+ </Simple>
210+ <Simple>
211+ ...
212+ <Priority>1</Priority>
213+ </Simple>
214+ \end {minted }
215+ \caption {Example for priorities and min distances}
216+ \label {lst:priorities_min_distances }
217+ \end {listing }
218+
173219\subsubsection* {Average OIS Segment }
174220When the node name is \lstinline !AverageOIS !, the \lstinline !Type ! node has the value \emph {Average OIS } and the node
175221has the structure shown in Listing \ref {lst:average_ois_segment }. This segment is used to hold quotes for Average OIS
@@ -178,7 +224,10 @@ \subsubsection*{Average OIS Segment}
178224IRS quote and an OIS-LIBOR basis swap spread quote. The IDs of these two quotes are stored in the
179225\lstinline !CompositeQuote ! node. The \lstinline !RateQuote ! node holds the ID of the vanilla IRS quote and the
180226\lstinline !SpreadQuote ! node holds the ID of the OIS-LIBOR basis swap spread quote. The \lstinline !PillarChoice ! node
181- determines the bootstrap pillars that are used (MaturityDate, LastRelevantDate).
227+ determines the bootstrap pillars that are used (MaturityDate, LastRelevantDate, if not given 'LastRelevantDate' is the
228+ default value).
229+
230+ For the \lstinline !Priority ! and \lstinline !MinDistance ! nodes see the explanation under `` Simple Segment'' .
182231
183232\begin {listing }[H]
184233% \hrule\medskip
@@ -192,6 +241,8 @@ \subsubsection*{Average OIS Segment}
192241 </Quotes>
193242 <Conventions> </Conventions>
194243 <PillarChoice> </PillarChoice>
244+ <Priority> </Priority>
245+ <MinDistance> </MinDistance>
195246 <ProjectionCurve> </ProjectionCurve>
196247</AverageOIS>
197248\end {minted }
@@ -229,7 +280,9 @@ \subsubsection*{Tenor Basis Segment}
229280optional nodes. If they are left blank or omitted, then the projection curve is assumed to equal the curve being
230281bootstrapped i.e.\ the current CurveId. However, at least one of the nodes needs to be populated to allow the bootstrap
231282to proceed. The \lstinline !PillarChoice ! node determines the bootstrap pillars that are used (MaturityDate,
232- LastRelevantDate).
283+ LastRelevantDate, if not given 'LastRelevantDate' is the default value).
284+
285+ For the \lstinline !Priority ! and \lstinline !MinDistance ! nodes see the explanation under `` Simple Segment'' .
233286
234287\begin {listing }[H]
235288% \hrule\medskip
@@ -243,6 +296,8 @@ \subsubsection*{Tenor Basis Segment}
243296 </Quotes>
244297 <Conventions> </Conventions>
245298 <PillarChoice> </PillarChoice>
299+ <Priority> </Priority>
300+ <MinDistance> </MinDistance>
246301 <ProjectionCurveLong> </ProjectionCurveLong>
247302 <ProjectionCurveShort> </ProjectionCurveShort>
248303</TenorBasis>
@@ -259,7 +314,7 @@ \subsubsection*{Cross Currency Segment}
259314in the other currency i.e.\ the currency in the currency pair that is not equal to the currency in Listing
260315\ref {lst:top_level_yc }. The \lstinline !SpotRate ! node holds the ID of a spot FX quote for the currency pair that is
261316looked up in the {\tt market.txt} file. The \lstinline !PillarChoice ! node determines the bootstrap pillars that are used
262- (MaturityDate, LastRelevantDate).
317+ (MaturityDate, LastRelevantDate, if not given 'LastRelevantDate' is the default value ).
263318
264319\begin {listing }[H]
265320% \hrule\medskip
@@ -273,6 +328,8 @@ \subsubsection*{Cross Currency Segment}
273328 </Quotes>
274329 <Conventions> </Conventions>
275330 <PillarChoice> </PillarChoice>
331+ <Priority> </Priority>
332+ <MinDistance> </MinDistance>
276333 <DiscountCurve> </DiscountCurve>
277334 <SpotRate> </SpotRate>
278335</CrossCurrency>
@@ -294,6 +351,8 @@ \subsubsection*{Cross Currency Segment}
294351the other currency. If it is left blank or omitted, then it is assumed to equal the CurveId provided in the
295352\lstinline !DiscountCurve ! node in this segment.
296353
354+ For the \lstinline !Priority ! and \lstinline !MinDistance ! nodes see the explanation under `` Simple Segment'' .
355+
297356\begin {listing }[H]
298357% \hrule\medskip
299358\begin {minted }[fontsize=\footnotesize ]{xml}
@@ -306,6 +365,8 @@ \subsubsection*{Cross Currency Segment}
306365 </Quotes>
307366 <Conventions> </Conventions>
308367 <PillarChoice> </PillarChoice>
368+ <Priority> </Priority>
369+ <MinDistance> </MinDistance>
309370 <DiscountCurve> </DiscountCurve>
310371 <SpotRate> </SpotRate>
311372 <ProjectionCurveDomestic> </ProjectionCurveDomestic>
0 commit comments