www.gusucode.com > fininst 案例源码程序 matlab代码 > fininst/StrippingFloorletVolatilitiesfromAtTheMoneyATMFloorsExample.m

    %% Stripping Floorlet Volatilities from At-The-Money (ATM) Floors   

%% 
% Compute the zero curve for discounting and projecting forward rates. 
ValuationDate = datenum('10-Aug-2015');
ZeroRates = [0.12 0.24 0.40 0.73 1.09 1.62]/100;             
CurveDates = datemnth(ValuationDate, [0.25 0.5 1 2 3 5]*12);
ZeroCurve = IRDataCurve('Zero',ValuationDate,CurveDates,ZeroRates)  
%% 
% Define the ATM floor volatility data. 
FloorSettle = datenum('12-Aug-2015');
FloorMaturity = datenum({'12-Aug-2016';'14-Aug-2017';'13-Aug-2018';...
    '12-Aug-2019',;'12-Aug-2020'});
FloorVolatility = [0.31;0.39;0.43;0.42;0.40];  
%% 
% Strip floorlet volatilities from ATM floors. 
[FloorletVols, FloorletPaymentDates, ATMFloorStrikes] = floorvolstrip(ZeroCurve,...
    FloorSettle, FloorMaturity, FloorVolatility);

PaymentDates = cellstr(datestr(FloorletPaymentDates));
format;
table(PaymentDates, FloorletVols, ATMFloorStrikes)