σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1.2k Learners
LoginJoin ↗
RoadmapsSkills
AO
+1.2k Learners
Login
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1.2k Learners
LoginJoin ↗
RoadmapsSkills
AO
+1.2k Learners
Login
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Stochastic Calculus skill›Module 4 · Models beyond Brownian motion›Topic 4.3·~55 minAdvanced

Local and stochastic volatility

Skill positionModule 4 of 5 · Topic 3 of 3
4.3 Local and stochastic volatility
—Lab score— / 100Total XP—Streak—

Volatility is not a constant

Black-Scholes uses one constant σ\sigmaσ. If it were right, every option on a stock would have the same implied volatility. In real markets it does not: implied volatility changes with the strike, the smile or skew, and with the maturity. Two ideas fix this. In local volatility the number σ(S,t)\sigma(S,t)σ(S,t) is a function of price and time, and Dupire's formula picks that function so the model matches today's whole surface of option prices. In stochastic volatility the variance vvv is itself a random process. The best-known example is the Heston model, where the variance is pulled back to a long-run level.

dS=rS dt+v S dW1,dv=κ(θ−v) dt+ξv dW2,dW1 dW2=ρ dtdS=rS\,dt+\sqrt v\,S\,dW_1,\qquad dv=\kappa(\theta-v)\,dt+\xi\sqrt v\,dW_2,\qquad dW_1\,dW_2=\rho\,dtdS=rSdt+v​SdW1​,dv=κ(θ−v)dt+ξv​dW2​,dW1​dW2​=ρdt(1)

In Heston the variance is a CIR process, so everything from the last topic applies: it is pulled to θ\thetaθ at speed κ\kappaκ and stays positive if 2κθ≥ξ22\kappa\theta\ge\xi^{2}2κθ≥ξ2. The correlation ρ\rhoρ links price shocks and variance shocks. For stocks it is negative: when the price falls, volatility rises. This creates the skew, with higher implied volatility for low strikes. The two approaches differ in what they say about the future. In local volatility the volatility is a function of the price, so it moves in lockstep with it. In stochastic volatility it has its own shocks, which is closer to what markets show.

Heston numbersWith θ=0.04\theta=0.04θ=0.04 the long-run volatility is 0.04=20%\sqrt{0.04}=20\%0.04​=20%. For κ=2\kappa=2κ=2 and ξ=0.3\xi=0.3ξ=0.3 we get 2κθ=0.16≥ξ2=0.092\kappa\theta=0.16\ge\xi^{2}=0.092κθ=0.16≥ξ2=0.09, so the variance stays positive. If today's variance is v0=0.09v_0=0.09v0​=0.09 (a volatility of 30%30\%30%), the expected variance after half a year is 0.04+0.05 e−1≈0.05840.04+0.05\,e^{-1}\approx0.05840.04+0.05e−1≈0.0584, a volatility of about 24%24\%24%: the market calms down on average.
  • Smile and skew: implied volatility differs by strike and maturity, so one constant σ\sigmaσ cannot fit.
  • Local volatility: σ(S,t)\sigma(S,t)σ(S,t) is a function of price and time, fitted to today's option surface.
  • Stochastic volatility: the variance has its own shocks, and ρ<0\rho<0ρ<0 gives the skew of stocks.

Lab · what's graded

  • The long-run volatility15 pts
  • The expected variance15 pts
  • The Feller margin15 pts
  • The sign of the correlation15 pts
  • Match the vocabulary15 pts
  • Building a local volatility model10 pts
  • Why one volatility is not enough15 pts
0/ 7 answered
Tasks
1Numeric answer15 ptsNot answered

In a Heston model the long-run variance is θ=0.04\theta=0.04θ=0.04. What is the long-run volatility θ\sqrt\thetaθ​?

v=v =v=accepted: ± 0.002
2Numeric answer15 ptsNot answered

The variance starts at v0=0.09v_0=0.09v0​=0.09 with θ=0.04\theta=0.04θ=0.04 and κ=2\kappa=2κ=2. What is E[vt]=θ+(v0−θ)e−κtE[v_t]=\theta+(v_0-\theta)e^{-\kappa t}E[vt​]=θ+(v0​−θ)e−κt at t=0.5t=0.5t=0.5? Give four decimals.

e=e =e=accepted: ± 0.0003
3Numeric answer15 ptsNot answered

With κ=2\kappa=2κ=2, θ=0.04\theta=0.04θ=0.04 and ξ=0.3\xi=0.3ξ=0.3, what is 2κθ−ξ22\kappa\theta-\xi^{2}2κθ−ξ2? A positive number means the variance stays above zero.

m=m =m=accepted: ± 0.002
4Choice15 ptsNot answered

Which sign of ρ\rhoρ in the Heston model gives the usual stock skew, with higher implied volatility for low strikes?

5Match15 ptsNot answered

Match each term with its meaning.

Pick the partner of each item on the left.

Volatility smile
Local volatility
Heston model
ρ\rhoρ
6Order the steps10 ptsNot answered

Put the steps in order.

Drag to reorder, or focus an item, press Space to lift it, the arrow keys to move it and Space to drop it.

  1. 1Simulate and price with the fitted function
  2. 2Turn the prices into an implied volatility surface
  3. 3Collect option prices for many strikes and maturities
  4. 4Apply Dupire's formula to get the function
7Explain in words15 ptsNot answered

In one or two sentences, explain why a single constant volatility cannot match the option prices seen in the market.

Math modeKeyboard or LaTeX inputTask 1 of 7 · Ctrl ⏎ to check

Log in to run your code.

Every lecture is free to read. Create an account or log in to run code, run tests and submit this lab.

  • In-browser IDE with a bash terminal — nothing to install
  • Instant grading, XP and your place on the skill
Create an accountLog in
OR
Continue with GitHub