Multi-Asset Options

Overview

A standard option has a payoff involving only one underlying asset.  A multi-asset option is an option whose payoff is based on two (or more) assets.

Dual strike options

A dual strike option is a European style option whose payoff involves receiving the best payoff of two standard European style call or put options.  These options involve two underlying assets and two strike prices.  Let S1 and S2 be two assets, consider a call option on S1 with strike price K1 and consider a put option on S2 with a strike price of K2.  A dual strike option, will have a payoff of max (S1-K1, K2-S2,0) at expiry.  The FINCAD function aaDualstrike() handles such options and is calculated using an analytical formula.  We have also implemented a function, aaMulti_strk_MC() that calculates the value of an option to obtain the best from a basket of call or put options based on any number of underlyings.  This option is priced using Monte Carlo simulation.

Rainbow options

A rainbow option is a European style option on the maximum (or minimum) of two underlying assets.  In more detail, the rainbow call option of “maximum” type on two assets S1 and S2 with a strike price K has a payoff of max(max(S1, S2) –K,0) at expiry.  This type of rainbow option is handled by the FINCAD function aaRainbow_max().  The other type of rainbow option, the “minimum” type, which, for a call, has a payoff of max(min(S1,S2)-K,0), is handled by the function aaRainbow_min().  Both these cases are calculated using an analytical formula.

Spread options

A spread option is a standard European style option on the difference of the values of two assets. For example, a spread call option on underlying assets S1 and S2 with the strike price K is the option with a payoff of max(S2-S1-K,0) at expiry.  For a more detailed description of these options the reader is referred to the Spread Options FINCAD Math Reference document.

Options delivering the best (or worst) of two assets (and cash)

FINCAD provides functions valuing options with a payoff of the maximum or minimum of the values of two assets or the values of two assets and a fixed amount of cash.  Suppose S1 and S2 are prices of two risky assets and K is a fixed amount of cash.  The function aaBest_of_two() (aaWorst_of_two()) handles the option with a payoff of max(S1,S2) (resp. min(S1,S2)) at expiry.  The function aaBest_of_two_strk() (aaWorst_of_two_strk()) handles the option with a payoff of max(S1,S2,K) (resp. min(S1,S2,K)) at expiry.  These payoffs extend to include more than two assets: aaBest_of_all_MC() calculates the value and deltas for an option with payoff of max(S1,S2,…Sn), that is the maximum over any number of assets. Similarly aaBest_of_all_strk_MC(), aaWorst_of_all_MC(), and aaWorst_of_all_strk_MC() handle options on any number of assets, with payoffs that are analogous to the options’ two-asset counterparts.

The options involving two underlying can be solved using an analytical formula while the general cases are handled by Monte Carlo simulation.

Multi-Average options

FINCAD provides functionality to value options to obtain the best of any number of Asian options (average price) and / or any number of average strike options.  The options involve any number of underlyings with any strike price and may be calls or puts.  For a more detailed explanation average options and average strike options, refer to the Asian Options and Average-strike Options - Single Asset FINCAD Math Reference documents.  FINCAD has implemented the following functions to allow for an unlimited number of multiple averages within one implementation: aaMulti_Asian_MC(), aaMulti_Asian_fs_MC(), aaMulti_aver_strk_MC(), and aaMulti_aver_strk_fs_MC().  Each of these is solved using Monte Carlo simulation.

Lookback options

Lookback options offer perfect hindsight.  That is, they allow the option holder the right to purchase the underlying asset at the lowest price (call option), or sell the underlying asset at the highest price (put option) over a specified period.  In option terminology, this perfect timing allows the strike price for a call to be set at the minimum price of the underlying asset, or the strike price for a put to be set at the maximum price over the stated period.  FINCAD has implemented two functions that allow the user to define an unlimited number of lookback options within one implementation: aaMulti_look_MC() and aaMulti_look_fs_MC().  For a more detailed explanation of the lookback payoff, refer to the Lookback Options FINCAD Math Reference document. 

 

*       The _MC functions apply the Monte Carlo method for valuation and require a correlation matrix as input. The correlation matrix must be symmetric and positive semi-definite. A matrix is positive semi-definite if and only if its eigenvalues are non-negative. The eigenvalues of a symmetric matrix can be computed with the FINCAD function aaEigen.

FINCAD Functions

aaDualstrike (price_u1, price_u2, ex1, ex2, d_exp, d_v, vlt1, vlt2, rate_ann, option_type1, option_type2, stat, iter, cost_hldg1, cost_hldg2, corr)

aaRainbow_max (price_u1, price_u2, ex, d_exp, d_v, vlt1, vlt2, rate_ann, option_type, cost_hldg1, cost_hldg2, corr, stat)

aaRainbow_min (price_u1, price_u2, ex, d_exp, d_v, vlt1, vlt2, rate_ann, option_type, cost_hldg1, cost_hldg2, corr, stat)

