Markets: A Rigorous Course

8.8 Black-76: options on futures, Nifty and MCX

Core about 15 min

Motivation

Nifty options are hedged with Nifty futures, and MCX options are written on futures. Black (1976) prices both with a formula that takes the futures price as the underlying and has no dividend or carry input.

The Black-76 formula#

Setup

Let FtF_t be the price at tt of a futures contract expiring at TFT_F. Entering a futures position costs nothing and gains or losses are paid daily (M07 · 7.2). Under deterministic interest rates futures and forward prices coincide (M07 · 7.2), and under Q\mathbb Q the futures price is a martingale: a position that costs nothing and is marked to market must have zero expected gain under the measure that prices everything at rr. If Ft=Ste(r−q)(TF−t)F_t=S_te^{(r-q)(T_F-t)} and SS follows (8.20), Itô's lemma gives

dFt=σFt dW~t,dF_t=\sigma F_t\,d\widetilde W_t ,

the same σ\sigma as the spot and zero drift. A European option expiring at T≤TFT\le T_F with payoff (FT−K)+(F_T-K)^+ is worth e−rτEQ[(FT−K)+]e^{-r\tau}\mathbb E^{\mathbb Q}[(F_T-K)^+].

Proposition 8.8.1Black-76

c=e−rτ[FN(d1)−KN(d2)],p=e−rτ[KN(−d2)−FN(−d1)],d1,2=ln⁡(F/K)±12σ2τστ.(8.25)\begin{gathered} c=e^{-r\tau}\big[FN(d_1)-KN(d_2)\big],\qquad p=e^{-r\tau}\big[KN(-d_2)-FN(-d_1)\big],\\ d_{1,2}=\frac{\ln(F/K)\pm\frac12\sigma^2\tau}{\sigma\sqrt\tau}. \end{gathered} \tag{8.25}
Proof

FF is a GBM with drift zero under Q\mathbb Q, which is a stock with q=rq=r (its "dividend yield" exactly offsets the risk-free drift). Substitute S→FS\to F and q→rq\to r in (8.22)–(8.24): Fe−rτN(d1)−Ke−rτN(d2)Fe^{-r\tau}N(d_1)-Ke^{-r\tau}N(d_2), with d1=[ln⁡(F/K)+12σ2τ]/(στ)d_1=[\ln(F/K)+\frac12\sigma^2\tau]/(\sigma\sqrt\tau).∎

Pricing Nifty options off the future#

When the option and the future expire together (Nifty monthly options and futures, both on 29 Dec 2026 for the December series), FT=STF_T=S_T and (8.25) with F=Se(r−q)τF=Se^{(r-q)\tau} equals (8.23)–(8.24) exactly. The test test_black76_equals_bsm_on_forward checks this to 10−1210^{-12}. Parity for (8.25) is (8.5).

Worked example 8.8Nifty December options off the future

On 5 Nov 2026: F=24,719.10F=24{,}719.10, τ=54/365\tau=54/365, r=5.5%r=5.5\%. The implied carry is ln⁡(F/S)/τ=ln⁡(24,719.10/24,536.60)/0.147945=5.01%\ln(F/S)/\tau=\ln(24{,}719.10/24{,}536.60)/0.147945=5.01\%; with r=5.5%r=5.5\% that corresponds to q=0.49%q=0.49\% for this period. You do not need to believe that number. Black-76 uses FF directly. Take σ=12.5%\sigma=12.5\% as an assumed volatility (close to the 12.4% implied by that day's settlement prices, 8.10) and K=24,700K=24{,}700:

d1=ln⁡(24,719.10/24,700)+12(0.125)2(0.147945)0.1250.147945=0.000773+0.0011560.048079=0.04012,d2=−0.00796.\begin{aligned} d_1&=\frac{\ln(24{,}719.10/24{,}700)+\frac12(0.125)^2(0.147945)}{0.125\sqrt{0.147945}}\\ &=\frac{0.000773+0.001156}{0.048079}=0.04012,\qquad d_2=-0.00796 . \end{aligned}

N(d1)=0.51600N(d_1)=0.51600, N(d2)=0.49682N(d_2)=0.49682, and c=0.991896 [24,719.10×0.51600−24,700×0.49682]=479.60c=0.991896\,[24{,}719.10\times0.51600-24{,}700\times0.49682]=479.60 points; the put is 460.66460.66. One lot of the call costs 479.60×65=₹31,174479.60\times65=\text{₹}31{,}174. The settlement prices were 476.90 and 454.95, so 12.5% is slightly above the market's implied volatility for that strike.

Options on commodity futures#

MCX options on futures MCX lists options on commodity futures (gold, silver, crude oil, natural gas, copper, zinc and others; the product list is on mcxindia.com, which blocked automated access, so check it there). Under SEBI's design circular SEBI/HO/CDMRD/DMP/CIR/P/2017/55 of 13 Jun 2017, the options are European, an option's lot equals the underlying future's lot, options expire before the future's tender period, and an ITM option at expiry devolves into a futures position at the strike rather than paying cash. M10 · 10.15.4 gives the MCX execution details and costs. Devolvement does not change the valuation: receiving a long future at strike KK when the futures price is FTF_T is worth FT−KF_T-K immediately through the next mark-to-market. So Black-76 with τ\tau equal to the time to option expiry applies.

Worked example 8.9MCX gold

MCX Gold futures (lot 1 kg, quoted in ₹ per 10 g, so ₹100 per ₹1 move) traded at ₹1,38,839 for December on 2 Nov 2026 (news reports of that day; secondary, since the primary record, the MCX bhavcopy, could not be fetched automatically). Price a call and put struck at ₹1,40,000 with 20 days to option expiry, r=5.5%r=5.5\%, and an assumed volatility of 25%. Then d1=−0.1130d_1=-0.1130, and (8.25) gives a call of ₹2,698.71 and a put of ₹3,856.22 per 10 g, or ₹2,69,871 and ₹3,85,622 per lot. The futures delta of the call, ∂c/∂F=e−rτN(d1)=0.454\partial c/\partial F=e^{-r\tau}N(d_1)=0.454, means a writer of one call hedges by buying 0.454 of a gold futures lot.

Practitioner notes

  • For Nifty, Black-76 on the same-expiry future is standard. For weekly options there is no same-expiry future; desks build a synthetic forward from put–call parity at strikes near the money (the FimplF^{\text{impl}} of 8.2) and feed that into (8.25).
  • The futures delta e−rτN(d1)e^{-r\tau}N(d_1) differs from the spot delta e−qτN(d1)e^{-q\tau}N(d_1) by the factor e−(r−q)τe^{-(r-q)\tau}. When you hedge with futures, use the futures delta (for the example, 0.5118 against a spot delta of 0.5156).

Create a free account

Reading is open to everyone. An account keeps your progress, answers, notes and code drafts, and gives you the study plan, the journals and the simulator. Running code needs an account approved for it.