%% Compute a Discount Curve Given a Zero Curve and Maturity Dates
% 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 is compounded daily on an actual/365 basis.

Compounding = 365;
Basis = 3;

%
% Execute the function zero2disc which returns the discount curve DiscRates at the maturity dates CurveDates.

[DiscRates, CurveDates] = zero2disc(ZeroRates, CurveDates,... 
Settle, Compounding, Basis)

% For readability, ZeroRates and DiscRates are shown here only to the basis point. However, MATLAB® software computed them at full precision. If you enter ZeroRates as shown, DiscRates may differ due to rounding.
% Copyright 2015 The MathWorks, Inc.