The “Greek” θ = ∂ V/∂ t - Derivation & Graphs.

Define BS formulae and associated functions.

d1[S_,K_,r_,delta_,sigma_,T_,t_]:=(Log[S/K]+(r-delta+sigma^2/2)(T-t))/(sigma*Sqrt[T-t]);

d2[S_,K_,r_,delta_,sigma_,T_,t_]:=(Log[S/K]+(r-delta-sigma^2/2)(T-t))/(sigma*Sqrt[T-t]);

CNorm[d_]:=CDF[NormalDistribution[0,1],d];

VCall[S_,K_,r_,delta_,sigma_,T_,t_]:=S*Exp[-delta*(T-t)]*CNorm[d1[S,K,r,delta,sigma,T,t]]-K*Exp[-r*(T-t)]*CNorm[d2[S,K,r,delta,sigma,T,t]];

VPut[S_,K_,r_,delta_,sigma_,T_,t_]:=K*Exp[-r*(T-t)]*CNorm[-d2[S,K,r,delta,sigma,T,t]]-S*Exp[-delta*(T-t)]*CNorm[-d1[S,K,r,delta,sigma,T,t]];

The “Greek” θ = ∂ V/∂ t

Compute the time derivative of V(call) for θ :

K=.;
CallTimeDerivative=D[VCall[S,K,r,delta,sigma,T,t],t]

Simplify the time derivative of V(call) for θ :

FullSimplify[CallTimeDerivative]

Compute and simplify the time derivative of V for θ :

FullSimplify[D[VPut[S,K,r,delta,sigma,T,t],t]]

Define Function Representation For θ :

CTheta[S_,K_,r_,delta_,sigma_,T_,t_]:=(1/4) (-2 (E^(r (t-T))) K r (1+Erf[(((1/2) (2 delta-2 r+(sigma^2)) (t-T)+Log[(S/K)])/((Sqrt[2]) sigma (Sqrt[-t+T])))])+(E^(delta (t-T))) S (-(((E^(-(((((-delta+r+((sigma^2)/2)) (-t+T)+Log[(S/K)]))^2)/(2 (sigma^2) (-t+T))))) (Sqrt[(2/π)]) sigma)/(Sqrt[-t+T]))+2 delta (1+Erf[(((-delta+r+((sigma^2)/2)) (-t+T)+Log[(S/K)])/((Sqrt[2]) sigma (Sqrt[-t+T])))])));

PTheta[S_,K_,r_,delta_,sigma_,T_,t_]:=(1/4) (2 (E^(r (t-T))) K r Erfc[(((1/2) (2 delta-2 r+(sigma^2)) (t-T)+Log[(S/K)])/((Sqrt[2]) sigma (Sqrt[-t+T])))]+(E^(delta (t-T))) S (-(((E^(-(((((-delta+r+((sigma^2)/2)) (-t+T)+Log[(S/K)]))^2)/(2 (sigma^2) (-t+T))))) (Sqrt[(2/π)]) sigma)/(Sqrt[-t+T]))-2 delta Erfc[(((-delta+r+((sigma^2)/2)) (-t+T)+Log[(S/K)])/((Sqrt[2]) sigma (Sqrt[-t+T])))]));

Plot (Subscript[θ, call])((Subscript[S, t])) For Various Strike Prices

Plot[{CTheta[S,100,.05,.02,.1,1,0],CTheta[S,90,.05,.02,.1,1,0],CTheta[S,110,.05,.02,.1,1,0],CTheta[S,120,.05,.02,.1,1,0],CTheta[S,80,.05,.02,.1,1,0]},{S,60,300}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, call])"},PlotLabel->"(Subscript[θ, call]) w/ various strike prices K when \nr = 5%, δ = 2%, σ = 10%, T=  1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Blue,Dashed,Thick],Directive[Blue,Thick],Directive[Red,Thick],Directive[Green,Thick],Directive[Green,Dashed]},{"K=80","K=90","K=100","K=110","K=120"},LegendFunction->"Frame"],GridLines->Automatic]

