Gap option valuation via Monte Carlo (MC) simulation

Share:

Description

GapMC prices a gap option using the MC method. The call payoff is S_T-K when S_T>K2, where K_2 is the trigger strike. The payoff is increased by K_2-K, which can be positive or negative. The put payoff is K-S_T when S_T<K_2. Default values are from policyholder-insurance example 26.1, p.601, from referenced OFOD, 9ed, text.

Usage

1
2
3
4
GapMC(o = OptPx(Opt(Style = "Gap", Right = "Put", S0 = 5e+05, K = 4e+05, ttm =
  1, ContrSize = 1, SName =
  "Insurance coverage example #26.1, p.601, OFOD, J.C.Hull, 9ed."), r = 0.05, q
  = 0, vol = 0.2), K2 = 350000, NPaths = 5)

Arguments

o

The OptPx object (See OptPx() constructor for more information)

K2

The trigger strike price.

NPaths

The number of paths (trials) to simulate.

Value

An OptPx object. The price is stored under o$PxMC.

Author(s)

Kiryl Novikau, Department of Statistics, Rice University, Spring 2015

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. p.601

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
(o = GapMC())$PxMC  #example 26.1, p.601

o = Opt(Style='Gap', Right='Call', S0=50, K=40, ttm=1)
o = OptPx(o, vol=.2, r=.05, q = .02)
(o = GapMC(o, K2 = 45, NPaths = 5))$PxMC

o = Opt(Style='Gap', Right='Call', S0 = 50, K = 60, ttm = 1)
o = OptPx(o, vol=.25,r=.15, q = .02)
(o = GapMC(o, K2 = 55, NPaths = 5))$PxMC

o = Opt(Style='Gap', Right = 'Put', S0 = 50, K = 57, ttm = .5)
o = OptPx(o, vol = .2, r = .09, q = .2)
(o = GapMC(o, K2 = 50, NPaths = 5))$PxMC

o = Opt(Style='Gap', Right='Call', S0=500000, K=400000, ttm=1)
o = OptPx(o, vol=.2,r=.05, q = 0)
(o = GapMC(o, K2 = 350000, NPaths = 5))$PxMC

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.