CM2 · explained

Valuing a maturity guarantee by simulation, and checking it against the formula

A unit-linked policy with a guaranteed minimum maturity value has given the policyholder a put option on their own fund. This page prices one by Monte Carlo simulation, checks it against the closed form, and shows what happens when the simulation is run under the wrong probabilities.

CM2 · Financial Engineering & Loss Reserving · 11 min read

After this page you can

Value a maturity guarantee by Monte Carlo simulation, state its standard error, and explain why the simulation must run under the risk-neutral measure

The guarantee is an option, and that is the whole insight

A unit-linked policy invests the premium in a fund and pays out whatever the fund is worth at maturity. Add a guarantee that the payout will be at least G, and the payout becomes

payout = max(FT, G) = FT + max(G − FT, 0)

In words: the fund, plus a top-up whenever the fund has fallen short.

That second term is the payoff of a European put option on the fund, struck at the guaranteed amount. The insurer has written it, usually without charging an option premium for it, and the cost of the guarantee is the value of that put.

Seeing this is most of the work, because it means the whole of option pricing applies. The guarantee needs no new theory: it needs the put formula, or a simulation that reproduces it.

Why simulate when there is a formula?

For this guarantee there is a formula, and that is exactly why it is the right example to simulate: the two answers can be compared, which is the only way to know a simulation has been built correctly.

Real guarantees usually have no formula. Any one of these breaks the closed form:

  • the guarantee ratchets upwards whenever the fund reaches a new high;
  • it applies on death or surrender as well as at maturity, so the exercise date is random;
  • the policyholder pays regular premiums, so the fund is a sum of contributions each with its own history;
  • charges are deducted from the fund, or the fund is switched between assets by a rule;
  • the guarantee depends on the path rather than the final value.

Simulation handles all of them without new mathematics: generate a path, work out what the contract pays, repeat. That generality is why it is the standard tool for valuing guarantees in practice, and why the examinable skill is setting one up correctly rather than deriving anything.

The method

Four steps, and the first is the one that gets marks.

1. Simulate under the risk-neutral measure. The fund grows at the risk-free rate, not at its expected return:

FT = F0 exp((r − ½σ2)T + σ√T · Z), with Z ~ N(0, 1)

2. Compute the payoff on each path. Here, max(G − FT, 0).

3. Average the payoffs and discount once at the risk-free rate.

4. Report the standard error. A simulated value without one is an unfinished answer.

Note that the real-world expected return on the fund appears nowhere. This is the same fact as in the binomial model and in Black-Scholes, arriving for the third time: the guarantee is priced relative to the fund, so everything the market believes about the fund's prospects is already in today's unit price.

The standard error, and how many paths

With n independent paths the estimate is a sample mean, so

standard error = s / √n, where s is the standard deviation of the payoffs

In words: the uncertainty in the answer falls with the square root of the number of paths.

That square root is the central practical fact about simulation and it is worth being blunt about. To halve the error you need four times the paths. To add one decimal place you need a hundred times as many. On the example below, two million paths give a standard error of about ₹79 on a value of about ₹60,900 — roughly a tenth of a per cent — and getting to a hundredth of a per cent would need two hundred million.

Three things reduce the work rather than brute-forcing it, and a question may ask for one:

  • Antithetic variates. For every path generated with Z, also use −Z. The two payoffs are negatively correlated, so their average has a smaller variance than two independent paths would.
  • Control variates. Simulate alongside something whose answer is known exactly, and correct the estimate by the error the simulation makes on that known quantity.
  • Importance sampling. Generate more paths in the region that matters — here, the ones where the fund falls below the guarantee — and reweight. This is the one that helps most when the guarantee is far out of the money and most paths contribute nothing at all.

The error that makes a simulation wrong rather than imprecise

Using the real-world expected return in step 1 and still discounting at the risk-free rate is the single most expensive mistake in this topic, and it is easy to make because the real-world figure is the one an investment report quotes.

It understates the guarantee, and badly. A fund expected to grow at 9% rather than 6% is less likely to fall short, so fewer paths trigger the guarantee and the average payoff is smaller. On the example below the wrong method gives ₹25,770 against a true ₹60,877 — the guarantee priced at 42% of what it is worth.

And it cannot be patched by changing the discount rate. The correct real-world discount rate for a put is negative, because a put is a hedge and an investor accepts a negative expected return to hold one. Finding that rate would require knowing the market's risk preferences, which is precisely what the risk-neutral approach avoids having to know.

There is a legitimate use for a real-world simulation, and keeping the two apart is the mark of understanding: real-world runs answer "what might happen and how bad could it get", which is a capital and solvency question. Risk-neutral runs answer "what is this worth today", which is a pricing and reserving question. Same code, different drift, different question.

Managing the guarantee once it is priced

A price is not a plan, and a question on guarantees will often ask what the insurer should do about it. Three answers:

  • Charge for it. The value spread over the term, as a charge on the fund, is the honest price. The difficulty is competitive rather than technical.
  • Reserve for it. Hold the value as a liability and revalue it as the fund moves. This is what the number above is for.
  • Hedge it. The insurer is short a put, so it can buy one, or replicate it with the delta from the option's own Greeks — selling fund units as the fund falls. Replication is what most insurers do, and it is imperfect for exactly the reason the Greeks page gives: the hedge has to be rebalanced, and that costs money in a falling market.

Questions students ask

How many paths is enough?

Enough that the standard error is small relative to how precisely the answer matters. For a reserve quoted to the nearest thousand on a value of sixty thousand, a standard error of eighty is ample and two million paths deliver it. The way to answer the question is always to compute the standard error rather than to quote a number of paths, because the variance of the payoff depends entirely on the contract.

