Aan de slagGa gratis aan de slag

Optieprijzen en de onderliggende waarde

Opties zijn in essentie weddenschappen op hoe de prijs van de onderliggende waarde zich in de toekomst ontwikkelt.

Een put-optie is bijvoorbeeld waardevol wanneer de spot- (markt)prijs onder de uitoefenprijs van de optie daalt. De optiehouder kan de optie uitoefenen om de onderliggende waarde te verkopen tegen de uitoefenprijs \(X\), en hem terug te kopen tegen de spotprijs \(S < X\), wat een winst oplevert van \(X - S\).

In deze oefening waardeer en visualiseer je een Europese put-optie op het aandeel IBM, opnieuw met de Black-Scholes-prijsformule, terwijl de spotprijs \(S\) verandert.

De uitoefenprijs X = 140, de tijd tot expiratie T is 1/2 jaar, en de risicovrije rente is 2%.

De op jaarbasis berekende volatiliteit van IBM is beschikbaar als sigma, en de plot-as option_axis is beschikbaar om je plot aan toe te voegen.

De broncode van de functie black_scholes() vind je hier.

Deze oefening maakt deel uit van de cursus

Kwantitatief risicobeheer in Python

Cursus bekijken

Oefeninstructies

  • Stel IBM_spot in op de eerste 100 observaties uit de tijdreeksgegevens van de spotprijs van IBM.
  • Bereken de Numpy-array option_values door te itereren via een enumeratie van IBM_spot en de prijsformule black_scholes() te gebruiken.
  • Plot option_values om de relatie te zien tussen veranderingen in de spotprijs (in blauw) en veranderingen in de optiewaarde (in rood).

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Select the first 100 observations of IBM data
IBM_spot = IBM[:____]

# Initialize the European put option values array
option_values = np.zeros(IBM_spot.size)

# Iterate through IBM's spot price and compute the option values
for i,S in enumerate(____.values):
    option_values[i] = black_scholes(S = ____, X = 140, T = 0.5, r = 0.02, 
                        sigma = ____, option_type = "put")

# Display the option values array
option_axis.plot(____, color = "red", label = "Put Option")
option_axis.legend(loc = "upper left")
plt.show()
Code bewerken en uitvoeren