Learn R Programming

QFRM (version 1.0.1)

AsianMC: Asian option valuation with Monte Carlo (MC) simulation.

Description

Calculates the price of an Asian option using Monte Carlo simulations to determine expected payout. Assumptions: The option follows a General Brownian Motion (BM), $ds = mu * S * dt + sqrt(vol) * S * dW$ where $dW ~ N(0,1)$. The value of $mu$ (the expected price increase) is o$r, the risk free rate of return (RoR). The averaging period is the life of the option.

Usage

AsianMC(o = OptPx(o = Opt(Style = "Asian"), NSteps = 5), NPaths = 5)

Arguments

o
The OptPx Asian option to price.
NPaths
The number of simulation paths to use in calculating the price,

Value

The option o with the price in the field PxMC based on MC simulations.

References

Hull, John C., Options, Futures and Other Derivatives, 9ed, 2014. Prentice Hall. ISBN 978-0-13-345631-8, http://www-2.rotman.utoronto.ca/~hull/ofod/index.html http://www.math.umn.edu/~spirn/5076/Lecture16.pdf

Examples

Run this code
(o = AsianMC())$PxMC #Price = ~5.00,  using default values

  o = OptPx(Opt(Style='Asian'), NSteps = 5)
  (o = AsianMC(o, NPaths=5))$PxMC #Price = ~$5

  (o = AsianMC(NPaths = 5))$PxMC # Price = ~$5

  o = Opt(Style='Asian', Right='Put',S0=10, K=15)
  o = OptPx(o, r=.05, vol=.1, NSteps = 5)
  (o = AsianMC(o, NPaths = 5))$PxMC # Price = ~$4

  #See J.C.Hull, OFOD'2014, 9-ed, ex.26.3, pp.610.
 o = Opt(Style='Asian',S0=50,K=50,ttm=1)
 o = OptPx(o,r=0.1,q=0,vol=0.4,NSteps=5)
 (o = AsianBS(o))$PxBS   #Price is 5.62.
 (o = AsianMC(o))$PxMC

Run the code above in your browser using DataLab