Tutorials › Stochastic Calculus › A Worked Black-Scholes Replication and Hedging Problem

The Black-Scholes Model · Tutorial 481 of 600

A Worked Black-Scholes Replication and Hedging Problem

Work through a European call from its Black–Scholes inputs to its price, Greeks, replicating portfolio, and local hedge check.

Advanced 11 min read

What You'll Learn

  • Calculate a European call price and its Delta, Gamma, Vega, Theta, and Rho from specified inputs.
  • Distinguish the replicating portfolio’s number of bond units from the value held in the bank account.
  • Verify that the stock-and-bond portfolio has the call’s initial value.
  • Check the hedge’s diffusion and drift coefficients under the physical measure.
  • Identify why Delta, not a probability involving d2, is the stock holding.
  • Interpret the replicating portfolio’s limiting positions at maturity.

From a Call Formula to a Hedge

A Black–Scholes price is more than a number: its Delta specifies the stock holding in a replicating portfolio, while the remaining value is held in the bank account. A useful hedge calculation therefore checks two distinct things. First, the initial cost of the proposed portfolio must equal the option price. Second, as the stock moves, the portfolio’s local random fluctuation must match the option’s. The calculations below make both checks explicit.

Work on a filtered probability space \((\Omega,\mathcal{F},(\mathcal{F}_t)_{t\ge0},\mathbb{P})\) carrying a Brownian motion \(B_t^{\mathbb{P}}\). Under the physical measure \(\mathbb{P}\), suppose the stock satisfies \(dS_t=\mu S_t\,dt+\sigma S_t\,dB_t^{\mathbb{P}}\), with \(S_0>0\), constant \(\mu\), and constant \(\sigma>0\). The continuously compounded interest rate \(r\) is constant, and one unit of the bank account has value \(A_t=e^{rt}\). Assume an equivalent risk-neutral measure \(\mathbb{Q}\) is available under which \(B_t^{\mathbb{Q}}\) is Brownian and \(dS_t=rS_t\,dt+\sigma S_t\,dB_t^{\mathbb{Q}}\). The physical measure \(\mathbb{P}\) describes the stock’s actual drift in this model; \(\mathbb{Q}\) is the measure used in the Black–Scholes pricing formula.

Definition: For a European call with strike \(K>0\) and maturity \(T>0\), at time \(t<T\) and stock value \(s>0\), define \(\tau=T-t\), \(d_1=\dfrac{\log(s/K)+(r+\tfrac12\sigma^2)\tau}{\sigma\sqrt{\tau}}\), and \(d_2=d_1-\sigma\sqrt{\tau}\). Its Black–Scholes price is \(C(t,s)=s\Phi(d_1)-Ke^{-r\tau}\Phi(d_2)\), where \(\Phi\) is the standard normal cumulative distribution function. The associated Delta, Gamma, Vega, Theta, and Rho are respectively \(C_s,C_{ss},C_\sigma,C_t,C_r\), with other inputs held fixed in each partial derivative.

Use the bank-account convention carefully. If \(\beta_t\) is the number of units of the bank account, its value is \(\beta_tA_t\). For a call price \(C(t,S_t)\), the candidate replicating positions are \(\Delta_t=C_s(t,S_t)\) shares and \(\beta_t=(C(t,S_t)-S_t\Delta_t)/A_t\) bank-account units. Thus the value of the bank-account holding is \(C-S\Delta\), which is not generally the same number as \(\beta_t\).

Worked Call: Price, Greeks, and Initial Positions

Worked Example: A One-Year At-the-Money Call

Take \(S_0=100\), \(K=100\), \(r=0.05\), \(\sigma=0.2\), and \(T=1\). Calculate the call price and its five Greeks at time zero, then form the initial replicating positions.

Here \(\tau=1\), \(\sigma\sqrt{\tau}=0.2\), and \(\log(S_0/K)=\log(1)=0\). Therefore \(d_1=(0+0.07)/0.2=0.35\) and \(d_2=0.35-0.2=0.15\). Using \(\Phi(0.35)\approx0.6368\), \(\Phi(0.15)\approx0.5596\), and \(e^{-0.05}\approx0.9512\), the call price is

$$ C(0,100)=100(0.6368)-100(0.9512)(0.5596)\approx63.68-53.23=10.45. $$

For the Greeks, write \(\phi(x)=\dfrac{1}{\sqrt{2\pi}}e^{-x^2/2}\), so \(\phi(0.35)\approx0.3752\). The Black–Scholes call formulas give Delta \(\Phi(d_1)\), Gamma \(\dfrac{\phi(d_1)}{s\sigma\sqrt{\tau}}\), Vega \(s\phi(d_1)\sqrt{\tau}\), Theta \(-\dfrac{s\phi(d_1)\sigma}{2\sqrt{\tau}}-rKe^{-r\tau}\Phi(d_2)\), and Rho \(K\tau e^{-r\tau}\Phi(d_2)\). Substitution yields

