# Documentation

### This is machine translation

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

# asianbycrr

Price Asian option from Cox-Ross-Rubinstein binomial tree

## Syntax

``Price = asianbycrr(CRRTree,OptSpec,Strike,Settle,ExerciseDates)``
``Price = asianbycrr(___,AmericanOpt,AvgType,AvgPrice,AvgDate)``

## Description

example

````Price = asianbycrr(CRRTree,OptSpec,Strike,Settle,ExerciseDates)` prices Asian options using a Cox-Ross-Rubinstein binomial tree.```

example

````Price = asianbycrr(___,AmericanOpt,AvgType,AvgPrice,AvgDate)` adds optional arguments for `AmericanOpt`, `AvgType`, `AvgPrice`, and `AvgDate`.```

## Examples

collapse all

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 ```

## Input Arguments

collapse all

Stock tree structure, specified by using `crrtree`.

Data Types: `struct`

Definition of option, specified as `'call'` or `'put'` using a character vector or a cell array of character vectors.

Data Types: `char` | `cell`

Option strike price value, specified with a nonnegative integer using a `NINST`-by-`1` matrix of strike price values.

To compute the value of a floating-strike Asian option, `Strike` must be specified as `NaN`. Floating-strike Asian options are also known as average strike options.

Data Types: `double`

Settlement date or trade date for the Asian option, specified as a `NINST`-by-`1` matrix of settlement or trade dates using serial date numbers or date character vectors.

### Note

The `Settle` date for every Asian option is set to the `ValuationDate` of the stock tree. The Asian argument, `Settle`, is ignored.

Data Types: `double` | `char`

Option exercise dates, specified as a serial date number or date character vector:

• For a European option, use a`NINST`-by-`1` 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 `NINST`-by-`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 `NINST`-by-`1` vector, the option can be exercised between `ValuationDate` of the stock tree and the single listed `ExerciseDates`.

Data Types: `double` | `char`

(Optional) Option type, specified as `NINST`-by-`1` positive integer flags with values:

• `0` — European

• `1` — American

Data Types: `double`

Average types, specified as `arithmetic` for arithmetic average, or `geometric` for geometric average.

Data Types: `char`

Average price of underlying asset at `Settle`, specified as a scalar.

### Note

Use this argument when `AvgDate` < `Settle`.

Data Types: `double`

Date averaging period begins, specified as a scalar.

Data Types: `char` | `double`

## Output Arguments

collapse all

Expected prices for Asian options at time 0, returned as a `NINST`-by-`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.

## References

[1] Hull, J., and A. White. “Efficient Procedures for Valuing European and American Path-Dependent Options.” Journal of Derivatives. Vol. 1, pp. 21–31.