AsianOptions            package:fOptions            R Documentation

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

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

     This is a collection of functions to valuate Asian options.  Asian
     options are path-dependent options, with payoffs that depend on 
     the average price of the underlying asset or the average exercise 
     price. There are two categories or types of Asian options: average
      rate options (also known as average price options) and average
     strike  options. The payoffs depend on the average price of the
     underlying  asset over a predetermined time period. An average is
     less volatile  than the underlying asset, therefore making Asian
     options less  expensive than standard European options. Asian
     options are commonly  used in currency and commodity markets.
     Asian options are of interest  in markets with thinly traded
     assets. Due to the little effect it  will have on the options
     value, options based on an average, such  as Asian options, have a
     reduced incentive to manipulate the  underlying price at
     expiration. 

     The functions are:

       1  'GeometricAverageRateOption'  Geometric Average Rate Option,
       2  'TurnWakeAsianApproxOption'   Turnbull and Wakeman's Approximation,
       3  'LevyAsianApproxOption'       Levy's Approximation.

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

     GeometricAverageRateOption(TypeFlag, S, X, Time, r, b, sigma)
     TurnWakeAsianApproxOption(TypeFlag, S, SA, X, Time, time, tau, r, b, sigma)
     LevyAsianApproxOption(TypeFlag, S, SA, X, Time, time, r, b, sigma)

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

       b: the annualized cost-of-carry rate, a numeric value;  e.g. 0.1
          means 10% pa. 

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

   S, SA: the asset price, a numeric value. 

   sigma: the annualized volatility of the underlying security,  a
          numeric value; e.g. 0.3 means 30% volatility pa.

     tau: [TurnWakeAsianApprox*] - is the time to the beginning of the
          average period. 

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

TypeFlag: a character string either '"c"' for a call option or  a '"p"'
          for a put option. 

       X: the exercise price, a numeric value. 

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

     The Geometric average is the nth root of the product of the n
     sample  points. The Arithmetic average is the sum of the stock
     values divided  by the number of sampling points. Although
     Geometric Asian options are  not commonly used in practice, they
     are often used as a good initial  guess for the price of
     arithmetic Asian options. This technique is  used to improve the
     convergence rate of the Monte Carlo model when  pricing arithmetic
     Asian options. 

     Two cases are considered, the geometric and the arithmetic
     average-rate  option. For the latter one can choose between three
     different kinds of  approximations: Turnbull and Wakeman's
     approximations, Levy's approximation  and Curran's approximation. 
      [Haug's Book, Chapter 2.12]

_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.12 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:

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

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

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

     ## Geometric Average Rate Option:
        xmpOptions("\nStart: Geometric Average Rate Option > ")
        GeometricAverageRateOption(TypeFlag = "p", S = 80, X = 85, 
              Time = 0.25, r = 0.05, b = 0.08, sigma = 0.20)

     ## Turnbull Wakeman Approximation:
        xmpOptions("\nNext: Turnbull Wakeman Option > ")
        TurnWakeAsianApproxOption(TypeFlag = "p", S = 90, SA = 88, 
          X = 95, Time = 0.50, time = 0.25, tau = 0.0, r = 0.07, 
          b = 0.02, sigma = 0.25)

     ## Levy Asian Approximation:   
        xmpOptions("\nNext: Levy Asian Option > ")
        LevyAsianApproxOption(TypeFlag = "c", S = 100, SA = 100, X = 105, 
          Time = 0.75, time = 0.50, r = 0.10, b = 0.05, sigma = 0.15)
          

