Black Scholes Model: Simplified Theory and Implementation

Saad Patel
3 min readMar 12, 2023

--

Abstract:

The Black-Scholes model is a mathematical formula used to estimate the value of financial options such as stock options. It was developed by economists Fischer Black and Myron Scholes in 1973.

The model uses several variables, including the price of the underlying asset, the strike price of the option, the time until expiration, the volatility of the underlying asset, and the risk-free interest rate. By inputting these variables into the formula, the model can estimate the fair price of the option.

The Black-Scholes model assumes that the underlying asset follows a random walk, which means its price movements are unpredictable and follow a normal distribution. It also assumes that there are no transaction costs or taxes and that the market is efficient.

While the Black-Scholes model has limitations, it has become a widely used tool for valuing financial options and has revolutionized the field of quantitative finance.

The Black-Scholes model is still considered a baseline in the field of quantitative finance because it provides a useful starting point for valuing financial options, despite its limitations.

One reason why it is still widely used is because the model was the first to provide a formula for pricing options, and it revolutionized the field by making it possible to calculate option prices quickly and accurately. It is also relatively easy to understand and implement, which makes it accessible to a wide range of users.

Another reason why it is still used is that it provides a useful benchmark against which other models can be compared. While the Black-Scholes model has its limitations, it is still a valuable tool for estimating the fair value of options, and it provides a helpful starting point for developing more sophisticated models.

Ultimately, in order to overcome some of its shortcomings, the Black-Scholes model has been improved and expanded throughout time. In order to increase the accuracy of option pricing, researchers have created models that take into consideration elements including interest rate fluctuations, dividend payouts, and the potential for early exercise. The Black-Scholes model, however, serves as a crucial baseline in the discipline since many times even these more sophisticated models are constructed using its principles.

Implementation in Python:

  1. Importing Libraries
import os
from math import *
from scipy.stats import norm
import numpy as np
import pandas as pd
import scipy
from datetime import datetime, timedelta
import statsmodels.api as sm
import matplotlib.pyplot as plt
import pandas_datareader as pdr
Image Source

Defining Variables of Black Scholes Model, as mentioned above

sigma = 3 #Volatility
T = 1 #volatility time to expiry T
S = 299.55 #current stock price S
r = 0.04 #short-term rate of interest per anum r
K = 90 # strike price K

Calculating d1 and d2

d1 = (1/(sigma*sqrt(T)))*((log(S/K))+(r+(sigma**2)/2)*T)
d2 = (1/(sigma*sqrt(T)))*((log(S/K))+(r-(sigma**2)/2)*T)

Calculating the price of the Call and Put option

'''scipy.stats.norm.cdf will help us in calculating cumulative distribution
function value for d1 and d2.
'''
Call = S*norm.cdf(d1) - K*exp(-r*T)*norm.cdf(d2)
Put = K*exp(-r*T)*norm.cdf(-d2)-S*norm.cdf(-d1)

Results:

# Printing the values of call an put options
print("The Price of the Call option using BSM is ", round(Call, 3))
print("The Price of the Put option using BSM is ", round(Put, 3))

>> The Price of the Call option using BSM is 279.223
>> The Price of the Put option using BSM is 66.144

Thank you!

Codebase: https://github.com/Saad2714/Quant-Research-Algorithms LinkedIn: https://www.linkedin.com/in/patelsaadn/

--

--