Financial Derivatives Toolbox | ![]() ![]() |
Price cap instrument by BDT interest rate tree
Syntax
Arguments
BDTTree |
Interest rate tree structure created by bdttree . |
Strike |
Number of instruments (NINST )-by-1 vector of rates at which the cap is exercised. |
Settle |
Settlement dates. NINST -by-1 vector of dates representing the settlement dates of the cap. |
Maturity |
NINST -by-1 vector of dates representing the maturity dates of the cap. |
Reset |
(Optional) NINST -by-1 vector representing the frequency of payments per year. Default = 1 . |
Basis | (Optional) NINST -by-1 vector representing the basis used when annualizing the input forward rate tree. Default = 0 (actual/actual). |
Principal |
(Optional) The notional principal amount. Default = 100 . |
Options |
(Optional) Derivatives pricing options structure created with derivset . |
Description
[Price, PriceTree] = capbybdt(BDTTree, Strike, Settle, Maturity,
Reset, Basis, Principal, Options)
computes the price of a cap instrument from a BDT interest rate tree.
Price
is the expected price of the cap at time 0.
PriceTree
is the tree structure with values of the cap at each node.
The Settle
date for every cap is set to the ValuationDate
of the BDT tree. The cap argument Settle
is ignored.
Examples
Price a 3% cap instrument using a BDT interest rate tree.
Load the file deriv.mat
, which provides BDTTree
. BDTTree
contains the time and interest rate information needed to price the cap instrument.
Set the required values. Other arguments will use defaults.
Use capbybdt
to compute the price of the cap instrument.
Here is a second example, showing the pricing of a 10% cap instrument using a newly-created BDT tree.
First set the required arguments for the three needed specifications.
Compounding = 1; ValuationDate = '01-01-2000'; StartDate = ValuationDate; EndDates = ['01-01-2001'; '01-01-2002'; '01-01-2003'; '01-01-2004'; '01-01-2005']; Rates = [.1; .11; .12; .125; .13]; Volatility = [.2; .19; .18; .17; .16];
Next create the specifications.
RateSpec = intenvset('Compounding', Compounding,... 'ValuationDate', ValuationDate,... 'StartDates', StartDate,... 'EndDates', EndDates,... 'Rates', Rates); BDTTimeSpec = bdttimespec(ValuationDate, EndDates, Compounding); BDTVolSpec = bdtvolspec(ValuationDate, EndDates, Volatility);
Now create the BDT tree from the specifications.
Remaining arguments will use defaults.
Finally, use capbybdt
to find the price of the cap instrument.
See Also
bdttree
, cfbybdt
, floorbybdt
, swapbybdt
![]() | bushshape | capbyhjm | ![]() |