You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Docs/UserGuide/tradedata/swaption.tex
+74-2Lines changed: 74 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ \subsubsection{Swaption}
6
6
component sub-node. These trade components are outlined in section \ref{ss:option_data} and section
7
7
\ref{ss:leg_data}.\\
8
8
\vspace{5mm}
9
-
Supported swaption exercise styles are \emph{European} and \emph{Bermudan}. Swaptions of both exercise styles can have an arbitrary number of legs, with
9
+
Supported swaption exercise styles are \emph{European}, \emph{Bermudan}, \emph{American}. Swaptions of all exercise styles can have an arbitrary number of legs, with
10
10
each leg represented by a \lstinline!LegData! sub-node. Cross currency swaptions are not supported for either exercise style, i.e. the Currency element must
11
11
have the same value for all \lstinline!LegData! sub-nodes of a swaption. There must be at least one full coupon period after the exercise date for European
12
12
Swaptions, and after the last exercise date for Bermudan Swaptions. See Table \ref{tab:swaption_requirements} for further details on requirements for
@@ -142,7 +142,79 @@ \subsubsection{Swaption}
142
142
\item\lstinline!ExerciseFeeSettlementConvention![Optional]: The roll convention used to compute the exercise fee settlement date from
143
143
the exercise date. Defaults to \emph{Unadjusted} if not given. Allowable values: See Table \ref{tab:convention} Roll Convention.
144
144
145
-
\item An \lstinline!ExerciseDates! node where exactly one \lstinline!ExerciseDate! date element must be given for \emph{European} style swaptions, and for \emph{Bermudan} style swaptions at least two \lstinline!ExerciseDate! date elements must be given. \\
145
+
\item An \lstinline!ExerciseDates! node where for \emph{European} style swaptions exactly one \lstinline!ExerciseDate! date element must be given. \emph{Bermudan} style swaptions can have \lstinline!ExerciseDate! elements given directly (at least two \lstinline!ExerciseDate! elements must be given), or Rules or Dates based exercise dates. See Listings \ref{lst:bermudan_swaption_exercisedates}, \ref{lst:bermudan_swaption_rules} and \ref{lst:bermudan_swaption_dates}.
146
+
147
+
148
+
\begin{listing}[H]
149
+
\begin{minted}[fontsize=\footnotesize]{xml}
150
+
<SwaptionData>
151
+
<OptionData>
152
+
<LongShort>Long</LongShort>
153
+
<Style>Bermudan</Style>
154
+
<Settlement>Physical</Settlement>
155
+
<ExerciseDates>
156
+
<ExerciseDate>2027-03-02</ExerciseDate>
157
+
<ExerciseDate>2028-03-02</ExerciseDate>
158
+
<ExerciseDate>2029-03-02</ExerciseDate>
159
+
</ExerciseDates>
160
+
...
161
+
</OptionData>
162
+
...
163
+
\end{minted}
164
+
\caption{Bermudan Swaption ExerciseDate:s}
165
+
\label{lst:bermudan_swaption_exercisedates}
166
+
\end{listing}
167
+
168
+
\begin{listing}[H]
169
+
\begin{minted}[fontsize=\footnotesize]{xml}
170
+
<SwaptionData>
171
+
<OptionData>
172
+
<LongShort>Long</LongShort>
173
+
<Style>Bermudan</Style>
174
+
<Settlement>Physical</Settlement>
175
+
<ExerciseDates>
176
+
<Rules>
177
+
<StartDate>2027-03-02</StartDate>
178
+
<EndDate>2029-03-02</EndDate>
179
+
<Tenor>1Y</Tenor>
180
+
<Calendar>US</Calendar>
181
+
<Convention>MF</Convention>
182
+
<Rules>
183
+
</ExerciseDates>
184
+
...
185
+
</OptionData>
186
+
...
187
+
\end{minted}
188
+
\caption{Bermudan Swaption Rules based}
189
+
\label{lst:bermudan_swaption_rules}
190
+
\end{listing}
191
+
192
+
\begin{listing}[H]
193
+
\begin{minted}[fontsize=\footnotesize]{xml}
194
+
<SwaptionData>
195
+
<OptionData>
196
+
<LongShort>Long</LongShort>
197
+
<Style>Bermudan</Style>
198
+
<Settlement>Physical</Settlement>
199
+
<ExerciseDates>
200
+
<Dates>
201
+
<Calendar>NullCalendar</Calendar>
202
+
<Convention>Unadjusted</Convention>
203
+
<Dates>
204
+
<Date>2027-03-02</Date>
205
+
<Date>2028-03-02</Date>
206
+
<Date>2029-03-02</Date>
207
+
<Dates>
208
+
<Dates>
209
+
</ExerciseDates>
210
+
...
211
+
</OptionData>
212
+
...
213
+
\end{minted}
214
+
\caption{Bermudan Swaption Dates based}
215
+
\label{lst:bermudan_swaption_dates}
216
+
\end{listing}
217
+
146
218
147
219
\item\lstinline!Premiums! [Optional]: Option premium node with amounts paid by the option buyer to the option seller.
It should be noted that equity volatilities are taken to be a curve by default. To simulate an equity volatility surface with smile the xml node {\tt <Surface> } must be supplied.
5773
5773
There are two methods in ORE for equity volatility simulation:
5774
5774
\begin{itemize}
5775
-
\item Simulating ATM volatilities only (and shifting other strikes relative to this using the $T_{0}$ smile). In this case set {\tt <SimulateATMOnly>} to true.
5776
-
\item Simulating the full volatility surface. The node {\tt <SimulateATMOnly>} should be omitted or set to false, and explicit moneyness levels for simulation should be provided.
5775
+
\item Simulating ATM volatilities only (and shifting other strikes relative to this using the $T_{0}$ smile). In this
5776
+
case set {\tt <SimulateATMOnly>} to true and no surface node is given.
5777
+
\item Simulating the full volatility surface. The node {\tt <SimulateATMOnly>} should be omitted or set to false, and
5778
+
explicit moneyness levels for simulation should be provided.
5777
5779
\end{itemize}
5778
5780
5779
5781
Swaption volatilities are taken to be a surface by default. To simulate a swaption volatility cube with smile the xml node {\tt <Cube> } must be supplied.
5780
5782
There are two methods in ORE for swaption volatility cube simulation:
5781
5783
\begin{itemize}
5782
5784
\item Simulating ATM volatilities only (and shifting other strikes relative to this using the $T_{0}$ smile). In this case set {\tt <SimulateATMOnly>} to true.
5783
-
\item Simulating the full volatility cube. The node {\tt <SimulateATMOnly>} should be omitted or set to false, and explicit strike spreads for simulation should be provided.
5785
+
\item Simulating the full volatility cube. The node {\tt <SimulateATMOnly>} should be omitted or set to false, and
5786
+
explicit strike spreads for simulation should be provided.
5784
5787
\end{itemize}
5785
5788
5786
5789
FX volatilities are taken to be a curve by default. To simulate an FX volatility cube with smile the xml node {\tt <Surface> } must be supplied. The surface node contains the moneyness levels to be simulated.
\item {\tt ShiftType:} Both absolute or relative shifts can be used to compute a sensitivity, specified by the key words
6001
6004
{\tt Absolute} resp. {\tt Relative}.
6002
6005
\item {\tt ShiftSize:} The size of the shift to apply.
6006
+
\item {\tt ShiftScheme:} The finite difference scheme to use ({\tt Forward}, {\tt Backward}, {\tt Central}), if not given, this parameter defaults to {\tt Forward}
6003
6007
\item {\tt ShiftTenors:} For curves, the tenor buckets to apply shifts to, given as a comma separated list of periods.
6004
6008
\item {\tt ShiftExpiries:} For volatility surfaces, the option expiry buckets to apply shifts to, given as a comma
\item {\tt CurveType:} In the context of Yield Curves used to identify an equity ``risk free'' rate forecasting curve; set to {\tt EquityForecast} in this case
6013
6017
\end{itemize}
6014
6018
6019
+
The ShiftType, ShiftSize, ShiftScheme nodes take an optional attribute key that allows to configure different values for
6020
+
different sensitivity templates. The sensitivity templates are defined in the pricing engine configuration. This is best
6021
+
explained by an example: In Example 15 the product type BermudanSwaption has a sensitivity template \verb+IR_FD+
6022
+
attached, see \ref{lst:sensi_template}. This can be used to specify different shifts for trades that were built against
6023
+
this engine configuration, see \ref{lst:sensi_config_template}: For Bermudan swaptions a larger shift size of 10bp and a
6024
+
central difference scheme is used to compute discount curve sensitivities in EUR. Since no separate shift type is
6025
+
specified, the default shift type {\tt Absolute} is used. Note regarding the reports:
6026
+
6027
+
\begin{itemize}
6028
+
\item the sensi scenario report contains scenario NPVs related to the possibly product specific configured shift sizes
6029
+
\item the sensi report contains renormalized sensitivities, i.e. sensitivities are always expressed w.r.t. the default shift sizes
6030
+
\item the sensi config report only contains the default configuration
0 commit comments