| Contents | Index |
[Price, PriceTree] = swaptionbyhw(HWTree,
OptSpec, Strike,
ExerciseDates, Spread, Settle,
Maturity,
'Name1', Value1, 'Name2', Value2)
HWTree | Interest-rate tree structure created by hwtree. | |
OptSpec | NINST-by-1 cell array of strings 'call' or 'put'. A call swaption entitles the buyer to pay the fixed rate. A put swaption entitles the buyer to receive the fixed rate. | |
Strike | NINST-by-1 vector for strike swap rate values. | |
ExerciseDates | For a European option: NINST-by-1 vector of exercise dates. Each row is the schedule for one option. For a European option, there is only one ExerciseDate on the option expiry date. For an American option: NINST-by-2 vector of exercise date boundaries. For each instrument, the option can be exercised on any coupon date between or including the pair of dates on that row. If only one non-NaN date is listed, or if ExerciseDates is NINST-by-1, the option can be exercised between the underlying swap Settle and the single listed ExerciseDate. | |
Spread | NINST-by-1 vector representing the number of basis points over the reference rate. | |
Settle | NINST-by-1 vector of dates representing the settle date for each swap. | |
Maturity | NINST-by-1 vector of dates representing the maturity date for each swap. | |
| ||
AmericanOpt | (Optional) NINST-by-1 flags options:
| |
SwapReset | (Optional) NINST-by-1 vector representing the reset frequency per year for the underlying swap. Default is 1. | |
Basis | (Optional) Day-count basis of the instrument. A vector of integers.
For more information, see basis. | |
Principal | (Optional) NINST-by-1 vector of the notional principal amounts. Default is 100. | |
Options | (Optional) Derivatives pricing options structure created with derivset. | |
[Price, PriceTree] = swaptionbyhw(HWTree, OptSpec, Strike,ExerciseDates, Spread, Settle, Maturity,'Name1', Value1, 'Name2', Value2) computes the price of a swaption from a HW interest-rate tree.
Note The Settle date for every swaption is set to the ValuationDate of the HW tree. The swap argument Settle is ignored. |
The swaption may be a call swaption or a put swaption.
A call swaption or payer swaption allows the option buyer to enter into an interest rate swap in which the buyer of the option pays the fixed rate and receives the floating rate.
A put swaption or receiver swaption allows the option buyer to enter into an interest rate swap in which the buyer of the option receives the fixed rate and pays the floating rate.
Price is a NINST-by-1 vector of expected swaption prices at time 0.
PriceTree is a MATLAB structure of trees containing vectors of swaption instrument prices and a vector of observation times for each node. Within PriceTree:
PriceTree.PTree contains the clean prices.
PriceTree.tObs contains the observation times.
Price a 3-year put swaption using an HW interest-rate tree with the following data.
Specify the RateSpec:
Rates =0.075 * ones (10,1);
Compounding = 2;
StartDates = ['jan-1-2007';'jul-1-2007';'jan-1-2008';'jul-1-2008';'jan-1-2009';...
'jul-1-2009';'jan-1-2010'; 'jul-1-2010';'jan-1-2011';'jul-1-2011'];
EndDates =['jul-1-2007';'jan-1-2008';'jul-1-2008';'jan-1-2009';'jul-1-2009';...
'jan-1-2010';'jul-1-2010';'jan-1-2011';'jul-1-2011';'jan-1-2012'];
ValuationDate = 'jan-1-2007';
RateSpec = intenvset('Rates', Rates, 'StartDates', StartDates, 'EndDates',...
EndDates, 'Compounding', Compounding); Use HWVolSpec to compute the interest rate volatility:
Volatility = 0.05*ones(10,1); AlphaCurve = 0.01*ones(10,1); AlphaDates = EndDates; HWVolSpec = hwvolspec(ValuationDate, EndDates, Volatility, AlphaDates, AlphaCurve);
Use HWTimeSpec to specify the structure of the time layout for an HW interest-rate tree:
HWTimeSpec = hwtimespec(ValuationDate, EndDates, Compounding);
Build the HW tree:
HWTree = hwtree(HWVolSpec, RateSpec, HWTimeSpec);
Use the following arguments for a 5-year swap and 3-year swaption:
SwapSettlement = 'jan-1-2007'; SwapMaturity = 'jan-1-2012'; Spread = 0; SwapReset = 2 ; Principal = 100; OptSpec = 'put'; Strike= 0.04; ExerciseDates = 'jan-1-2010'; Basis=1;
Price the swaption
PriceSwaption = swaptionbyhw(HWTree, OptSpec, Strike, ExerciseDates, ... Spread, SwapSettlement, SwapMaturity,'SwapReset', SwapReset, ... 'Basis', Basis,'Principal', Principal)
to return
PriceSwaption =
2.9081hwtree | instswaption | swapbyhw
View demos and recorded presentations led by industry experts.
Now On Demand
Network with industry peers and learn the latest applications of the leading software product for computational finance.
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |