Pricing Bermudan Swaption
In[1]:=
Describing the market conditions
In[2]:=
Out[2]=
In[4]:=
In[6]:=
Out[6]=
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]:=
Out[7]=
The default error type is provided with the option setting for a swaption or cap helper.
In[8]:=
Out[8]=
In[9]:=
Defining Short Rate Models
One Factor Hull/White Model
In[41]:=
Out[43]=
In[14]:=
Out[15]=
One Factor Black/Karasinski Model
Out[29]=
Out[30]=
Gaussian two-factor Model
In[37]:=
Out[39]=
Out[40]=
Constructing the bermudan swaption
In[35]:=
In[37]:=
In[39]:=
In[40]:=
Out[41]=
In[42]:=
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]:=
Out[43]=
In[44]:=
In[45]:=
Out[46]=
In[47]:=
Out[48]=
In[49]:=
Out[50]=