Price Asian option from Cox-Ross-Rubinstein binomial tree
This example shows how to price a floating-strike Asian option using a CRR binomial tree using the file deriv.mat, which provides CRRTree. The CRRTree structure contains the stock specification and time information needed to price the option.
load deriv.mat; OptSpec = 'put'; Strike = NaN; Settle = '01-Jan-2003'; ExerciseDates = '01-Jan-2004'; Price = asianbycrr(CRRTree, OptSpec, Strike, Settle, ... ExerciseDates)
Price = 1.2177
CRRTree— Stock tree structure
Stock tree structure, specified by using
OptSpec— Definition of option
'put'| cell array of character vectors with values
Definition of option, specified as
'put' using a character vector or a cell array of character
Strike— Option strike price value
Option strike price value, specified with a nonnegative integer using a
1 matrix of strike price values.
To compute the value of a floating-strike Asian option,
must be specified as
NaN. Floating-strike Asian options are also
known as average strike options.
Settle— Settlement date or trade date
Settlement date or trade date for the Asian option, specified as a
1 matrix of settlement or trade dates
using serial date numbers or date character vectors.
Settle date for every Asian option is set to the
ValuationDate of the stock tree. The Asian argument,
Settle, is ignored.
ExerciseDates— Option exercise dates
Option exercise dates, specified as a serial date number or date character vector:
For a European option, use a
matrix of exercise dates. Each row is the schedule for one option. For a
European option, there is only one
ExerciseDates on the
option expiry date.
For an American option, use a
2 vector of exercise date
boundaries. The option can be exercised on any tree date between or including
the pair of dates on that row. If only one non-
NaN date is
listed, or if
ExerciseDates is a
1 vector, the option can be
ValuationDate of the stock tree and the
AmericanOpt— Option type
0European (default) | integer with values
(Optional) Option type, specified as
1 positive integer flags with values:
0 — European
1 — American
AvgType— Average types
arithmetic(default) | character vector with values of
Average types, specified as
arithmetic for arithmetic average,
geometric for geometric average.
AvgDate— Date averaging period begins
Date averaging period begins, specified as a scalar.
Price— Expected prices for Asian options at time
Expected prices for Asian options at time 0, returned as a
1 vector. Pricing of Asian options is
done using Hull-White (1993). Therefore, for these options there are no unique prices
on the tree nodes except for the root node.
An Asian option is a path-dependent option with a payoff linked to the average value of the underlying asset during the life (or some part of the life) of the option.
Asian options are similar to lookback options in that there are two types of Asian options: fixed (average price option) and floating (average strike option). Fixed Asian options have a specified strike, while floating Asian options have a strike equal to the average value of the underlying asset over the life of the option. For more information, see Asian Option.
 Hull, J., and A. White. “Efficient Procedures for Valuing European and American Path-Dependent Options.” Journal of Derivatives. Vol. 1, pp. 21–31.