# hedging.iid: Value and optimal hedging strategy for a call or a put option... In OptHedging: Estimation of value and hedging strategy of call and put options.

## Description

Computes the value of C and the optimal hedging strategy for a call or a put option on a grid at discrete time intervals, using optimal hedging and simulations. The continuous time model is assumed to be a Levy process, so the periodic returns are i.i.d. Only the returns at the first period need to be simulated. For values of the asset not on the grid, interpolation is needed. The optimal number of shares phi to be bought at period i-1, when the discounted price is s and the discounted value of the hedging portfolio is P, is given by phi = (interpol1d(s,a[i,],minS,maxS)-P*rho)/s and the change in the discounted portfolio is phi * s. At time 0, P = interpol1d(s,C[1,],minS,maxS).

## Usage

 `1` ```hedging.iid(R,T,K,r,put,n,m,minS,maxS) ```

## Arguments

 `R` Simulated iid excess periodic returns for the first period. `T` Maturity of the option (in years). `K` Strike price. `r` Annual (continuous) interest rate. `put` 1 (default) for a put and 0 for a call. `n` Number of hedging periods. `m` Number of points of the grid. `minS` Minimum value of the grid. `maxS` Maximum value of the grid.

## Value

 `S` Points on the grid at which the option is evaluated. `C` C(i,j) represents the value of the option at period i-1 for point S(j) on the grid. `a` a(i,j) represents a value needed to compute the optimal hedging strategy at period i-1 for point S(j) on the grid. `phi1` phi1(j) is the initial number of shares of the asset to be bought if its price is S(j). `rho` Constant needed for the computation of the hedging strategy.

Bruno Remillard

## References

Chapter 3 of 'Statistical Methods for Financial Engineering, B. Remillard, CRC Press, (2013).

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54``` ```# Computes the price of a one-year maturity put option when hedged 5 times # at regular time intervals. # The model is assumed to be Black-Scholes with parameters mu and sigma, # so the excess periodic returns are Gaussian. n = 5; # number of hedging periods m = 5001; # number of points of the grid minS = 80.0; # minimum value of the grid maxS = 120.0; # maximum value of the grid S0 = 100.0; # initial value K = 100.0; # strike price T = 1.0; # maturity of the option r = 0.05; # annual (continuous) rate put = 1; # Put = 0 implies call! #Simulation of excess periodic returns sigma = 0.06; # annual volatility of the returns mu = 0.09; # annual mean of the returns Tp = T/n; rp = r*Tp; sigmap = sigma*sqrt(Tp); Kp = K*exp(-r*T); mup = mu*Tp-0.5*sigmap*sigmap; #Gaussian excess returns N = 10000; # number of simulated returns R = mup -rp +sigmap*rnorm(N); # Computation out0 = hedging.iid(R,T,K,r,put,n,m,minS,maxS) C = out0\$C; a = out0\$a; rho = out0\$rho; S = out0\$S; phi1 = out0\$phi1; # Initial value of the option computed from interpolating C C0 = interpol1d(S0,C[1,],minS,maxS); # Initial value of the option computed from interpolating C phi = (interpol1d(S0,a[1,],minS,maxS)-C0*rho)/S0; par(mfrow=c(2,1)) plot(S,C[1,],type='s',main=bquote('Put values ' * C[0] * ' at time 0 for n' ==.(n) )) plot(S,phi1,type='s',main=expression('Number of shares ' *phi[1] * ' at start')) par(new=TRUE) C0 phi ```

OptHedging documentation built on May 2, 2019, 6:39 a.m.