aaSpreadopt (price_u1, price_u2, ex, d_exp, d_v, vlt1, vlt2, rate_ann, option_type, stat, iter, cost_hldg1, cost_hldg2, corr)

aaBest_of_two (price_u1, price_u2, d_exp, d_v, vlt1, vlt2, rate_ann, cost_hldg1, cost_hldg2, corr, stat)

aaWorst_of_two (price_u1, price_u2, d_exp, d_v, vlt1, vlt2, rate_ann, cost_hldg1, cost_hldg2, corr, stat)

aaBest_of_two_strk (price_u1, price_u2, ex, d_exp, d_v, vlt1, vlt2, rate_ann, cost_hldg1, cost_hldg2, corr,stat)

aaWorst_of_two_strk (price_u1, price_u2, ex, d_exp, d_v, vlt1, vlt2, rate_ann, cost_hldg1, cost_hldg2, corr,stat)

aaBest_of_all_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaBest_of_all_strk_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaWorst_of_all_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaWorst_of_all_strk_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaMax_opt_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaMin_opt_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaMulti_asian_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

aaMulti_asian_fs_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

aaMulti_strk_MC (ast_info, corr_matrix, d_v, d_exp, rate_ann, num_rnd, table_type)

aaMulti_aver_strk_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

aaMulti_aver_strk_fs_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

aaMulti_look_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

aaMulti_look_fs_MC (ast_info, corr_matrix, d_v, d_exp, d_aver, rate_ann, sam_freq, num_rnd, table_type)

Examples

Context specific examples are presented for dual strike, spread, rainbow and worst of two options on indices and equities.

Example 1:  Dual strike option

Consider a European style dual strike option on two stocks, stock 1 and stock 2, with spot prices 100 and 200, respectively.  The correlation between the log of the values of the two stock prices is 0.1.  The options on both assets are calls with strike prices of 100 and 180, respectively.  Today’s date is Feb. 1, 1998.  The option expires on Dec. 1, 1998.  Suppose the relevant annualized risk free rate is 6%, the annualized volatility of stock 1 is 20% and that of stock 2 is 15%.  Moreover, the annualized dividend yield of stock 1 is 2% and that of stock 2 is 0.  Calling FINCAD function aaDualstrike() with an iteration number of 100 we get the following results:

aaDualstrike

Argument

Description

Example Data

Switch

price_u1

underlying price of asset 1

100

 

price_u2

underlying price of asset 2

200

 

ex1

exercise price of asset 1

100

 

ex2

exercise price of asset 2

180

 

d_exp

expiry date

1-Dec-1998

 

d_v

value (settlement) date

1-Feb-1998

 

vlt1

volatility of asset 1

20%

 

vlt2

volatility of asset 2

15%

 

rate_ann

rate - annual - Actual/365

6%

 

option_type1

option type for asset 1

2

put

option_type2

option type for asset 2

1

call

stat

statistics

1,…3

 

iter

number of iterations

100

 

cost_hldg1

holding cost - asset 1

2%

 

cost_hldg2

holding cost - asset 2

0%

 

correlation coefficient

correlation coefficient

0.1

 

Results

Statistics

Description

Value

1

fair value

31.80197449

2

delta of asset 1

-0.12174733

3

delta of asset 2

0.814231513

 

Example 2:  Crack option

Consider a European crack (spread) put option on the forward prices of heating (asset 1) and jet fuel (asset 2), with spot prices 17.42 and 21.08, respectively.  The correlation between the log values of the two forward prices is 0.92.  The strike price of the option is 3.66.  Today’s date is Feb. 1, 1998.  The option has a maturity of 90 days.  Suppose the relevant annual risk free rate is 5%,  the annualized volatility of the forward price of heating oil is 24% and that of jet oil is 25%.  Calling FINCAD function aaSpreadopt() with an iteration number of 100 we get the following results:

aaSpreadopt

Argument

Description

Example Data

Switch

price_u1

underlying price of asset 1

17.42

 

price_u2

underlying price of asset 2

21.08

 

ex

exercise price

3.66

 

d_exp

expiry date

2-May-1998

 

d_v

value (settlement) date

1-Feb-1998

 

vlt1

volatility of asset 1

24%

 

vlt2

volatility of asset 2

25%

 

rate_ann

rate - annual - Actual/365

5%

 

option_type

option type

2

put

stat

statistics

1,…12

 

iter

number of iterations

100

 

cost_hldg1

holding cost - asset 1

5%

 

cost_hldg2

holding cost - asset 2

5%

 

correlation coefficient

correlation coefficient

0.92

 

Results

Statistics

Description

Value

1

fair value

0.425246995

2

delta of asset 1

0.500403624

3

delta of asset 2

-0.47978926

4

gamma of asset 1

0.150910152

5

gamma of asset 2

0.185307439

6

theta

-0.002312574

7

vega of asset 1

-0.009158072

8

vega of asset 2

0.028058376

9

vega of correlation

-0.020395381

10

rho of rate

-0.004377361

