Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

impvbyrgw

Determine implied volatility using Roll-Geske-Whaley option pricing model for American call option

Syntax

Volatility = impvbyrgw(RateSpec, StockSpec, Settle,
Maturity, Strike, OptPrice, 'Name1', Value1...)

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.

Strike

NINST-by-1 vector of strike price values.

OptPrice

NINST-by-1 vector of American call option prices from which the implied volatilities of the underlying asset are derived.

    Note:   All optional inputs are specified as matching parameter name/parameter value pairs. The parameter name is specified as a character vector, followed by the corresponding parameter value. You can specify parameter name/parameter value pairs in any order; names are case-insensitive and partial matches are allowed provided no ambiguities exist.

Limit

(Optional) Positive scalar representing the upper bound of the implied volatility search interval. Default is 10, or 1000% per annum.

Tolerance

(Optional) Positive scalar implied volatility termination tolerance. Default is 1e-6.

Description

Volatility = impvbyrgw(RateSpec, StockSpec, Settle,
Maturity, Strike, OptPrice, 'Name1', Value1...)
computes implied volatility using the Roll-Geske-Whaley option pricing model.

Volatility is a NINST-by-1 vector of expected implied volatility values. If no solution is found, a NaN is returned.

    Note:   impvbyrgw computes implied volatility of American calls with a single cash dividend using the Roll-Geske-Whaley option pricing model.

Examples

collapse all

This example shows how to compute the implied volatility using the Roll-Geske-Whaley option pricing model. Assume that on July 1, 2008 a stock is trading at $13 and pays a single cash dividend of $0.25 on November 1, 2008. The American call option with a strike price of $15 expires on July 1, 2009 and is trading at $1.346. The annualized continuously compounded risk-free rate is 5% per annum. Calculate the implied volatility of the stock using the Roll-Geske-Whaley option pricing model.

AssetPrice = 13;
Strike = 15;
Rates = 0.05;
Settle = 'July-01-08';
Maturity = 'July-01-09';

% define the RateSpec and StockSpec
RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
 'EndDates', Maturity, 'Rates', Rates, 'Compounding', -1);

StockSpec = stockspec(NaN, AssetPrice, {'cash'}, 0.25, {'Nov 1,2008'});

Price = [1.346];
Volatility = impvbyrgw(RateSpec, StockSpec, Settle, Maturity, Strike, Price)
Volatility =

    0.3539

Related Examples

Introduced in R2008b

Was this topic helpful?