Pricing Bermudan Swaption

In[1]:=

BermudanSwaption_1.gif

Describing the market conditions

In[2]:=

BermudanSwaption_2.gif

Out[2]=

BermudanSwaption_3.gif

In[4]:=

BermudanSwaption_4.gif

In[6]:=

BermudanSwaption_5.gif

Out[6]=

BermudanSwaption_6.gif

Constructing the swaptions for the calibration

With the buildin QuantLib calibration functionality it is possible to calibrate in respect to different error types. The list of possible settings can be retrieved with

In[7]:=

BermudanSwaption_7.gif

Out[7]=

BermudanSwaption_8.gif

The default error type is provided with the option setting for a swaption or cap helper.

In[8]:=

BermudanSwaption_9.gif

Out[8]=

BermudanSwaption_10.gif

In[9]:=

BermudanSwaption_11.gif

Defining Short Rate Models

One Factor Hull/White Model

In[41]:=

BermudanSwaption_12.gif

Out[43]=

BermudanSwaption_13.gif

In[14]:=

BermudanSwaption_14.gif

Out[15]=

BermudanSwaption_15.gif

One Factor Black/Karasinski Model

BermudanSwaption_16.gif

Out[29]=

BermudanSwaption_17.gif

Out[30]=

BermudanSwaption_18.gif

Gaussian two-factor Model

In[37]:=

BermudanSwaption_19.gif

Out[39]=

BermudanSwaption_20.gif

Out[40]=

BermudanSwaption_21.gif

Constructing the bermudan swaption

In[35]:=

BermudanSwaption_22.gif

In[37]:=

BermudanSwaption_23.gif

In[39]:=

BermudanSwaption_24.gif

In[40]:=

BermudanSwaption_25.gif

Out[41]=

BermudanSwaption_26.gif

In[42]:=

BermudanSwaption_27.gif

Out[42]//TableForm=

Payment Date Amount Nominal Accrual Start Date Accrual End Date Accrual Days Index Fixing Days Fixing Dates Day Counter Accrual Period Effective Rate Floor Gearing Index Fixing Conv. Adj. Spread Cap Call Digital Payoff Put Digital Payoff
Thu 31 Oct 2013 50.6944 1000. Wed 31 Oct 2012 Thu 31 Oct 2013 365 #N/A #N/A #N/A Actual/360 1.01389 0.05 #N/A #N/A #N/A #N/A #N/A #N/A #N/A #N/A
Fri 31 Oct 2014 50.6944 1000. Thu 31 Oct 2013 Fri 31 Oct 2014 365 #N/A #N/A #N/A Actual/360 1.01389 0.05 #N/A #N/A #N/A #N/A #N/A #N/A #N/A #N/A
Mon 2 Nov 2015 50.6944 1000. Fri 31 Oct 2014 Sat 31 Oct 2015 365 #N/A #N/A #N/A Actual/360 1.01389 0.05 #N/A #N/A #N/A #N/A #N/A #N/A #N/A #N/A
Mon 31 Oct 2016 50.8333 1000. Sat 31 Oct 2015 Mon 31 Oct 2016 366 #N/A #N/A #N/A Actual/360 1.01667 0.05 #N/A #N/A #N/A #N/A #N/A #N/A #N/A #N/A
Tue 31 Oct 2017 50.6944 1000. Mon 31 Oct 2016 Tue 31 Oct 2017 365 #N/A #N/A #N/A Actual/360 1.01389 0.05 #N/A #N/A #N/A #N/A #N/A #N/A #N/A #N/A

In[43]:=

BermudanSwaption_28.gif

Out[43]=

BermudanSwaption_29.gif

In[44]:=

BermudanSwaption_30.gif

In[45]:=

BermudanSwaption_31.gif

Out[46]=

BermudanSwaption_32.gif

In[47]:=

BermudanSwaption_33.gif

Out[48]=

BermudanSwaption_34.gif

In[49]:=

BermudanSwaption_35.gif

Out[50]=

BermudanSwaption_36.gif

Spikey Created with Wolfram Mathematica 8.0