Why is the standard error so large relative to the answer?

Because most paths pay nothing. The guarantee bites on about a third of the paths here and the other two-thirds contribute zeroes, so the payoff distribution is a spike at zero with a long tail, and that is a high-variance thing to average. The further out of the money a guarantee is, the worse this gets — which is exactly when importance sampling earns its keep.

Does the simulation need the real-world drift anywhere?

Not for the value. It is needed for a different question: how likely the guarantee is to bite in reality. On the figures below the risk-neutral probability of the fund finishing below the guarantee is 32.7% and the real-world probability is 16.4% — a factor of two apart. Quoting the risk-neutral figure as "the chance the guarantee costs us money" is wrong, and it is the sort of statement that reaches a board paper.

What if the fund is not lognormal?

Then the formula goes and the simulation stays, which is the practical argument for the method. Replace the path generator with whatever process is believed — fat tails, stochastic volatility, jumps — and the other three steps are unchanged. What must be preserved is that the chosen process grows the fund at the risk-free rate under the measure being simulated; otherwise the valuation is not a valuation.

A worked example

A single-premium unit-linked policy invests ₹10,00,000 in a fund for 10 years. The maturity value is guaranteed to be at least ₹12,00,000.

The fund follows geometric Brownian motion with a volatility of 18% a year and a real-world expected return of 9% a year. The continuously compounded risk-free rate is 6%. There are no charges and no mortality.

The policy and every figure in it are invented for this example.

  1. Identify the option

    The insurer pays the fund plus max(12,00,000 − F10, 0). That top-up is a ten-year European put on the fund, struck at ₹12,00,000, with the fund's current value of ₹10,00,000 as the underlying. It starts in the money, since the guarantee is 20% above the premium.

  2. The closed form, for something to check against

    ln(10,00,000 / 12,00,000) = ln 0.8333333 = −0.1823216
    (r + ½σ2)T = (0.06 + 0.0162) × 10 = 0.7620000
    σ√T = 0.18 × 3.1622777 = 0.5692100
    d1 = (−0.1823216 + 0.7620000) / 0.5692100 = 1.0183912
    d2 = 1.0183912 − 0.5692100 = 0.4491812
    Φ(−d1) = 0.1542460,   Φ(−d2) = 0.3266505
    Ge−rT = 12,00,000 × e−0.6 = 12,00,000 × 0.5488116 = 6,58,573.96
    value = 6,58,573.96 × 0.3266505 − 10,00,000 × 0.1542460
        = 2,15,123.50 − 1,54,246.05 = ₹60,877.45

    So the guarantee is worth 6.09% of the single premium. An insurer that granted it without charging has given away six per cent of the money on day one.

  3. The simulation

    Generate Z ~ N(0,1), compute the fund value under the risk-neutral drift, take the payoff, repeat. The exponent is

    (r − ½σ2)T = (0.06 − 0.0162) × 10 = 0.4380000
    F10 = 10,00,000 × exp(0.4380000 + 0.5692100 Z)

    Two million paths, generated in antithetic pairs so that every Z is used with its negative:

    Value
    Mean payoff at maturity₹1,10,867.67
    Standard error of that mean₹143.91
    Discounted at e−0.6₹60,845.47
    Standard error of the value₹78.98
    Closed form, for comparison₹60,877.45
  4. Have the two agreed?

    The simulation gives ₹60,845 and the formula ₹60,877, a difference of ₹32. The standard error is ₹79, so the gap is 0.41 standard errors — comfortably inside the noise, which is exactly what agreement looks like for a simulation.

    That last point is worth being clear about, because it is what distinguishes a verified simulation from a lucky one. A Monte Carlo estimate is not supposed to match the formula exactly; it is supposed to land within a standard error or two of it. An estimate that matched to the rupee would be more suspicious than one that differs by half an error. The test is the gap divided by the standard error, and here it is 0.41.

    The relative standard error is 143.91 / 1,10,867.67 = 0.13%. Halving it would need eight million paths, and a tenth of it would need two hundred million — the square root at work.

  5. The mistake, priced

    Run exactly the same simulation with the real-world drift of 9% in place of the risk-free 6%, still discounting at 6%:

    (μ − ½σ2)T = (0.09 − 0.0162) × 10 = 0.7380000
    MethodValue
    Correct: risk-neutral drift, discounted at r₹60,845
    Wrong: real-world drift, discounted at r₹25,770
    Understated by₹35,107, a factor of 2.36

    The guarantee would be reserved at 42% of its value, and nothing in the output would look wrong: the simulation runs, converges, and reports a tight standard error around the wrong number. That is what makes this error dangerous rather than merely incorrect — it is invisible unless you know to look at the drift.

  6. And the question the real-world drift does answer

    risk-neutral P(F10 < 12,00,000) = Φ(−d2) = 0.3267
    real-world P(F10 < 12,00,000) = 0.1645

    So the guarantee is worth ₹60,877 today, and the chance it actually costs the insurer anything is about one in six, not the one in three the pricing calculation uses. Both numbers are correct and they answer different questions. The first belongs in the reserve; the second belongs in a sentence explaining to the board how often this is expected to bite. Putting either in the other's place is a serious error, and being able to say which is which is the point of the exercise.

Where this fits in CM2

This page explains one idea from CM2 Financial Engineering & Loss Reserving. The full CM2 syllabus, with what each part is examined on, sits on the course page, and past-paper style mock exams with full solutions are where you find out whether the idea has stuck under time pressure.

Other CM2 topics explained

Stuck on a term rather than the idea? The actuarial glossary defines the notation used above. If something here is wrong or unclear, tell us — these pages get corrected.