Skip to content

FRM Exam Part II · The Art of Term Structure Models: Volatility and Distribution

Cox-Ingersoll-Ross (CIR) Model and Rate-Dependent Volatility

Updated 11 October 2026 · Fact-checked

In the CIR model, rate volatility depends on the rate level: dr = k(θ − r)dt + σ√r dw. Volatility is σ√r, a decimal per year, so it shrinks as the rate falls toward zero. With a positive drift at zero (kθ > 0), this keeps rates non-negative. To solve questions, compute σ√r, then apply the drift and shocks.

Understand Cox-Ingersoll-Ross (CIR) Model and Rate-Dependent Volatility

Early term structure models used one volatility number for every rate level. That is the normal (basis-point) volatility idea. It is simple, but the rate can go negative with positive probability, because a fixed-size shock can push a low rate below zero.

Rate-dependent volatility fixes this by making the size of the shock depend on the current rate. When the rate is high, shocks are large. When the rate is low, shocks are small. Near zero, shocks become tiny, so the rate has trouble crossing zero.

The CIR model uses a square root form: dr = k(θ − r)dt + σ√r dw. Here k is the speed of mean reversion, θ is the long-run mean rate, and σ√r is the annual volatility of the rate. It is a decimal per year, so multiply by 10,000 to get basis points. Note that σ itself is not in basis points. It is a scaling constant. The volatility σ√r changes as r changes. For example, with σ = 0.10 and r = 4%, volatility is 0.10 × √0.04 = 0.02 a year, or 2% (200 bp).

The lognormal model goes further: dr = a·r·dt + σ·r·dw. Volatility is proportional to r, so basis-point volatility is σ·r. The rate stays positive because shocks scale down with the rate. Variants such as Black-Karasinski add mean reversion and a time-dependent drift.

The key contrast with Vasicek is the volatility term. Vasicek has constant volatility σ, so negative rates are possible. CIR has σ√r, so volatility shrinks as the rate nears zero. Together with a drift that is positive at r = 0 (kθ > 0), which pushes the rate back up, this keeps CIR rates non-negative. The Feller condition (2kθ ≥ σ²) goes further and makes zero unattainable, so the rate stays strictly positive. Lognormal models keep rates strictly positive, but they give a skewed distribution with fat right tails and can produce very high rates.

Key formulas to remember

CIR short-rate process
dr = k(θ − r)dt + σ√r dw
k = reversion speed, θ = long-run mean, σ = scaling constant (not in bp).
CIR basis-point volatility
Volatility of r = σ√r
Annual standard deviation of rate changes, in decimal terms (0.02 = 200 bp). Multiply by √dt for a short step.
Lognormal model
dr = a·r·dt + σ·r·dw
Basis-point volatility = σ·r. Rate stays positive.
Vasicek process (for contrast)
dr = k(θ − r)dt + σ dw
Constant volatility; negative rates possible.
Feller condition
2kθ ≥ σ²
CIR rates are non-negative because volatility shrinks near zero and the drift at r = 0 is positive (kθ > 0). The Feller condition ensures the rate never reaches zero, so it stays strictly positive. If it is violated, the rate can hit zero but is reflected and remains non-negative.
Expected rate change over a short step
E[Δr] = k(θ − r)dt
Random shock has standard deviation σ√r × √dt.

How to solve Cox-Ingersoll-Ross (CIR) Model and Rate-Dependent Volatility questions

Use this method for any question on CIR, lognormal or other rate-dependent volatility models.

  1. 1Identify the model from the volatility term: constant σ (Vasicek or normal), σ√r (CIR), or σ·r (lognormal).
  2. 2Write down the current rate r, the parameters k, θ, σ, and the time step dt in years.
  3. 3Compute the drift: k(θ − r)dt for mean-reverting models, or a·r·dt for the lognormal model.
  4. 4Compute the basis-point volatility at the current rate: σ√r (CIR) or σ·r (lognormal). Multiply by √dt for a step.
  5. 5Add the shock: new rate = r + drift + volatility × √dt × shock (shock = standard normal draw, or ±1 for a tree).
  6. 6Check conclusions: does the model keep the rate non-negative or positive, and what does it imply for skew and tails?
  7. 7Convert units carefully. Keep rates as decimals in calculations, and state the final answer in % or bp as asked.

Quickest way: Read the volatility term first

When to use it: Conceptual questions comparing models, or any question asking which model avoids negative rates.

  1. Constant σ means negative rates are possible (Vasicek, Ho-Lee, normal).
  2. σ√r means volatility falls as r falls, so rates stay non-negative (CIR).
  3. σ·r means volatility is proportional to r, so rates stay positive (lognormal).
  4. For numbers, plug r as a decimal into σ√r or σ·r, then scale by √dt.
  5. Eliminate options that mix up bp volatility with the σ parameter.

