CONTENTS

Exercise: Computing Delta for a Vanilla Call and Put

Prerequisites: Delta

Problem

Under Black-Scholes with S=100,K=100,T=0.5,r=0.05,q=0S = 100, K = 100, T = 0.5, r = 0.05, q = 0:

  1. Compute Δcall\Delta_{\text{call}} and Δput\Delta_{\text{put}} for three volatility regimes: σ{0.1,0.2,0.4}\sigma \in \{0.1, 0.2, 0.4\}.

  2. For σ=0.2\sigma = 0.2, compute Δcall\Delta_{\text{call}} at three spot levels: S{80,100,120}S \in \{80, 100, 120\}. What happens to delta as the option moves deeper ITM or OTM?

  3. Put-call parity check. For each σ\sigma in part 1, verify ΔcallΔput=1\Delta_{\text{call}} - \Delta_{\text{put}} = 1 (for q=0q = 0).
  4. Numerical finite-difference. For σ=0.2,S=100\sigma = 0.2, S = 100, compute Δcall\Delta_{\text{call}} by central finite difference: (C(S+h)C(Sh))/(2h)(C(S + h) - C(S - h))/(2h) with h=0.01h = 0.01. Compare to the closed-form answer.

Hint

Φ\Phi is the standard-normal CDF: use scipy.stats.norm.cdf or np.erf via (1+erf(x/2))/2(1 + \text{erf}(x/\sqrt 2))/2.
Jump to the solution when you're ready.