$$ \begin{aligned} \Delta_0&\approx0.6368,\\ \Gamma_0&\approx\frac{0.3752}{100(0.2)(1)}=0.01876,\\ \text{Vega}_0&\approx100(0.3752)(1)=37.52,\\ \Theta_0&\approx-\frac{100(0.3752)(0.2)}{2}-0.05(100)(0.9512)(0.5596)\\ &\approx-3.752-2.662=-6.414,\\ \text{Rho}_0&\approx100(1)(0.9512)(0.5596)=53.23. \end{aligned} $$

At time zero \(A_0=1\), so the number of bank-account units equals the bank-account value. The stock holding is \(0.6368\) shares, and the bank-account holding is \(C(0,100)-100\Delta_0\approx10.45-63.68=-53.23\). This is a short position in the bank account: the hedge buys stock and borrows to fund part of that purchase.

Check: valuing the positions gives \(100(0.6368)+(-53.23)=63.68-53.23=10.45\), agreeing with the call price to the displayed precision. Also, Rho is approximately \(53.23\), while the bank-account value is approximately \(-53.23\); the opposite signs are consistent with the call’s discounted-strike term.

Why Delta Cancels the Local Stock Risk

For the next result, the stochastic integrals are Ito integrals on the filtered space above. An integral \(\int_0^t H_s\,dB_s^{\mathbb{P}}\) is taken for a progressively measurable integrand \(H\) with \(\mathbb{E}\int_0^T H_s^2\,ds<\infty\); this is the class \(\mathcal{L}^2\). The Brownian integrand in the stock and hedge calculations below meets this condition on every finite horizon: \(|\Delta_t|\le1\), and the geometric Brownian stock has finite second moment on finite time intervals.

Theorem: For \(t<T\), \(s>0\), \(\sigma>0\), the Black–Scholes call price satisfies \(C_t+rsC_s+\tfrac12\sigma^2s^2C_{ss}-rC=0\). In the physical-measure stock model, the portfolio holding \(\Delta_t=C_s(t,S_t)\) shares and \(\beta_t=(C(t,S_t)-S_tC_s(t,S_t))/A_t\) units of the bank account has the same value and local change as the call. Its Brownian coefficient matches the call’s, and its drift matches as well.

Proof. The call formula is twice differentiable in \(s>0\) and differentiable in \(t<T\). Its Greeks satisfy the Black–Scholes PDE stated in the theorem. Applying Ito’s formula to the function \(f(t,s)=C(t,s)\), with \(f_t=C_t\), \(f_s=C_s\), and \(f_{ss}=C_{ss}\), gives

$$ dC(t,S_t)=\left(C_t+\mu S_tC_s+\tfrac12\sigma^2S_t^2C_{ss}\right)dt+\sigma S_tC_s\,dB_t^{\mathbb{P}}. $$

Here the correction term is explicitly \(\tfrac12 C_{ss}\,d[S]_t=\tfrac12 C_{ss}\sigma^2S_t^2dt\), since \(d[S]_t=\sigma^2S_t^2dt\). Replacing \(C_t+\tfrac12\sigma^2S_t^2C_{ss}\) by \(rC-rS_tC_s\), using the PDE, expresses the call’s change as

$$ dC(t,S_t)=\left(rC(t,S_t)+(\mu-r)S_tC_s(t,S_t)\right)dt+\sigma S_tC_s(t,S_t)\,dB_t^{\mathbb{P}}. $$

Now consider the portfolio’s local change when its positions are held over the instant \(dt\). The stock holding contributes \(\Delta_t\,dS_t\), and the bank-account value \(C-S_t\Delta_t\) accrues interest at rate \(r\). With \(\Delta_t=C_s(t,S_t)\), the resulting expression is

$$ \begin{aligned} \Delta_t\,dS_t+r(C-S_t\Delta_t)dt &=\left(\mu S_t\Delta_t+rC-rS_t\Delta_t\right)dt +\sigma S_t\Delta_t\,dB_t^{\mathbb{P}}\\ &=\left(rC+(\mu-r)S_tC_s\right)dt+\sigma S_tC_s\,dB_t^{\mathbb{P}}. \end{aligned} $$

This equals the Ito expression for \(dC(t,S_t)\), and the portfolio value is \(S_t\Delta_t+(C-S_t\Delta_t)=C\) by its definition. The Brownian coefficients match, so the instantaneous random fluctuation left by the difference between the call and portfolio is zero. The drift coefficients also match. Finally, the hedge’s Brownian integrand \(\sigma S_t\Delta_t\) is in \(\mathcal{L}^2\): its squared expectation is bounded above by \(\sigma^2\mathbb{E}[S_t^2]\), and \(\mathbb{E}[S_t^2]=S_0^2e^{(2\mu+\sigma^2)t}\) is integrable over any finite interval. \(\square\)

