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

    %% Calculate Price and Sensitivities for European Barrier Down Out and Down In Call Options

%% 
% Compute price of European barrier down out and down in call options using the following data: 
Rates = 0.035;
Settle = '01-Jan-2015';
Maturity = '01-April-2015';
Compounding = -1;
Basis = 1;  

%% 
% Define a |RateSpec|. 
 RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle, 'EndDates', Maturity, ...
     'Rates', Rates, 'Compounding', Compounding, 'Basis', Basis)  

%% 
% Define a |StockSpec|. 
AssetPrice = 19;
Volatility = 0.40;
DivType = 'Continuous'; 
DivAmount = 0.035;
StockSpec = stockspec(Volatility, AssetPrice, DivType, DivAmount)  

%% 
% Calculate the |price|, |delta|, and |gamma| for European barrier down out and down
% in call options using the Black-Scholes option pricing model. 
OptSpec = 'Call';
Strike = 20;
Barrier = 18;
BarrierSpec = {'DO';'DI'};
OutSpec = {'price', 'delta', 'gamma'};

[Price, Delta, Gamma] = barriersensbybls(RateSpec, StockSpec, OptSpec, Strike, Settle,...
Maturity,  BarrierSpec, Barrier,'OutSpec', OutSpec)