Plot (Subscript[θ, put])((Subscript[S, t])) For Various Strike Prices

Plot[{PTheta[S,100,.05,.02,.1,1,0],PTheta[S,90,.05,.02,.1,1,0],PTheta[S,110,.05,.02,.1,1,0],PTheta[S,120,.05,.02,.1,1,0],PTheta[S,80,.05,.02,.1,1,0]},{S,60,200}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, put])"},PlotLabel->"(Subscript[θ, put]) w/ various strike prices K when \nr = 5%, δ = 2%, σ = 10%, T=  1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Blue,Dashed,Thick],Directive[Blue,Thick],Directive[Red,Thick],Directive[Green,Thick],Directive[Green,Dashed]},{"K=80","K=90","K=100","K=110","K=120"},LegendFunction->"Frame"],GridLines->Automatic]

Plot (Subscript[θ, call])((Subscript[S, t])) For Various Expiration Times

Plot[{CTheta[S,100,.05,.02,.1,5,0],CTheta[S,100,.05,.02,.1,2,0],CTheta[S,100,.05,.02,.1,1,0],CTheta[S,100,.05,.02,.1,1/2,0],CTheta[S,100,.05,.02,.1,1/100,0]},{S,60,130}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, call])"},PlotLabel->"(Subscript[θ, call]) w/ various times T when \nK=100, r = 5%, δ = 2%, σ = 10%, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"T=5","T=2","T=1","T=1/2","T=1/100"},LegendFunction->"Frame"],GridLines->Automatic,PlotRange->All]

Plot (Subscript[θ, put])((Subscript[S, t])) For Various Expiration Times

Plot[{PTheta[S,100,.05,.02,.1,5,0],PTheta[S,100,.05,.02,.1,2,0],PTheta[S,100,.05,.02,.1,1,0],PTheta[S,100,.05,.02,.1,1/2,0],PTheta[S,100,.05,.02,.1,1/100,0]},{S,60,130}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, put])"},PlotLabel->"(Subscript[θ, put]) w/ various times T when \nK=100, r = 5%, δ = 2%, σ = 10%, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"T=5","T=2","T=1","T=1/2","T=1/100"},LegendFunction->"Frame"],GridLines->Automatic,PlotRange->All]

Plot (Subscript[θ, call])((Subscript[S, t])) For Various Volatilities

Plot[{CTheta[S,100,.05,.02,.75,1,0],CTheta[S,100,.05,.02,.5,1,0],CTheta[S,100,.05,.02,.1,1,0],CTheta[S,100,.05,.02,.05,1,0],CTheta[S,100,.05,.02,.01,1,0]},{S,60,400}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, call])"},PlotLabel->"(Subscript[θ, call]) w/ various volatilities σ when  \nK = 100, r = 5%, δ = 2%, T = 1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"σ=0.75","σ=0.5","σ=0.1","σ=0.05","σ=0.01"},LegendFunction->"Frame"],GridLines->Automatic]

Plot (Subscript[θ, put])((Subscript[S, t])) For Various Volatilities

Plot[{PTheta[S,100,.05,.02,.75,1,0],PTheta[S,100,.05,.02,.5,1,0],PTheta[S,100,.05,.02,.1,1,0],PTheta[S,100,.05,.02,.05,1,0],PTheta[S,100,.05,.02,.01,1,0]},{S,60,130}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, put])"},PlotLabel->"(Subscript[θ, put]) w/ various volatilities σ when  \nK = 100, r = 5%, δ = 2%, T=  1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"σ=0.75","σ=0.5","σ=0.1","σ=0.05","σ=0.01"},LegendFunction->"Frame"],GridLines->Automatic]

Plot (Subscript[θ, call])((Subscript[S, t])) For Various Dividend Reinvestment Rates δ

