Financial Toolbox | ![]() ![]() |
Zero curve given a par yield curve
Syntax
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates, Settle, OutputCompounding, OutputBasis, InputCompounding, InputBasis, MaxIterations)
Arguments
Description
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates, Settle,
OutputCompounding, OutputBasis, InputCompounding, InputBasis,
MaxIterations)
returns a zero curve given a par yield curve and its maturity dates.
Examples
Given a par yield curve over a set of maturity dates and a settlement date
ParRates = [0.0479 0.0522 0.0540 0.0540 0.0536 0.0532 0.0532 0.0539 0.0558 0.0543]; 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');
Set monthly compounding for the zero curve, on an actual/365 basis. The par yield curve was compounded annually on an actual/actual basis. Derive the zero curve within 50 iterations.
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates,... Settle, OutputCompounding, OutputBasis, InputCompounding,... InputBasis, MaxIterations)
which returns the zero curve ZeroRates
at the maturity dates CurveDates
.
ZeroRates
= 0.0461 0.0498 0.0519 0.0520 0.0510 0.0510 0.0508 0.0520 0.0543 0.0530CurveDates
= 730796 730831 730866 730887 730914 730943 730971 731027 731098 731167
For readability, ParRates
and ZeroRates
are shown only to the basis point. However, MATLAB computes them at full precision. If you enter ParRates
as shown, ZeroRates
may differ due to rounding.
See Also
zero2pyld
and other functions for Term Structure of Interest Rates
![]() | pvvar | ret2tick | ![]() |