MultAssetsOptions          package:fOptions          R Documentation

_V_a_l_u_a_t_i_o_n _o_f _M_u_t_i_p_l_e _A_s_s_e_t_s _O_p_t_i_o_n_s

_D_e_s_c_r_i_p_t_i_o_n:

     A collection and deswcription of functions to valuate  multiple
     asset options. Multiple asset options, as  the name implies, are
     options whose payoff is based  on two (or more) assets. The two
     assets are associated  with one another through their correlation
     coefficient. 

     The functions are:

       'TwoAssetCorrelationOption'  Two Asset Correlation Option,
       'EuropeanExchangeOption'     Exchange-One-Asset-For-Another ...,
       'AmericanExchangeOption'     ... European or American Option,
       'ExchangeOnExchangeOption'   Exchange Option on an Exchange Option,
       'TwoRiskyAssetsOption'       Option on the Min/Max of 2 Risky Assets,
       'SpreadApproxOption'         Spread Option Approximation.

_U_s_a_g_e:

     TwoAssetCorrelationOption(TypeFlag, S1, S2, X1, X2, Time, 
         r, b1, b2, sigma1, sigma2, rho) 
     EuropeanExchangeOption(S1, S2, Q1, Q2, Time, r, b1, b2, 
         sigma1, sigma2, rho)
     AmericanExchangeOption(S1, S2, Q1, Q2, Time, r, b1, b2, 
         sigma1, sigma2, rho, doprint)
     ExchangeOnExchangeOption(TypeFlag, S1, S2, Q, time1, Time2, r, 
         b1, b2, sigma1, sigma2, rho)
     TwoRiskyAssetsOption(TypeFlag, S1, S2, X, Time, r, b1, 
         b2, sigma1, sigma2, rho)
     SpreadApproxOption(TypeFlag, S1, S2, X, Time, r, sigma1, 
         sigma2, rho)

_A_r_g_u_m_e_n_t_s:

  b1, b2: the annualized cost-of-carry rate for the first and second 
          asset, a numeric value; e.g. 0.1 means 10% pa. 

 doprint: [AmericanExchange*] - 
           a logical flag. Should the trigger price be printed? By
          default 'FALSE'. 

Q, Q1, Q2: additionally , quantity of the first and second asset. 

       r: the annualized rate of interest, a numeric value;  e.g. 0.25
          means 25% p.a. 

     rho: the correlation coefficient between the returns on the two 
          assets. 

  S1, S2: the first and second asset price, numeric values. 

sigma1, sigma2: the annualized volatility of the first and second
          underlying  security, a numeric value; e.g. 0.3 means 30%
          volatility p.a. 

    Time: the time to maturity measured in years, a numeric value; 
          e.g. 0.5 means 6 months. 

time1, Time2: the time to maturity measured in years, a numeric value; 
          e.g. 0.5 means 6 months. 

TypeFlag: usually a character string either '"c"' for a call option  or
          a '"p"' for a put option, except for 
           [ExchangeOnExchange*] - a character string either, 
           '"1"' denotes: option to exchange 'Q*S2' for the option to
          exchange 'S2' for 'S1', 
           '"2"' denotes option to exchange the option to exchange 'S2'
           for 'S1', in return for 'Q*S2', 
           '"3"' denotes: option to exchange 'Q*S2' for the option to
          exchange 'S1' for 'S2', 
           '"4"' denotes option to exchange the option to exchange 'S1'
           for 'S2', in return for 'Q*S2'; 
           [TwoRiskyAssets*] - a character string either, 
           '"cmin"' denotes: call on the minimum, 
           '"cmax"' denotes: call on the maximum, 
           '"pmin"' denotes: call on the minimum, 
           '"pmax"' denotes: call on the maximum of two risky assets. 

       X: the exercise price, a numeric value. 

  X1, X2: the first and second exercise price, numeric values. 

