' Calculates the probability of a black scholes options to go above a certain frontier. Function phi(X As Double) As Double phi = 1 / Sqr(2 * Application.Pi()) * Exp(-X ^ 2 / 2) End Function Function fi(X As Double) As Double fi = 1 / Sqr(2 * Application.Pi()) * Exp(-X ^ 2 / 2) End Function Function Gauss(X As Double) As Double Gauss = Application.NormSDist(X) End Function Function d_1(S As Double, X As Double, t As Double, r As Double, q As Double, v As Double) As Double ' d1 result of the black-scholes formula d_1 = (Log(S / X) + (r - q + v ^ 2 / 2) * t) / (v * Sqr(t)) End Function Function prob_above(S As Double, X As Double, t As Double, r As Double, q As Double, v As Double) As Double ' Calculates the probability above a given frontier Dim d1 As Double, d2 As Double d1 = d_1(S, X, t, r, q, v) d2 = d1 - v * Sqr(t) prob_above = Gauss(d2) End Function