11

rho of holding cost of asset 1

-0.020141811

12

rho of holding cost of asset 2

0.024229342

 

*       Note that because the underlyings are forwards, their holding costs are set to be the risk free rate.

 

Example 3:  Rainbow option

Consider a European rainbow call option on the maximum of two stock indices, index 1 and index 2, with spot prices 200 and 190, respectively.  The correlation between the log values of the two indices is 0.1.  The strike price of the option is 190.  Today’s date is Feb. 1, 1998.  The option expires on Dec. 1, 1998.  Suppose the relevant annual risk free rate is 6%, the annualized volatility of index 1 is 20% and that of index 2 is 15%.  Moreover, the annualized dividend yield of stock 1 is 2% and that of index 2 is 1%.  Calling FINCAD function aaRainbow_max we get the following result:

aaRainbow_max

Argument

Description

Example Data

Switch

price_u1

underlying price of asset 1

200

 

price_u2

underlying price of asset 2

190

 

ex

exercise price

190

 

d_exp

expiry date

1-Dec-1998

 

d_v

value (settlement) date

1-Feb-1998

 

vlt1

volatility of asset 1

20%

 

vlt2

volatility of asset 2

15%

 

rate_ann

rate - annual - Actual/365

6%

 

option_type

option type

1

call

cost_hldg1

holding cost - asset 1

2%

 

cost_hldg2

holding cost - asset 2

1%

 

correlation coefficient

correlation coefficient

0.1

 

stat

statistics

1,…11

 

Results

Statistics

Description

Value

1

fair value

30.33113094

2

delta of asset 1

0.55119486

3

gamma of asset 1

0.009889126

4

delta of asset 2

0.37862139

5

gamma of asset 2

0.011805765

6

theta

-0.049170177

7

vega of asset 1

0.62703999

8

vega of asset 2

0.491176068

9

rho of risk-free rate

1.188858554

10

rho of holding cost of asset 1

-0.896604732

11

rho of holding cost of asset 2

-0.590897162

 

Example 4:  The worst of two

Consider a European option on two stocks, stock 1 and stock 2, with spot prices 200 and 190, respectively.  The payoff of the option is the minimum of the prices of the two assets on the expiry date and a fixed amount 190.  The correlation between the log values of the two stock prices is 0.1.  Today’s date is Feb. 1, 1998.  The option expires on Dec. 1, 1998.  Suppose the relevant annual risk free rate is 6%, the annualized volatility of stock 1 is 20% and that of stock 2 is 15%.  Moreover, the annualized dividend yield of stock 1 is 2% and that of stock 2 is 1%.  Calling FINCAD function aaWorst_of_two we get the following result:

aaWorst_of_two

Argument

Description

Example Data

Switch

price_u1

underlying price of asset 1

200

 

price_u2

underlying price of asset 2

190

 

d_exp

expiry date

1-Dec-1998

 

d_v

value (settlement) date

1-Feb-1998

 

vlt1

volatility of asset 1

20%

 

vlt2

volatility of asset 2

15%

 

rate_ann

rate - annual - Actual/365

6%

 

cost_hldg1

holding cost - asset 1

2%

 

cost_hldg2

holding cost - asset 2

1%

 

correlation coefficient

correlation coefficient

0.1

 

stat

statistic

1,…11

 

Results

Statistics

Description

Value

1

fair value

180.4783237

2

delta of asset 1

0.389315389

3

gamma of asset 1

-0.008644336

4

delta of asset 2

0.539898265

5

gamma of asset 2

-0.009578212

6

theta

0.017768883

7

vega of asset 1

-0.531012066

8

vega of asset 2

-0.373213351

9

rho of risk-free rate

0

10

rho of holding cost of asset 1

0.993841871

11

rho of holding cost of asset 2

0.718354755

 

References

[1]          Dewynne, J., Howison, S., Wilmott, P. (1993) Option Pricing, Oxford Financial Press.

[2]          Hull, J. (2005) Options Futures and Other Derivatives, Toronto: Prentice Hall Inc..

[3]          Rubinstein, M. (November 1991) Two-Color Rainbow Options, Risk Vol. 4,

[4]          Stulz, R. (July 1982) Options on the Minimum or Maximum of Two Risky Assets, Journal of Financial Economics.

 

 

Disclaimer

 

With respect to this document, FinancialCAD Corporation (“FINCAD”) makes no warranty either express or implied, including, but not limited to, any implied warranty of merchantability or fitness for a particular purpose. In no event shall FINCAD be liable to anyone for special, collateral, incidental, or consequential damages in connection with or arising out of the use of this document or the information contained in it. This document should not be relied on as a substitute for your own independent research or the advice of your professional financial, accounting or other advisors.

 

This information is subject to change without notice. FINCAD assumes no responsibility for any errors in this document or their consequences and reserves the right to make changes to this document without notice.

 

Copyright

 

Copyright © FinancialCAD Corporation 2008. All rights reserved.