Financial Toolbox    
pyld2zero

Zero curve given a par yield curve

Syntax

Arguments

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
A serial date number that is the common settlement date for the par rates.
OutputCompounding
(Optional) Output compounding. A scalar that sets the compounding frequency per year for annualizing the output zero rates. Allowed values are:

1
annual compounding

2
semi-annual compounding (default)

3
compounding three times per year

4
quarterly compounding

6
bimonthly compounding

12
monthly compounding

365
daily compounding

-1
continuous compounding
OutputBasis
(Optional) Output day-count basis for annualizing the output zero rates. Allowed values are:

0
actual/actual (default)

1
30/360

2
actual/360

3
actual/365
InputCompounding
(Optional) A scalar that indicates the compounding frequency per year used for annualizing the input par rates. Allowed values are the same as for OutputCompounding. Default = OutputCompounding.
InputBasis
(Optional) Input day-count basis used for annualizing the par rates. Allowed values are the same as for OutputBasis. Default = OutputBasis.
MaxIterations
(Optional) Maximum number of iterations for deriving the zero rates in ZeroRates. A scalar. Default = 200. A larger value may slow processing.

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.

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.

Examples

Given a par yield curve over a set of maturity dates and a settlement date

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.

Execute the function

which returns the zero curve ZeroRates at the maturity dates CurveDates.

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