www.gusucode.com > fininst 案例源码程序 matlab代码 > fininst/FuturePriceTreasuryBondsCurYieldExample.m
%% Determine Future Prices of Treasury Bonds Given the Current Yield % This example shows how to determine the future price of two Treasury % bonds based upon a spot rate curve constructed from data for November 14, % 2002. %% % Copyright 2015 The MathWorks, Inc. % construct spot curve from Nov 14, data Bonds = [datenum('02/13/2003'), 0; datenum('05/15/2003'), 0; datenum('10/31/2004'), 0.02125; datenum('11/15/2007'), 0.03; datenum('11/15/2012'), 0.04; datenum('02/15/2031'), 0.05375]; Yields = [1.20; 1.25; 1.86; 2.99; 4.02; 4.93]/100; Settle = datenum('11/15/2002'); [ZeroRates, CurveDates] = ... zbtyield(Bonds, Yields, Settle); SpotCurve = [CurveDates, ZeroRates]; % calculate a particular bond's future quoted price RefDate = [datenum('1-Dec-2002'); datenum('1-Mar-2003')]; MatFut = [datenum('15-Dec-2002'); datenum('15-Mar-2003')]; Maturity = [datenum('15-Aug-2009');datenum('15-Aug-2010')]; CouponRate = [0.06;0.0575]; ConvFactor = convfactor(RefDate, Maturity, CouponRate); Yield = [0.03576; 0.03773]; Interpolation = 1; [QtdFutPrice, AccrInt] = tfutbyyield(SpotCurve, Yield, Settle, ... MatFut, ConvFactor, CouponRate, Maturity, Interpolation)