| Financial Derivatives Toolbox | ![]() |
Fixed income instrument prices by BDT interest rate tree
Syntax
Arguments
BDTTree |
Interest rate tree structure created by bdttree. |
InstSet |
Variable containing a collection of NINST instruments. Instruments are categorized by type; each type can have different data fields. The stored data field is a row vector or string for each instrument. |
| Options |
(Optional) Derivatives pricing options structure created with derivset. |
Description
[Price, PriceTree] = bdtprice(BDTTree, InstSet, Options)
computes arbitrage free prices for instruments using an interest rate tree created with bdttree. All instruments contained in a financial instrument variable, InstSet, are priced.
Price is a number of instruments (NINST)-by-1 vector of prices for each instrument. The prices are computed by backward dynamic programming on the interest rate tree. If an instrument cannot be priced, NaN is returned.
PriceTree is a MATLAB structure of trees containing vectors of instrument prices and accrued interest, and a vector of observation times for each node.
PriceTree.PTree contains the clean prices.
PriceTree.AITree contains the accrued interest.
PriceTree.tObs contains the observation times.
bdtprice handles instrument types: 'Bond', 'CashFlow', 'OptBond', 'Fixed', 'Float', 'Cap', 'Floor', 'Swap'. See instadd to construct defined types.
Related single-type pricing functions are:
bondbybdt: Price a bond by a BDT tree.
capbybdt: Price a cap by a BDT tree.
cfbybdt: Price an arbitrary set of cash flows by a BDT tree.
fixedbybdt: Price a fixed rate note by a BDT tree.
floatbybdt: Price a floating rate note by a BDT tree.
floorbybdt: Price a floor by a BDT tree.
optbndbybdt: Price a bond option by a BDT tree.
swapbybdt: Price a swap by a BDT tree.
Examples
Load the BDT tree and instruments from the data file deriv.mat. Price the cap and bond instruments contained in the instrument set.
load deriv.mat; BDTSubSet = instselect(BDTInstSet,'Type', {'Bond', 'Cap'}); instdisp(BDTSubSet) Index Type CouponRate Settle Maturity Period Name ... 1 Bond 0.1 01-Jan-2000 01-Jan-2003 1 10% bond 2 Bond 0.1 01-Jan-2000 01-Jan-2004 2 10% bond Index Type Strike Settle Maturity CapReset... Name ... 3 Cap 0.15 01-Jan-2000 01-Jan-2004 1 15% Cap [Price, PriceTree] = bdtprice(BDTTree, BDTSubSet); Warning: Not all cash flows are aligned with the tree. Result will be approximated. Price = 95.5030 93.9079 1.4863
You can use treeviewer to see the prices of these three instruments along the price tree.
See Also
bdtsens, bdttree, instadd, intenvprice, intenvsens
| Functions - Alphabetical List | bdtsens | ![]() |