Black Scholes Variables Calculator

nicnad

Newbie
7 0
Hi,

I am looking for a calculator where I could find the value of a missing variable within the Black Scholes formula. I came across this kind of calculator once on the Internet but I can't find it anymore.

E.G.

strike price 65
stock price 60
time (days) 30
volatilitiy (%) 20
option value 10 $
dividend yield(%) 0

What is the risk free interest rate (based on black scholes formula) ?

or

strike price 65
time (days) 30
volatilitiy (%) 20
option value 10 $
risk free interest rate(%) 2
dividend yield(%) 0

What is the stock price (based on black scholes formula)?

Basically, If I have 6 out of the 7 variables from Black Scholes formula, I want a calculator that would calculate the missing variable. Anyone here knows where I could find this?

Thank you for your help.
 

Shakone

Senior member
2,458 665
There are lots of implied vol calculators around, because thats quite important, but I haven't seen a general one for all parameters, because it is often not important, it's not like someone looks at an option price and needs to find the maturity or strike for example.

I guess you could do it yourself though in excel. Take the formula, and use a root solving method.
 

nicnad

Newbie
7 0
@Ibetyou : I looked at you website and it is not exactly what I am looking for.

I already have this VBA fonction to calculate black scholes option value. Anyone knows how to isolate the other variable?


Function BSMValue(S, X, r, q, tyr, sigma, i As Boolean)
'returns Black-Sholes option value (call or put set by ion variable
'Macro by: Brett Weese
'Source: Advanced Modelling in Finance Using Excel and VBA (Jackson, Staunton)
Dim ert, eqt
Dim DOne, DTwo, NDOne, NDTwo

ert = Exp(-q * tyr)
eqt = Exp(-r * tyr)

Select Case i
Case 1 'call option
DOne = (Log(S / X) + (r - q + 0.5 * sigma ^ 2) * tyr) / _
(sigma * Sqr(tyr))
DTwo = (Log(S / X) + (r - q - 0.5 * sigma ^ 2) * tyr) / _
(sigma * Sqr(tyr))
NDOne = Application.NormSDist(DOne)
NDTwo = Application.NormSDist(DTwo)
BSMValue = S * ert * NDOne - X * eqt * NDTwo
Case 0 'put option
DOne = -(Log(S / X) + (r - q + 0.5 * sigma ^ 2) * tyr) / _
(sigma * Sqr(tyr))
DTwo = -(Log(S / X) + (r - q - 0.5 * sigma ^ 2) * tyr) / _
(sigma * Sqr(tyr))
NDOne = Application.NormSDist(DOne)
NDTwo = Application.NormSDist(DTwo)
BSMValue = -S * ert * NDOne + X * eqt * NDTwo
End Select
End Function
 
 
AdBlock Detected

We get it, advertisements are annoying!

But it's thanks to our sponsors that access to Trade2Win remains free for all. By viewing our ads you help us pay our bills, so please support the site and disable your AdBlocker.

I've Disabled AdBlock