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

    %% Price 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 of a European Down and Out call option using Finite Difference. 
Barrier = 40;
BarrierSpec = 'DO';
OptSpec = 'Call';
Price = barrierbyfd(RateSpec, StockSpec, OptSpec, Strike, Settle, Maturity,...
BarrierSpec, Barrier)