Σ

Option Pricing Calculator

The option calculator allows you to define the parameters needed to calculate and generate theoretical prices and option risk values for European style call and put options.

Together with these values you'll notice dynamically drawn payoff graphs that illustrate your theoretical profit and loss as well as your payoff after the option contract has expired.

All calculations run server-side using the Black-Scholes model, with results returned in real time as you adjust the input sliders.

B

Black-Scholes Model

The mathematical formula behind these calculations is the Black-Scholes option pricing model (1973). The idea behind pricing an option contract comes down to two things: the expected payoff of the option at expiration and the probability of the option expiring in the money.

Call Call Option Formula
Put Put Option Formula
d₁ d1 formula
d₂ d2 formula
SStock PriceThe current price of the underlying asset
XExercise PriceThe strike price of the option contract
rRisk Free RateAnnualised risk-free interest rate
TTime to ExpiryExpressed in years (days ÷ 365)
NNormal CDFCumulative standard normal distribution
σVolatilityAnnualised standard deviation of returns
IV

Implied Volatility

It is impossible to directly reverse the Black-Scholes formula and solve for volatility. Instead, this calculator uses a binary search (high/low iteration) — iterating through a range of volatility values until the theoretical price matches the market price to within 0.01% accuracy.

The market price is used as the target output for Black-Scholes, and the method solves for the volatility input that would generate a price equal to that market price.

High = 5 // 500% upper bound Low = 0 Do While (High - Low) > 0.0001 If BlackScholes("c", "p", S, K, T, r, (High + Low) / 2, q) > Target Then High = (High + Low) / 2 Else Low = (High + Low) / 2 End If Loop IV = (High + Low) / 2

Where (High + Low) / 2 is the mid-point volatility being tested on each iteration. The upper bound is set at 500%.

365

Volatility Day Count

When estimating volatility, it is necessary to annualise the input. Originally it was standard to use a 365 day calendar year. However, many option traders now opt for a 256 trading day calendar, on the basis that volatility can only occur while markets are open.

Option-Price uses a 365 calendar year for all calculations.

$

Dividends

Dividends are inserted as an annual effective yield rather than discrete values. Enter the expected annual dividend as a percentage of the underlying price.

F

Options on Futures

Pricing options on futures is slightly different to stock options. The difference comes down to the forward price.

Stocks use the interest rate component to determine the expected cost of holding the underlying until expiration. With a futures contract, the futures price is the forward price — so there is no need to use the interest rate for that purpose. There is, however, still a need for the interest rate to discount the option premium.

To handle this with standard Black-Scholes: enter the interest rate as normal, then use the same value for the Dividend Yield. This causes the forward price to revert to the spot (futures) price, while the interest rate is still used to discount the premium.

~

P&L Graphs

The P&L line in the Payoff Graphs displays the actual profit or loss — not the theoretical value of the position. This is why the line always crosses the x-axis at the current underlying price point.

If you want to see the theoretical value changing across a price grid, use the Matrix feature, which simulates option values across a range of underlying prices and volatilities.

</>

Source Code

This site is based on an Excel workbook with full VBA source code. You can request the spreadsheet here:

→ Get the Full Excel Workbook with VBA

Still have questions?

If anything is unclear, or you've spotted something that doesn't look right, get in touch directly.

Contact Us →