Black-Scholes-Merton Option Pricing Model-Derivative Pricing in Python

Post date: Feb 01, 2020 2:20:35 PM

The Black-Scholes-Merton model is one of the earliest option pricing models that was developed in the late 1960s and published in 1973 [1,2]. The most important concept behind the model is the dynamic hedging of an option portfolio in order to eliminate the market risk. First, a delta-neutral portfolio is constructed, and then it is adjusted to stay delta neutral as the market fluctuates. Finally, we arrive at a Partial-Differential Equation for the value of the option.

where

    • V denotes the option value at time t,

    • S is the stock price,

    • r is the risk-free interest rate and,

    • σ is the stock volatility.

This equation is also called a diffusion equation, and it has closed-form solutions for European call and put options. For a detailed derivation and analytical formula, see Reference [3].

In this post, we focus on the implementation of the Black-Scholes-Merton option pricing model in Python. Closed-form formula for European call and put are implemented in a Python code. The picture below shows the prices of the call and put options for the following market parameters:

    • Stock price: $45

    • Strike price: $45

    • Time to maturity: 1 year

    • Risk-free rate: 2%

    • Volatility: 25%

We compare the above results to the ones obtained by using third-party software and notice that they are in good agreement.

In the next installment, we will price these options using Monte Carlo simulation.

References:

[1] Black, Fischer; Myron Scholes (1973). The Pricing of Options and Corporate Liabilities. Journal of Political Economy. 81 (3): 637–654

[2] Merton, Robert C. (1973). Theory of Rational Option Pricing. Bell Journal of Economics and Management Science.

[3] Hull, John C. (2003). Options, Futures, and Other Derivatives. Prentice Hall

Follow the link below to download the Python program.

Originally Published Here: Black-Scholes-Merton Option Pricing Model-Derivative Pricing in Python