The local risk cancellation also identifies the stock holding. If a portfolio instead holds \(h_t\) shares, its Brownian coefficient is \(\sigma S_t h_t\), whereas the call’s is \(\sigma S_t C_s(t,S_t)\). Since \(\sigma S_t>0\), these coefficients agree if and only if \(h_t=C_s(t,S_t)\). Thus Delta is the unique stock holding that cancels the local Brownian risk in this one-stock model.

Worked Physical-Measure Hedge Check

Worked Example: Comparing Drift and Diffusion Coefficients

Use the call and initial values in the first example, but take physical stock drift \(\mu=0.08\). Check the call’s and the replicating portfolio’s local drift and Brownian coefficients at time zero. This is a coefficient comparison, not a claim that a random increment has a deterministic numerical value.

The call’s Brownian coefficient is \(\sigma S_0\Delta_0=0.2(100)(0.6368)=12.736\). Its drift, from the proved identity, is \(rC+(\mu-r)S_0\Delta_0\). Substituting the displayed values gives \(0.05(10.45)+(0.08-0.05)(100)(0.6368)=0.5225+1.9104=2.4329\).

For the portfolio, the stock contributes drift \(\mu S_0\Delta_0=0.08(100)(0.6368)=5.0944\). The bank-account holding has value approximately \(-53.23\), so its interest contribution is approximately \(0.05(-53.23)=-2.6615\). The total portfolio drift is \(5.0944-2.6615=2.4329\). Its Brownian coefficient is again \(\sigma S_0\Delta_0=12.736\).

Check: both calculations give drift \(2.4329\) and Brownian coefficient \(12.736\), to the shown precision. In particular, the drift is not generally \(rC\) under \(\mathbb{P}\); the extra term \((\mu-r)S\Delta\) appears in both the call and the portfolio.

At Maturity and a Common Hedging Error

Worked Example: The Hedge at the Payoff Boundary

Keep \(K=100\) and consider the call payoff at maturity, \(C(T,S_T)=(S_T-K)^+=\max(S_T-K,0)\). Evaluate the payoff for \(S_T=110\) and \(S_T=90\), and identify the limiting replicating positions away from the strike.

For \(S_T=110>K\), the payoff is \(110-100=10\). As \(t\) approaches \(T\) with the terminal stock value above \(K\), \(d_1\) and \(d_2\) tend to \(+\infty\), so \(\Phi(d_1)\) and \(\Phi(d_2)\) tend to \(1\). The limiting stock holding is one share and the bank-account value \(C-S\Delta\) tends to \((S_T-K)-S_T=-100\). The terminal portfolio value is therefore \(110-100=10\).

For \(S_T=90<K\), the payoff is \(\max(90-100,0)=0\). In this case \(d_1,d_2\) tend to \(-\infty\), both distribution values tend to zero, and the limiting stock and bank-account positions are both zero. Their value is \(0\), matching the payoff.

Check: in each strict case \(S_T>K\) or \(S_T<K\), the limiting stock-and-bank-account value agrees with the payoff. At \(S_T=K\), the payoff has a kink; the terminal payoff is defined there, but the smooth pre-maturity Greek formulas do not give a two-sided terminal Delta at that point.

A frequent error is to use \(\Phi(d_2)\) as the number of shares. In the first example, that would mean holding \(0.5596\) shares rather than the correct \(0.6368\). The difference is \(0.6368-0.5596=0.0772\) shares, leaving a Brownian-coefficient error of \(0.2(100)(0.0772)=1.544\). The stock holding is Delta, \(\Phi(d_1)\); \(\Phi(d_2)\) appears in the discounted-strike term and in Rho. Confusing those roles breaks the local risk cancellation even if the initial option price was calculated correctly.

Takeaway: In the Black–Scholes call hedge, hold \(C_s\) shares and place the residual value \(C-SC_s\) in the bank account. The PDE makes the portfolio’s drift agree with the option’s, while the Delta choice makes their Brownian coefficients agree. The hedge is a dynamic, continuously rebalanced position; its initial cost check alone is not enough.

Check Your Understanding

Use the definitions and checks in the discussion to work through these questions.

  1. For a call with \(S_0=K\), \(r=0\), \(\sigma=0.2\), and \(T=1\), calculate \(d_1\), \(d_2\), and the Delta.
  2. Explain why the number of bank-account units is \((C-S\Delta)/A_t\), rather than \(C-S\Delta\) at every time.
  3. For a proposed stock holding \(h_t\), write the difference between its Brownian coefficient and the call’s coefficient. Under what condition on \(S_t\) and \(\sigma\) does equality force \(h_t=\Delta_t\)?
  4. Under the physical measure, why can the call’s drift differ from \(rC\), and what additional term appears?
  5. For a terminal stock value strictly below the strike, what are the limiting call payoff, stock holding, and bank-account value?