aywinng 发表于 2012-4-16 11:40
有人明白这个问题吗?请来帮我一下,非常感谢。自己顶
个人认为应该不适合plot3
假设n=60,PlottingDates相同
NSParYields不同(这里我用NSParYields+0.001*i)
利用loop,画出60条curves
Settle = repmat(datenum('30-Apr-2008'),[6 1]);
Maturity = [datenum('07-Mar-2009');datenum('07-Mar-2011');...
datenum('07-Mar-2013');datenum('07-Sep-2016');...
datenum('07-Mar-2025');datenum('07-Mar-2036')];
CleanPrice = [100.1;100.1;100.8;96.6;103.3;96.3];
CouponRate = [0.0400;0.0425;0.0450;0.0400;0.0500;0.0425];
Instruments = [Settle Maturity CleanPrice CouponRate];
NSModel = IRFunctionCurve.fitNelsonSiegel('Zero',datenum('30-Apr-2008'),Instruments);
CurveSettle=733528 ; %datenum('30-Apr-2008')
PlottingDates = CurveSettle+20:30:CurveSettle+365*25;
TimeToMaturity = yearfrac(CurveSettle,PlottingDates);
NSParYields = NSModel.getParYields(PlottingDates);
%plot(PlottingDates,NSParYields,'r')
%hold on
%datetick('x')
%%%%
n=60
figure;
hold on;
for i=1:n
plot(PlottingDates,(NSParYields+0.001*i));
end
datetick('x')