645 Using Monte Carlo Methods for Option Pricing
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
BACDEFG H
S
0
, current stock price
50
X, exercise price 45
Barrier 50
T, time to option exercise 0.4
r, interest rate 8%
μ
, mean stock return
15%
σ
, standard deviation of stock return
22%
n, number of subintervals of 1 period 80
Delta t 0.0125 <-- =1/B10
Up over 1 subinterval 1.0268 <-- =EXP(B7*B11+B8*SQRT(B11))
Down over 1 subinterval 0.9775 <-- =EXP(B7*B11-B8*SQRT(B11))
Interest over 1 subinterval 1.0010 <-- =EXP(B6*B11)
Runs 100
6.9666 7.8251 6.0301 7.5631 6.2022 6.0205 <-- =mcbarrierin($B$2,$B$3,$B$4,$B$13,$B$14,$B$15,INT($B$10*$B$5),$B$17)
6.2149 7.2956 7.0748 7.7456 6.4665 7.3994
7.2747 7.8567 7.4531 7.4395 7.5946 6.8954
6.6258 6.8220 6.2379 6.7264 6.9056 6.4062
6.8421 8.4597 7.2974 7.6032 6.3056 6.5011
8.4227 6.6866 7.3832 6.6680 7.6663 6.8732
7.5956 7.6050 6.9231 6.7689 7.1278 8.7135
7.5495 7.1480 6.4259 7.5199 6.1428 6.7183
Average of above 7.0831 <-- =AVERAGE(A19:F26)
Minimum 6.0205 <-- =MIN(A19:F26)
Maxmimum 8.7135 <-- =MAX(A19:F26)
Standard deviation 0.6412 <-- =STDEV(A19:F26)
PRICING BARRIER OPTIONS--VBA FUNCTION
Each time interval is divided into n subintervals. In this simulation the initial stock price = 50.00, the exercise price = 45.00,
the time to maturity = 0.40, and the unit time interval is divided into 80 subintervals. The stock price process has mean
return = 15.00% and standard deviation = 1.25%, and the interest rate = 8.00%.
There are 100 runs in each Monte Carlo simulation
As for the case discussed in section 23.6 for Asian options, as the
number of runs (cell B17) gets larger, the approximations become better,
although the improvement is not dramatic:
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
BC DEFG H IJ
Data table: Sensitivity of results on number of runs
Runs
Average
of 48
MCBarrierIn
Minimum Maximum
Standard
deviation
<-- =B31 , data table header (hidden)
50 7.1829 5.7672 8.9774 0.7927
100 6.9170 5.9491 8.3480 0.5323
150 6.8797 5.9086 8.0689 0.4978
200 6.8515 5.8530 7.6812 0.3939
250 6.9466 5.7513 7.7856 0.3819
300 6.9271 5.9635 7.8805 0.3943
350 6.9796 6.2143 7.7238 0.3588
400 6.9940 6.1547 7.7151 0.3365
450 6.9165 6.1976 7.5807 0.2864
500 6.9398 5.7926 7.5645 0.3337
550 6.8902 6.1393 7.4763 0.2693
48 MCBarrierIn Simulations for Various Numbers of
Runs
0.000
1.000
2.000
3.000
4.000
5.000
6.000
7.000
8.000
9.000
10.000
50 100 150 200 250 300 350 400 450 500 550
Runs per simulation
Average
of 48 MCBarrierIn
Minimum
Maximum
Standard
deviation