Main Content

chooserbybls

Price European simple chooser options using Black-Scholes model

Description

example

Price = chooserbybls(RateSpec,StockSpec,Settle,Maturity,Strike,ChooseDate) computes the price for European simple chooser options using the Black-Scholes model.

Examples

collapse all

Consider a European chooser option with an exercise price of $60 on June 1, 2007. The option expires on December 2, 2007. Assume the underlying stock provides a continuous dividend yield of 5% per annum, is trading at $50, and has a volatility of 20% per annum. The annualized continuously compounded risk-free rate is 10% per annum. Assume that the choice must be made on August 31, 2007. Using this data:

AssetPrice = 50;
Strike = 60;
Settlement = datetime(2007,1,1);
Maturity = datetime(2007,12,2); 
ChooseDate = datetime(2007,8,31);
RiskFreeRate = 0.1;
Sigma = 0.20;
Yield = 0.05
Yield = 0.0500

Define the RateSpec and StockSpec.

RateSpec = intenvset('Compounding', -1, 'Rates', RiskFreeRate, 'StartDates',...
Settlement, 'EndDates', Maturity);
StockSpec = stockspec(Sigma, AssetPrice,'continuous',Yield);

Price the chooser option.

Price  = chooserbybls(RateSpec, StockSpec, Settlement, Maturity,...
Strike, ChooseDate)
Price = 9.2781

Input Arguments

collapse all

Annualized zero rate term structure, specified by the RateSpec obtained from intenvset. For information on the interest-rate specification, see intenvset.

Data Types: struct

Stock specification for underlying asset, specified using StockSpec obtained from stockspec. For information on the stock specification, see stockspec.

stockspec can handle other types of underlying assets. For example, stocks, stock indices, and commodities. If dividends are not specified in StockSpec, dividends are assumed to be 0.

Note

Only dividends of type continuous can be considered for choosers.

Data Types: struct

Settlement or trade dates, specified using an NINST-by-1 vector using a datetime array, string array, or date character vectors. Settle must be earlier than Maturity.

To support existing code, chooserbybls also accepts serial date numbers as inputs, but they are not recommended.

Maturity date, specified as an NINST-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, chooserbybls also accepts serial date numbers as inputs, but they are not recommended.

Option strike price value, specified with a NINST-by-1 vector of nonnegative integers.

Data Types: double

Choose dates, specified with a NINST-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, chooserbybls also accepts serial date numbers as inputs, but they are not recommended.

Output Arguments

collapse all

Expected prices, returned as an NINST-by-1 vector.

References

[1] Rubinstein, Mark. "Options for the Undecided." Risk. Vol 4, 1991.

Version History

Introduced in R2008b

expand all