Zacznij terazZacznij za darmo

Wycena opcji metodą Blacka-Scholesa

Opcje to najszerzej stosowane na świecie instrumenty pochodne służące zarządzaniu ryzykiem cenowym aktywów. W tym ćwiczeniu wycenisz europejską opcję kupna na akcje IBM, korzystając ze wzoru Blacka-Scholesa. Dane IBM_returns zostały już wczytane do środowiska.

Na początku obliczysz zmienność sigma na podstawie IBM_returns jako annualizowane odchylenie standardowe.

Następnie użyjesz funkcji black_scholes() – przygotowanej na potrzeby tego i kolejnych ćwiczeń – aby wycenić opcje przy dwóch różnych poziomach zmienności: sigma oraz dwukrotności sigma.

Cena wykonania K, czyli cena, po której inwestor ma prawo (ale nie obowiązek) kupić akcje IBM, wynosi 80. Stopa wolna od ryzyka r wynosi 2%, a bieżąca cena rynkowa S wynosi 90.

Kod źródłowy funkcji black_scholes() znajdziesz tutaj.

To ćwiczenie jest częścią kursu

Ilościowe zarządzanie ryzykiem w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Oblicz zmienność IBM_returns jako annualizowane odchylenie standardowe sigma (annualizację zmienności wprowadzono w rozdziale 1.).
  • Oblicz cenę europejskiej opcji kupna metodą Blacka-Scholesa value_s, używając dostarczonej funkcji black_scholes(), gdy zmienność wynosi sigma.
  • Następnie wyznacz cenę opcji value_2s metodą Blacka-Scholesa, gdy zmienność wynosi 2 * sigma.
  • Wyświetl value_s i value_2s, aby sprawdzić, jak cena opcji zmienia się wraz ze wzrostem zmienności.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Compute the volatility as the annualized standard deviation of IBM returns
sigma = np.sqrt(____) * IBM_returns.____

# Compute the Black-Scholes option price for this volatility
value_s = black_scholes(S = 90, X = 80, T = 0.5, r = 0.02, 
                        sigma = ____, option_type = "call")

# Compute the Black-Scholes option price for twice the volatility
value_2s = ____(S = 90, X = 80, T = 0.5, r = 0.02, 
                sigma = ____, option_type = "call")

# Display and compare both values
print("Option value for sigma: ", ____, "\n",
      "Option value for 2 * sigma: ", ____)
Edytuj i uruchom kod