[Tutor] How to calculate the cumulative normal distribution
Michel Guirguis
guirguismichel at yahoo.co.uk
Wed Sep 30 08:12:20 CEST 2015
Good afternoon,
How to calculate the cumulative normal distribution function CND in order to use this figure to calculate the call option based on the Black and Scholes model.
>>> from math import*
>>> def CND(X):
m = abs(X)
[a1,a2,a3,a4,a5]=(0.31938153,-0.356563782,1.781477937,-1.821255978,1.330274429)
k = 1/(1+0.2316419*m)
CND1 = 1.0-1.0/ sqrt(2*3.1415)* exp(-m*m*0.5)
CND2 =(a1*k + a2*k*k+a3*k*k*k+a4*k*k*k*k+a5*k*k*k*k*k)
CND = CND1*CND2
>>> d1=(math.log(S/K)+(r-q+(sig*sig)*0.5)*T)/(sig*math.sqrt(T))
>>> d1
0.10606601717798211
>>> d2 =d1-sig*math.sqrt(T)
>>> d2
-0.03535533905932742
>>> call = 50*exp(-0.02*0.5)*CND(d1)-50*exp(-0.03*0.5)*CND(d2)
>>> call
Thanks,
Michel
More information about the Tutor
mailing list