Common mistakes in Cox-Ingersoll-Ross (CIR) Model and Rate-Dependent Volatility

  • Treating σ in CIR as the basis-point volatility.

    In Vasicek and normal models, σ is the volatility, so students carry the habit over.

    Fix: In CIR the volatility is σ√r. Always multiply by the square root of the current rate.

  • Using r in percent inside the square root.

    Rates are quoted as 4%, so students write √4 instead of √0.04.

    Fix: Convert to decimals first. √0.04 = 0.20, not 2.

  • Saying CIR volatility is proportional to the rate.

    Both CIR and lognormal models have rate-dependent volatility, so they get blended.

    Fix: CIR volatility is proportional to √r. Lognormal volatility is proportional to r.

  • Claiming mean reversion alone prevents negative rates.

    Vasicek has mean reversion and students assume it is enough.

    Fix: Vasicek can still go negative. In CIR, two things work together: volatility shrinks near zero, and the drift at zero is positive (kθ > 0), so it pushes the rate back up.

  • Forgetting to scale by √dt for a short step.

    Annual volatility is used directly for a monthly move.

    Fix: Step standard deviation = annual volatility × √dt. Drift scales with dt.

  • Assuming lognormal models have no downside.

    Positivity sounds like a pure benefit.

    Fix: Remember they give right-skewed distributions and can generate very high rates, and volatility at low rates may be too small.

Worked examples

Example 1

A CIR model has k = 0.20, θ = 5%, σ = 0.15. The current short rate is 4%. Find the annual basis-point volatility and the expected rate change over one month (dt = 1/12).

Show the solution
  1. r = 0.04, so √r = 0.20.
  2. Volatility = σ√r = 0.15 × 0.20 = 0.03, or 3% a year (300 bp).
  3. Drift = k(θ − r)dt = 0.20 × (0.05 − 0.04) × (1/12) = 0.002 ÷ 12 = 0.0001667.
  4. That is about 0.01667%, or 1.67 bp.
  5. Monthly standard deviation = 0.03 × √(1/12) = 0.03 × 0.2887 = 0.00866, or about 86.6 bp.

Answer: Annual volatility is 300 bp. Expected one-month change is about +1.67 bp, with a one-month standard deviation of about 86.6 bp.

Example 2

A lognormal model has σ = 20%. Compare the annual basis-point volatility when the short rate is 2% and when it is 8%. Which rate level gives more volatility, and what does this imply about negative rates?

Show the solution
  1. Basis-point volatility = σ·r.
  2. At r = 2%: 0.20 × 0.02 = 0.004, or 40 bp.
  3. At r = 8%: 0.20 × 0.08 = 0.016, or 160 bp.
  4. The ratio is 160 ÷ 40 = 4, the same as the ratio of rates.
  5. As r approaches zero, volatility approaches zero, so shocks become too small to push the rate below zero.

Answer: Volatility is 40 bp at a 2% rate and 160 bp at 8%. Higher rates have more volatility. Because shocks vanish as r falls, the rate stays positive.

Exam tips

  • Questions often ask you to rank models by negative-rate risk: Vasicek and normal models allow negatives, CIR and lognormal do not.
  • Always convert rates to decimals before taking √r. This is the most common numerical slip.
  • Know the distinction: CIR volatility scales with √r, lognormal volatility scales with r.
  • Expect interpretation questions: low-rate environments shrink volatility in these models, which may understate risk when rates are near zero.
  • Do not overstate the Feller condition. Remember it is a parameter condition on 2kθ and σ².

Practice questions from The Art of Term Structure Models: Volatility and Distribution

Cox-Ingersoll-Ross (CIR) Model and Rate-Dependent Volatility: frequently asked questions

What is the main difference between Vasicek and CIR?

Vasicek has constant volatility σ, so rates can turn negative. CIR has volatility σ√r, which falls as the rate falls. Both have mean reversion.

How do CIR and lognormal models avoid negative interest rates?

Both make the size of random shocks depend on the rate level. As the rate nears zero, shocks shrink, so the rate cannot easily cross zero. CIR uses √r and the lognormal model uses r. In CIR, the positive drift near zero (kθ > 0) is also needed, because it pushes the rate back up while shocks shrink.

Is σ in the CIR model the basis-point volatility?

No. The volatility is σ√r, an annual figure in decimal terms that you can convert to basis points. The parameter σ is a scaling constant that is not in basis points.

What is the downside of lognormal rate models?

They produce a right-skewed distribution and can generate very large rates. They also imply very low volatility when rates are close to zero.