Plot[{CTheta[S,100,.05,.001,.25,1,0],CTheta[S,100,.05,.01,.25,1,0],CTheta[S,100,.05,.1,.25,1,0],CTheta[S,100,.05,.2,.25,1,0],CTheta[S,100,.05,.4,.25,1,0]},{S,60,130}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, call])"},PlotLabel->"(Subscript[θ, call]) w/ various dividend rates δ when  \nS = 100, r = 5%, σ = 25%, T=  1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"δ=0.001","δ=0.01","δ=0.1","δ=0.2","δ=0.4"},LegendFunction->"Frame"],GridLines->Automatic]

Plot (Subscript[θ, put])((Subscript[S, t])) For Various Dividend Reinvestment Rates δ

Plot[{PTheta[S,100,.05,.001,.25,1,0],PTheta[S,100,.05,.01,.25,1,0],PTheta[S,100,.05,.1,.25,1,0],PTheta[S,100,.05,.2,.25,1,0],PTheta[S,100,.05,.4,.25,1,0]},{S,60,130}, AxesLabel->{"(Subscript[S, t])","(Subscript[θ, put])"},PlotLabel->"(Subscript[θ, put]) w/ various dividend rates δ when  \nS = 100, r = 5%, σ = 25%, T=  1, and t = 0", PlotStyle->{{Red,Thick},{Blue,Thick},{Green,Thick},{Green,Thick,Dashed},{Blue,Thick,Dashed}}, PlotLegends->LineLegend[{Directive[Red,Thick],Directive[Blue,Thick],Directive[Green,Thick],Directive[Green,Thick,Dashed],Directive[Blue,Thick,Dashed]},{"δ=0.001","δ=0.01","δ=0.1","δ=0.2","δ=0.4"},LegendFunction->"Frame"],GridLines->Automatic]

Surface Plot of (Subscript[θ, call])((Subscript[S, t]),K )

Plot3D[CTheta[S,K,.05,.02,.75,1,0],{S,50,130},{K,50,120}, AxesLabel->{"(Subscript[S, t])","K", "(Subscript[θ, call])(S,K)"},PlotLabel->"(Subscript[θ, call])(S,K) when r = 5%, δ = 2%, σ = 0.75, T=  1, and t = 0", ColorFunction->Function[{x,y,z},Hue[0.65*(1-z)]]]

Surface Plot of (Subscript[θ, call])(σ,K )

Plot3D[CTheta[100,K,.05,.02,sigma,1,0],{sigma,0,1},{K,70,120}, PlotPoints->45,AxesLabel->{"σ","K", "(Subscript[θ, call])(σ,K)"},PlotLabel->"(Subscript[θ, call])(σ,K) when S = 100, r = 5%, δ = 2%, T=  1, and t = 0", ColorFunction->Function[{x,y,z},Hue[0.65*(1-z)]]]

Contour Plot (Subscript[θ, call])(σ,K )

Quiet[ContourPlot[CTheta[100,K,.05,.02,sigma,1,0],{sigma,0,1},{K,70,120}, Contours->45,FrameLabel->{"σ","K"},PlotLabel->"(Subscript[θ, call])(σ,K) when S = 100, r = 5%, δ = 2%, T=  1, and t = 0", PlotLegends->Automatic, ColorFunction->"TemperatureMap"]]

Surface Plot of (Subscript[θ, call])(σ,K ) - Close Up

Quiet[Plot3D[CTheta[100,K,.05,.02,sigma,1,0],{sigma,0,.05},{K,100,106}, PlotPoints->45,AxesLabel->{"σ","K", "(Subscript[θ, call])(σ,K)"},PlotLabel->"(Subscript[θ, call])(σ,K) when S = 100, r = 5%, \\nδ = 2%, T=  1, and t = 0.", ColorFunction->Function[{x,y,z},Hue[0.65*(1-z)]], PlotRange->All]]

Contour Plot of (Subscript[θ, call])(σ,K ) - Close Up

Quiet[ContourPlot[CTheta[100,K,.05,.02,sigma,1,0],{sigma,0,.05},{K,100,106}, Contours->45,FrameLabel->{"σ","K"},PlotLabel->"(Subscript[θ, call])(σ,K) when S = 100, r = 5%, \\nδ = 2%, T=  1, and t = 0", PlotLegends->Automatic, ColorFunction->"TemperatureMap"]]