_D_e_t_a_i_l_s:

     *Two-Asset Correlation Options:* 

      A two asset correlation options have two underlying assets and
     two strike  prices. A two asset correlation call option on two
     assets S1 and S2 with  a strike prices X1 and X2 has a payoff of
     max(S2-X2,0) if S1>X1 and 0  otherwise, and a put option has a
     payoff of max(X2-S2,0) if S1<X1 and 0  otherwise. Two asset
     correlation options can be priced analytically using  a model
     introduced by Zhang (1995). 
      [Haug's Book, Chapter 2.8.1] 

     *Exchange-One-Asset-For-Another Options:* 

      The exchange option gives the holder the right to exchange one
     asset for  another. The payoff for this option is the difference
     between the prices  of the two assets at expiration. The
     analytical calculation of European  exchange option is based on a
     modified Black Scholes formula originally  introduced by Margrabe
     (1978). A binomial lattice is used for the numerical  calculation
     of an American or European style exchange option. 
      [Haug's Book, Chapter 2.8.2] 

     *Exchange-On-Exchange Options:* 

      Exchange options on exchange options can be found embedded in
     many  sequential exchange opportunities [1]. As an example, a bond
     holder  converting into a stock, later exchanging the shares
     received for stocks  of an acquiring firm. This complex option can
     be priced analytically  using a model introduced by Carr (1988). 
      [Haug's Book, Chapter 2.8.3] 

     *Portfolio Options:* 

      A portfolio option is an American (or European) style option on
     the  maximum of the sum of the prices of two assets and a fixed
     strike price.  A portfolio call option on two assets S1 and S2
     with a strike price X  has a payoff of max((S1+S2)-X,0) and a put
     option has a payoff of  max((X-(S1+S2),0). A binomial lattice is
     used for the numerical  calculation of an American or European
     style portfolio options. 

     *Rainbow Options:* 

      A rainbow option is an American (or European) style option on the
     maximum  (or minimum) of two underlying assets. These types of
     rainbow options are  generally referred to as two-color rainbow
     options. There are four general  types of two-color rainbow
     options: maximum or best of two risky assets,  the minimum or
     worst of two risky assets, the better of two risky assets,  and
     the worse of two risky assets. A maximum rainbow call option on
     two  assets S1 and S2 with a strike price X has a payoff of
     max(max(S1,S2)-X,0)  and a put option has a payoff of
     max(X-max(S1,S2),0). A minimum rainbow  call option on two assets
     S1 and S2 with a strike X has a payoff of  max(min(S1,S2)-X,0) and
     a put option has a payoff of max(X-min(S1,S2),0).  Set the Strike
     parameter to a very small number (1e-8) to calculate better  and
     worse rainbow option types. The analytical calculation of European
      rainbow option is based on Rubinstein's (1991) model. A binomial 
     lattice is used for the numerical calculation of an American or
     European  style rainbow options. 

     *Spread Options:* 

      A spread option is a standard option on the difference of the
     values of  two assets. Spread options a related to exchange
     options. If the strike  price is set to zero, a spread option is
     equivalent to an exchange option.  A spread call option on two
     assets S1 and S2 with a strike price X has  a payoff of
     max(S1-S2-X,0) and a put option has a payoff of max(X-S1+S2,0). 
     The analytical calculation of European spread option is based on 
     Gauss-Legendre integration and the Black-Scholes model. A binomial
      lattice is used for the numerical calculation of an American or
     European  style spread options. 
      [Haug's Book, Chapter 2.8.5] 

     *Dual Strike Options:* 

      A dual strike option is an American (European) option whose
     payoff  involves receiving the best payoff of two standard
     American (European)  style plain options. These options have two
     underlying assets and two  strike prices. The payoff of a dual
     strike call option is the maximum  of asset one minus strike one
     or asset two minus strike two. The payoff  of a dual strike put
     option is the maximum of strike one minus asset one  or strike two
     minus asset two. The payoff of a reverse dual strike call  option
     is the maximum of asset one minus strike one or strike two minus 
     asset two. The payoff of a reverse dual strike put option is the
     maximum  of strike one minus asset one or asset two minus strike
     two. A binomial  lattice is used for the numerical calculation of
     an American or European  style dual strike and reverse dual strike
     options.

_V_a_l_u_e:

     The option price, a numeric value.

_N_o_t_e:

     The functions implement the algorithms to valuate plain vanilla 
     options as described in Chapter 2.8 of Haug's Book (1997).

_A_u_t_h_o_r(_s):

     Diethelm Wuertz for this R-Port.

_R_e_f_e_r_e_n_c_e_s:

     Black F. (1976); _The Pricing of Commodity Contracs_, Journal of
     Financial Economics 3, 167-179.

     Boyle P.P., Evnine J., Gibbs S. (1989); _Numerical Evaluation of
     Multivariate Contingent Claims_, Review of Financial Studies 2,
     241-250.

     Boyle P.P., Tse Y.K. (1990); _An Algorithm for Computing Values of
     Options on the Maximum or Minimum of Several Assets_, Journal of
     Financial and Quantitative Analysis 25, 215-227.

     Carr P.P. (1988) _The Valuation of Sequential Exchange
     Opportunities_, Journal of Finance 43, 1235-1256.

     Haug E.G. (1997);  _The Complete Guide to Option Pricing
     Formulas_,  McGraw-Hill, New York.

     Johnson H. (1987) _Options on the Maximum or the Minimum of
     Several Assets_, Journal of Financial and Quantitative Analysis
     22, 277-283.

     Kirk E. (1995); _Correlation in the Energy Markets_, in: Managing
     Energy Price Risk, Risk Publications and Enron, London, pp. 71-78.

     Margrabe W. (1998); _The Value of an Option to Exchange one Asset
     for Another_, Journal of Finance 33, 177-186.

     Rich D.R, Chance D.M. (1993); _An Alternative Approach to the
     Pricing of Options on  Multiple Assets_, Journal of Financial
     Engineering 2, 271-285.

     Rubinstein M. (1991) _Somewhere over the Rainbow_, Risk Magazine
     4, 10.

     Stulz R.M. (1982); _Options on the Minimum or Maximum of Two Risky
     Assets_, Journal of Financial Economics 10, 161-185.

     Zhang P.G. (1995);  _Correlation Digital Options_ Journal of
     Financial Engineering 3, 5.

_E_x_a_m_p_l_e_s:

     ## Examples from Chapter 2.8 in E.G. Haug's Option Guide (1997)

     ## Two Asset Correlation Options [2.8.1]:
        xmpOptions("\nStart: Two Asset Correlation Option > ")
        TwoAssetCorrelationOption(TypeFlag = "c", S1 = 52, S2 = 65, 
          X1 = 50, X2 = 70, Time = 0.5, r = 0.10, b1 = 0.10, b2 = 0.10, 
          sigma1 = 0.2, sigma2 = 0.3, rho = 0.75) 

     ## European Exchange Options [2.8.2]: 
        xmpOptions("\nNext: European Exchange Option > ")
        EuropeanExchangeOption(S1 = 22, S2 = 0.20, Q1 = 1, Q2 = 1, 
          Time = 0.1, r = 0.1, b1 = 0.04, b2 = 0.06, sigma1 = 0.2, 
          sigma2 = 0.25, rho = -0.5)
          
     ## American Exchange Options [2.8.2]:
        xmpOptions("\nNext: American Exchange Option > ")
        AmericanExchangeOption(S1 = 22, S2 = 0.20, Q1 = 1, Q2 = 1, 
          Time = 0.1, r = 0.1, b1 = 0.04, b2 = 0.06, sigma1 = 0.2, 
          sigma2 = 0.25, rho = -0.5)

     ## Exchange Options On Exchange Options [2.8.3]:
        xmpOptions("\nNext: Exchange On Exchange Option > ")
        for (flag in 1:4) print(
        ExchangeOnExchangeOption(TypeFlag = as.character(flag), 
          S1 = 105, S2 = 100, Q = 0.1, time1 = 0.75, Time2 = 1.0, r = 0.1, 
          b1 = 0.10, b2 = 0.10, sigma1 = 0.20, sigma2 = 0.25, rho = -0.5))

     ## Two Risky Assets Options [2.8.4]:
        xmpOptions("\nNext: Two Risky Assets Option > ")
        TwoRiskyAssetsOption(TypeFlag = "cmax", S1 = 100, S2 = 105, 
          X = 98, Time = 0.5, r = 0.05, b1 = -0.01, b2 = -0.04, 
          sigma1 = 0.11, sigma2 = 0.16, rho = 0.63)
        TwoRiskyAssetsOption(TypeFlag = "pmax", S1 = 100, S2 = 105, 
          X = 98, Time = 0.5, r = 0.05, b1 = -0.01, b2 = -0.04, 
          sigma1 = 0.11, sigma2 = 0.16, rho = 0.63)

     ## Spread-Option Approximation [2.8.5]:
        xmpOptions("\nNext: Spread-Option Approximation > ")
        SpreadApproxOption(TypeFlag = "c", S1 = 28, S2 = 20, X = 7, 
          Time = 0.25, r = 0.05, sigma1 = 0.29, sigma2 = 0.36, rho = 0.42)
         

