Documentation Center

  • Trial Software
  • Product Updates

optstockbybjs

Price American options using Bjerksund-Stensland 2002 option pricing model

Syntax

Price = optstockbybjs(RateSpec, StockSpec, Settle, Maturity,
OptSpec, Strike)

Arguments

RateSpec

The annualized continuously compounded rate term structure. For information on the interest rate specification, see intenvset.

StockSpec

Stock specification. See stockspec.

Settle

NINST-by-1 vector of settlement or trade dates.

Maturity

NINST-by-1 vector of maturity dates.

OptSpec

NINST-by-1 cell array of strings 'call' or 'put'.

Strike

NINST-by-1 vector of strike price values.

Description

Price = optstockbybjs(RateSpec, StockSpec, Settle, Maturity,
OptSpec, Strike)
computes American option prices with continuous dividend yield using the Bjerksund-Stensland 2002 option pricing model.

Price is a NINST-by-1 vector of expected option prices.

    Note:   optstockbybjs computes prices of American options with continuous dividend yield using the Bjerksund-Stensland option pricing model.

Examples

expand all

Compute the American Option Prices With Continuous Dividend Yield Using the Bjerksund-Stensland 2002 Option Pricing Model

This example shows how to compute the American option prices with continuous dividend yield using the Bjerksund-Stensland 2002 option pricing model. Consider two American stock options (a call and a put) with an exercise price of $100. The options expire on April 1, 2008. Assume the underlying stock pays a continuous dividend yield of 4% as of January 1, 2008. The stock has a volatility of 20% per annum and the annualized continuously compounded risk-free rate is 8% per annum. Using this data, calculate the price of the American call and put, assuming the following current prices of the stock: $90 (for the call) and $120 (for the put).

Settle = 'Jan-1-2008';
Maturity = 'April-1-2008';
Strike = 100;
AssetPrice = [90;120];
DivYield = 0.04;
Rate = 0.08;
Sigma = 0.20;

% define the RateSpec and StockSpec
StockSpec = stockspec(Sigma, AssetPrice, {'continuous'}, DivYield);

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rate, 'Compounding', -1);

% define the option type
OptSpec = {'call'; 'put'};

Price = optstockbybjs(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike)
Price =

    0.8420
    0.1108

The first element of the Price vector represents the price of the call ($0.84); the second element represents the price of the put option ($0.11).

References

Bjerksund, P. and G. Stensland, Closed-Form Approximation of American Options, Scandinavian Journal of Management, 1993, Vol. 9, Suppl., pp. S88-S99.

Bjerksund, P. and G. Stensland, Closed Form Valuation of American Options, Discussion paper 2002 (http://brage.bibsys.no/nhh/bitstream/URN:NBN:no-bibsys_brage_22301/1/bjerksund%20petter%200902.pdf)

See Also

| | |

Was this topic helpful?