www.gusucode.com > fininst 案例源码程序 matlab代码 > fininst/PriceaConvertibleBondUsingaEQPTreeExample.m
%% Price Convertible Bond Using an EQP Tree % Copyright 2015 The MathWorks, Inc. %% % Create the interest-rate term structure |RateSpec|. StartDates = 'Jan-1-2014'; EndDates = 'Jan-1-2016'; Rates = 0.025; Basis = 1; RateSpec = intenvset('ValuationDate',StartDates,'StartDates',StartDates,'EndDates',EndDates,... 'Rates',Rates,'Compounding',-1,'Basis',Basis) %% % Create the |StockSpec|. AssetPrice = 110; Sigma = 0.22; Div = 0.02; StockSpec = stockspec(Sigma,AssetPrice,'continuous',Div) %% % Create the EQP tree for the equity. NumSteps = 6; TimeSpec = eqptimespec(StartDates,EndDates,NumSteps); EQPTree = eqptree(StockSpec,RateSpec,TimeSpec) %% % Define the convertible bond. The convertible bond can be called starting % on Jan 1, 2015 with a strike price of 125. Settle = 'Jan-1-2014'; Maturity = 'Jan-1-2016'; CouponRate = 0.03; CallStrike = 125; Period = 1; CallExDates = [datenum('Jan-1-2015') datenum('Jan-1-2016')]; ConvRatio = 1.5; %% % Price the convertible bond. Spread = 0.045; [Price,PriceTree,EqtTre,DbtTree] = cbondbyeqp(EQPTree,CouponRate,Settle,... Maturity,ConvRatio,'Period',Period,'Spread',Spread,'CallExDates',... CallExDates,'CallStrike',CallStrike,'AmericanCall',1)