Advertisement
Guest User

Untitled

a guest
Apr 25th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.65 KB | None | 0 0
  1. import random
  2. import time
  3.  
  4. start_time = time.time()
  5.  
  6. S0 = 100
  7. K = 110
  8. N = 36
  9. n = 10000
  10.  
  11. rez = 0.
  12.  
  13. pas = vsp = [1]
  14. while len(pas) != N + 1:
  15.     for i in range(1, len(vsp)):
  16.         pas[i] = vsp[i] + vsp[i - 1]
  17.     pas.append(1)
  18.     vsp = [i for i in pas]
  19.  
  20. for t in range(n):
  21.     d = 1 - random.uniform(0.07, 0.1)
  22.     u = 1 + random.uniform(0.08, 0.12)
  23.     p = random.uniform(0.4, 0.7)
  24.    
  25.     for i in range(N + 1):
  26.         r = S0 * d**i * u**(N - i) - K
  27.         if r > 0:
  28.             rez += r * (1 - p)**(N - i) * p**i * pas[i]
  29.  
  30. print("Calculating example option price:")
  31. print(rez / n)
  32.  
  33. print("Time taken:", time.time() - start_time)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement