| Products & Services | Industries | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Financial Toolbox |
| Contents | Index |
| Learn more about Financial Toolbox |
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates, Settle, Compounding, Basis, InputCompounding)
ParRates | Column vector of annualized implied par yield rates, as decimal fractions. (Par yields = coupon rates.) In aggregate, the yield rates in ParRates constitute an implied par yield curve for the investment horizon represented by CurveDates. | |
CurveDates | Column vector of maturity dates (as serial date numbers) that correspond to the par rates. | |
Settle | Serial date number that is the common settlement date for the par rates. | |
Compounding | (Optional) Scalar value representing the periodicity in which the output zero rates are compounded when annualized. Allowed values are: | |
1 | Annual compounding | |
2 | Semiannual compounding (default) | |
3 | Compounding three times per year | |
4 | Quarterly compounding | |
6 | Bimonthly compounding | |
12 | Monthly compounding | |
365 | Daily compounding | |
Basis | (Optional) Day-count basis used to annualize the zero rates.
| |
InputCompounding | (Optional) Scalar value representing the periodicity in which the input par rates were compounded when annualized. The default is the value for Compounding. | |
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates, Settle, Compounding, Basis, InputCompounding) returns a zero curve given a par yield curve and its maturity dates.
ZeroRates | Column vector of decimal fractions. In aggregate, the rates in ZeroRates constitute a zero curve for the investment horizon represented by CurveDates. |
CurveDates | Column vector of maturity dates (as serial date numbers) corresponding to the zero rates. This vector is the same as the input vector CurveDates. |
Given
A par yield curve over a set of maturity dates
A settlement date
Annual compounding for the input par rates and monthly compounding for the output zero curve
compute a zero yield curve.
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');
InputCompounding = 1;
Compounding = 12;
[ZeroRates, CurveDates] = pyld2zero(ParRates, CurveDates,...
Settle, Compounding, [], InputCompounding)
ZeroRates =
0.0484
0.0529
0.0549
0.0550
0.0547
0.0544
0.0545
0.0551
0.0572
0.0557
CurveDates =
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.
zero2pyld and other functions for Term Structure of Interest Rates
![]() | pvvar | rdivide | ![]() |
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-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |