| Financial Toolbox | ![]() |
Syntax
[DiscRates, CurveDates] = zero2disc(ZeroRates, CurveDates, Settle, InputCompounding, InputBasis)
Description
[DiscRates, CurveDates] = zero2disc(ZeroRates, CurveDates, Settle,
InputCompounding, InputBasis)
returns a discount curve given a zero curve and its maturity dates.
Examples
Given a zero curve over a set of maturity dates and a settlement date
ZeroRates = [0.0464
0.0509
0.0524
0.0525
0.0531
0.0525
0.0530
0.0531
0.0549
0.0536];
CurveDates = [datenum('06-Nov-2000')
datenum('11-Dec-2000')
datenum('15-Jan-2001')
datenum('05-Feb-2001')
datenum('04-Mar-2001')
datenum('02-Apr-2001')
datenum('30-Apr-2001')
datenum('25-Jun-2001')
datenum('04-Sep-2001')
datenum('12-Nov-2001')];
Settle = datenum('03-Nov-2000');
The zero curve was compounded daily on an actual/365 basis.
InputCompounding = 365; InputBasis = 3;Execute the function
[DiscRates, CurveDates] = zero2disc(ZeroRates, CurveDates,... Settle, InputCompounding, InputBasis)which returns the discount curve
DiscRates at the maturity dates CurveDates.
DiscRates =
0.9996
0.9947
0.9896
0.9866
0.9826
0.9787
0.9745
0.9665
0.9552
0.9466
CurveDates =
730796
730831
730866
730887
730914
730943
730971
731027
731098
731167
For readability, ZeroRates and DiscRates are shown here only to the basis point. However, MATLAB computed them at full precision. If you enter ZeroRates as shown, DiscRates may differ due to rounding.
See Also
disc2zero and other functions for Term Structure of Interest Rates
| zbtyield | zero2fwd | ![]() |