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

    %% Calculate Price and Sensitivities for a Barrier Down and Out Call Option Using Finite Difference Method  
%% 
% Create a |RateSpec|. 
AssetPrice = 50;
Strike = 45;
Rate = 0.035;
Volatility = 0.30;
Settle = '01-Jan-2015';
Maturity = '01-Jan-2016';
Basis = 1;
 
RateSpec = intenvset('ValuationDate',Settle,'StartDates',Settle,'EndDates',...
Maturity,'Rates',Rate,'Compounding',-1,'Basis',Basis)  

%% 
% Create a |StockSpec|. 
StockSpec = stockspec(Volatility,AssetPrice)  

%% 
% Calculate the |Price|, |Delta|, and |Theta| of a European Down and Out call option
% using the finite difference method. 
Barrier = 40;
BarrierSpec = 'DO';
OptSpec = 'Call';
OutSpec = {'price';'delta';'theta'};
[Price, Delta, Theta] = barriersensbyfd(RateSpec,StockSpec,OptSpec,Strike,Settle,...
Maturity, BarrierSpec,Barrier,'Outspec',OutSpec)