/* proc blacksh implements black scholes formula */ proc(1) = blacksh(S,K,T,r,sig); local d1,d2,c; d1 = (ln(S./K)+(r+sig^2/2).*T)./(sig.*T^0.5); d2 = d1-sig.*T^0.5; c = S.*cdfn(d1)-K./exp(r.*T).*cdfn(d2); retp(c); endp;