Fin Maverick
Foundations VocabularyAccounting & ReportingEconomics & MacroQuant Methods & ProgrammingBusiness & Company AnalysisCorporate Finance & ValuationBehavioural Finance
Banking & Market InfrastructureFixed Income & RatesDerivatives & Structured ProductsPublic EquitiesTransactions & DealsPortfolio ConstructionFunds & AMCs
Private Markets & AlternativesRisk, Treasury & ControlAI & Digital FinanceStochastic Calculus & PricingWealth & Personal FinanceIndian Markets & RegulationProfessional Practice
CalculatorComparison
Frameworks
Explore Bootcamps
Equity ResearchPortfolio ManagementMutual Fund MasteryFinancial LiteracyInvestment Banking Analyst
Private Equity AnalystHedge Funds AnalystBreaking Into VCBreaking Into QuantsAI For Finance
Financial Analyst ProgramRisk Management ProgramPrivate Wealth ManagementDebt Capital MarketsDerivatives Foundation
Explore Internships
Equity Research InternMutual Fund Intern
Portfolio Management InternFinancial Literacy Intern
Explore Micro Courses

Equity Research6

Writing an Investment ThesisBuilding a Discounted Cash FlowReading an Annual Report FastReading a Sector Before a CompanySpotting Quality of Earnings Red FlagsBuilding a Revenue Forecast From Drivers

Portfolio Management3

Rebalancing: When, Why and What It CostsStrategic and Tactical Asset AllocationMeasuring Risk in a Portfolio

Mutual Fund Mastery3

Comparing Funds Without Being FooledHow a NAV Is Struck and Which Day You GetReading a Fund Factsheet Properly

Derivatives Unlocked4

Hedging a Real ExposureThe Greeks, PracticallyFutures, the Basis and What Moves ItReading an Option Payoff

AI For Finance2

Retrieval and Grounding for FinanceDocument Extraction in Finance

Breaking Into Quants4

Backtesting a StrategyHypothesis TestingCleaning Financial DataRegression for Finance

Breaking Into VC3

Sizing a MarketReading a Term Sheet as a FounderHow a Venture Round Actually Works

Financial Analyst Program4

Common Size and Trend AnalysisReading a Cash Flow StatementRatio Analysis That Says SomethingBuilding a Working Capital Schedule

Risk Management Program2

Credit Exposure and How It Is ReducedValue at Risk and What It Hides

Investment Banking Analyst3

Precedent Transactions and Why They DifferReading a Term Sheet StructurallyBuilding a Comparable Companies Table

Private Wealth Management3

Tax Aware Portfolio DecisionsBuilding a Client Risk ProfileGoal Based Planning Arithmetic

Debt Capital Markets3

Analysing an Issuer's CreditDuration and What It Does Not Tell YouBond Pricing and Yield Mechanics

Private Equity Analyst2

Fund Waterfalls and CarryThe LBO in Structure

Hedge Funds Analyst2

Short Selling MechanicsLong Short Mechanics
Courses
Explore Career Roadmaps
Investment Banking AnalystEquity Research AnalystVC AnalystPrivate Equity AnalystHedge Funds Analyst
Quant AnalystAI For FinanceFinancial Analyst ProgramPrivate Wealth ManagementDebt Capital Markets
Risk Management ProgramDerivatives FoundationPortfolio ManagementMutual Fund Mastery
PartnershipsShowdown
Log inSign up
Stochastic Calculus & Derivative Pricing Theory
1Probability Foundations
The Probability SpaceRandom VectorsSigma-AlgebraExpectationSample Space and EventsDensity and Distribution FunctionsRisk-Neutral ProbabilityState Price Density vs…
2Stochastic Processes and Jumps
Properties of a Stochastic ProcessMartingaleBrownian Motion and Its PropertiesBrownian Motion vs Geometric…Stopping TimeThe Markov PropertyState VariablesTransition ProbabilityQuadratic VariationQuadratic Variation vs Ordinary…Submartingale and SupermartingaleMartingale RepresentationMarkov Process vs MartingaleOptional StoppingFiltrationJump ProcessesThe Poisson ProcessLevy ProcessesJump Diffusion
3Ito Calculus
The Ito IntegralThe Ito Integral vs the Riemann IntegralInfinitesimals in Stochastic CalculusQuadratic CovariationIto's LemmaHow to Apply Ito's…The Infinitesimal GeneratorIto Calculus vs Ordinary Calculus
4Stochastic Differential Equations
Stochastic Differential EquationsStochastic Differential Equation vs…Drift and DiffusionStrong and Weak Solutions ComparedDiscretisationGeometric Brownian Motion
5Pricing Theory and No-Arbitrage
No-ArbitrageGirsanov, Radon-Nikodym and Change…Physical and Risk-Neutral Measures…The Fundamental Theorems of…The Law of One PriceThe Pricing KernelDiscount Factors and Zero-Coupon PricesReplication vs HedgingComplete Market vs Incomplete MarketClearing Margin Architecture
6Option Pricing Theory
European and American OptionsMonte Carlo European OptionThe Black-Scholes PDEBlack Scholes and the GreeksThe Payoff FunctionThe Binomial ModelBinomial Option PricingDelta Hedging in TheoryBoundary, Initial and Terminal ConditionsThe Exercise BoundaryHow to Check Put-Call…
7Volatility Models
Constant, Local and Stochastic…Vasicek Model vs CIR ModelThe Heston ModelThe SABR ModelThe Volatility ProcessImplied VolatilityVolatility Smile vs Skew vs Surface
8Interest Rate Models
Interest-Rate DerivativesMean ReversionThe Zero-Coupon BondThe Ornstein-Uhlenbeck ProcessThe Discount CurveZero RatesShort-Rate Model vs Market Model
9Numerical Pricing
Closed Form and Numerical…Monte Carlo PricingEuler and Milstein Schemes ComparedTree MethodsFinite Difference MethodsNumerical Error and StabilityVariance Reduction
10Calibration and Model Risk
Model OverrideMarket Price and Model PriceCalibrationHow to Document a Pricing ModelThe Educational Illustration LabelMarket ConventionsModel Uncertainty and LimitationsBacktesting a Pricing ModelIdentifiabilityCalibrated ParametersThe Calibration Loss Function

Monte Carlo European Option: Pricing by Slicing the Odds

A simulated estimate of a European contract's price is the average of its payoff across many finishing values taken under the pricing measure, discounted once at the end. The estimate computes an average and nothing else. Here the finishing values are taken deterministically, at the middle of equal probability slices, so the estimate reproduces exactly on every reload.

Everything in this guide follows from that one sentence, so it is worth slowing down on it before any arithmetic appears. The quantity being estimated is an average. Not a forecast, not a valuation opinion, not a view about where anything is going. An average, over a distribution that was fixed the moment the process and the measure were written down. Once the method is seen to compute an average, every property of the method becomes a property of averages rather than a property of contracts. Averages taken over a finite number of outcomes are approximate. Averages improve as outcomes are added. Averages have an error that can be computed rather than an error that has to be worried about. And an average is exactly as good as the outcomes it was given. How those outcomes are chosen therefore matters more than anything else in this guide.

The second thing to fix in place is a design constraint rather than a piece of mathematics. The figures have to reproduce. Every figure printed here has to come back identically on a reload, in somebody else's hands, and three months later on a reader's own calculator. Reproducibility rules out drawing outcomes at random, and forces a construction that is deterministic from end to end. The deterministic construction happens to be a better one as well.

What does a simulated estimate of a price actually compute?

Under the risk-neutral measure Q, the value today of a contract that pays something at a horizon is the discounted average of that payment across every finishing value the process might reach, weighted by how likely each finishing value is under Q. The statement is settled under the fundamental theorem of asset pricing and is taken as given. The shape of the statement is what matters: a discount factor multiplied by an average.

The quantity being estimated
$$ C_0 \;=\; e^{-rT}\,\mathbb{E}^{\mathbb{Q}}\!\left[\max\left(S_T-K,\;0\right)\right] $$
\(C_0\)the value today of the contract on the standard process
\(S_T\)the standard process at the horizon, a random quantity under Q
\(K\)the strike, Rs 100/- for the at-the-money contract used throughout
\(r\)the risk-free rate, 0.05 a year, continuously compounded
\(T\)the horizon, one year
\(\mathbb{Q}\)the risk-neutral measure, under which the average is taken
What it says in wordsThe value today is the average of the payment at the horizon, taken under the risk-neutral measure across every finishing value the process might reach, multiplied once by the discount factor for the whole horizon.

An average over a continuous distribution is an integral, and an integral is a sum with infinitely many terms in it. Infinitely many terms cannot be added, so finitely many are added and divided by the count. The substitution of a finite sum for an infinite one is the entire method. Everything that follows is a question about which finitely many terms to add and how badly the substitution hurts.

The estimate that stands in for it
$$ \hat{C}_m \;=\; e^{-rT}\;\frac{1}{m}\sum_{i=1}^{m}\max\left(S_T^{(i)}-K,\;0\right) $$
\(\hat{C}_m\)the estimate built from \(m\) finishing values, an approximation to \(C_0\)
\(m\)the number of finishing values used, the only quantity here that somebody chooses
\(S_T^{(i)}\)the finishing value produced by the \(i\)-th slice of the probability scale
\(e^{-rT}\)the discount factor over the horizon, 0.951229 here, applied once at the end
What it says in wordsThe estimate is the plain arithmetic mean of the payoff computed at a finite set of finishing values, multiplied once by the discount factor, and it differs from the true value only because the mean is taken over finitely many outcomes rather than all of them.

Compare the two blocks above and notice how little separates them. The true value uses an expectation. The estimatorThe recipe that produces the estimate: here, take the payoff at each finishing value, average, and discount once. uses a sum divided by a count. There is no modelling decision hidden in the gap between them and no extra assumption smuggled in. The gap is arithmetic honesty about the fact that only a finite amount of adding is available.

The whole argument runs on an everyday version, so it is worth holding on to. Suppose the average height of a very long queue is wanted. Everybody cannot be measured, so some people are measured and averaged. Nothing about that is subtle. The subtle part is which people get measured. Two people picked badly give a worse answer than twenty picked well, and the reported number looks identical either way. The method is trivial; the choice of which outcomes to feed it is where all the accuracy lives.

One more thing before the arithmetic starts. Look at where the discount factor sits in the estimator. The discount factor sits outside the sum, applied once, to the average. Applying it to each payoff separately and then averaging would be the same arithmetic done more times, with more chances to slip. The horizon is one year for every finishing value here, so one discount factor of 0.951229 covers the lot.

Try it out

A guess first, before the working. How many slices are needed to bring the estimate within a tenth of a paisa, that is Rs 0.001/-, of the exact answer?

Why must the default reproduce exactly on every reload?

The purpose of a worked example comes first. A worked example exists so that a reader can check the working. The reader takes the inputs, does the arithmetic, and either the two numbers match or one of them is wrong. The reader's own arithmetic is the only thing separating a worked example from an assertion.

Now suppose the outcomes were drawn at random. A reload moves the figure. A reader doing the arithmetic gets a figure that does not match either, and neither side can tell whether the mismatch is a mistake or just a different draw. A figure that changes on reload leaves nothing stable for the reader to check against, so it cannot be a worked example. The number stops being a fact about the method and becomes a fact about one particular run that nobody can reproduce.

So the construction draws nothing at all. The finishing values, the payoffs and the readings on the interactive below all come out of a formula, and running that formula twice gives the same answer twice.

The construction that makes it possible is called stratified slicingDividing the probability scale into equal pieces and taking one value from each piece, rather than picking values at random from the whole scale.. The probability scale runs from zero to one. Divide it into m equal slices. Take the value sitting at the midpointThe value at the centre of a slice. Taking the centre rather than a drawn point is what makes the construction reproduce exactly. of each slice. Each of those probability levels is then converted into a finishing value of the process. That is it. No drawing, no seed, no pseudo-random generator, and no dependence on which machine the computation runs on.

Turning a probability level into a finishing value
$$ S_T^{(i)} \;=\; S_0\,\exp\!\left(\left(r-\tfrac{1}{2}\sigma^{2}\right)T \;+\; \sigma\sqrt{T}\;N^{-1}\!\left(\frac{i-\tfrac{1}{2}}{m}\right)\right) $$
\(S_0\)the starting value of the standard process, Rs 100/-
\(\sigma\)the volatility, 0.20 a year, so \(\sigma\sqrt{T}\) is 0.20 exactly at this horizon
\(r-\tfrac{1}{2}\sigma^{2}\)0.03 exactly here, the drift of the logarithm under Q
\(N^{-1}\)the inverse of the standard normal distribution function, a standard library routine
\(\frac{i-\tfrac{1}{2}}{m}\)the probability level at the middle of slice \(i\), running from \(\frac{1}{2m}\) to \(1-\frac{1}{2m}\)
What it says in wordsEach slice midpoint is a probability level, the inverse normal distribution function turns that level into a standard normal value, and the exponential turns that value into the finishing value of the process, so the whole route from slice number to rupees is a formula with no drawing in it.

Reading this construction as a trick played for tidiness is easy and wrong. Two things are worth saying plainly against that reading. Taking the midpoint of each equal probability slice is a real variance reduction technique with a long history in numerical work, and it is used precisely because it beats drawing at random at these counts. The reproducibleReturning the same answer on every run, which a randomly drawn figure does not. behaviour is a side effect that happens to be exactly what a teaching text needs.

The queue helps again here. Instead of stopping ten people at random, the queue is lined up in order of height, cut into ten equal groups, and the middle person of each group is measured. Same ten measurements, same effort, and a much steadier answer. The procedure yields one measurement from the short end, one from the tall end and eight spread evenly between. The procedure also arranges that anybody repeating it on the same queue gets the same ten people. Repeatability is the property being bought here.

Try it out

Why are the slices taken at their midpoints rather than drawn at random from within each slice?

How is the estimate built, step by step?

Four steps, in order, and none of them is optional. Naming them stops the method looking like machinery and turns it into something a person could carry out on paper with enough patience.

  1. Slice the probability scaleDivide the interval from zero to one into m equal pieces. At twelve slices each piece is one twelfth wide. The midpoints are one twenty fourth, three twenty fourths, five twenty fourths and so on. As decimals those run 0.041667, 0.125000, 0.208333 and upward to 0.958333.
  2. Take the finishing value at each midpointPush each probability level through the inverse normal distribution function to get a standard normal value, then through the exponential above to get rupees. The first slice midpoint gives a standard normal value of minus 1.731664 and a finishing value of Rs 72.881680/-. The last gives plus 1.731664 and Rs 145.693204/-.
  3. Work out the payoff at each finishing valueThe excess over the strike where there is one, and nothing where there is not. At twelve slices, five of the twelve finishing values sit below Rs 100/- and contribute nothing at all to the sum.
  4. Average, then discount onceAdd the twelve payoffs, divide by twelve, multiply by 0.951229. The sum is Rs 127.571591/-, the average is Rs 10.630966/-, and the discounted average is Rs 10.112488/-.
One average, built in four steps. Follow the right hand column downward. 1 Slice the probability scale into equal pieces from zero to one 12 probability levels 0.041667 up to 0.958333 2 Take the finishing value at each midpoint inverse normal, then the exponential 12 finishing values Rs 72.88/- up to Rs 145.69/- 3 Work out the payoff at each finishing value the excess over Rs 100/-, or nothing 12 payoffs five of them nothing at all 4 Average, then discount once divide by twelve, multiply by 0.951229 Rs 10.112488/- one estimate, at twelve slices Educational illustration. Every figure is a computed consequence of the invented parameters of the standard process.
The estimate is built in four steps that turn twelve probability levels into twelve finishing values, then into twelve payoffs of which five are nothing, and finally into one discounted average of Rs 10.112488/-.

The whole build at twelve slices is set out below, every row of it. The exact answer against which it is being checked is Rs 10.450584/-, and that figure comes from the closed form for this contract on the standard process, set out under Black-Scholes and the Greeks.

SliceProbability at the midpointStandard normal valueFinishing valuePayoff
10.041667-1.731664Rs 72.881680/-nothing
20.125000-1.150349Rs 81.867355/-nothing
30.208333-0.812218Rs 87.595237/-nothing
40.291667-0.548522Rs 92.338921/-nothing
50.375000-0.318639Rs 96.683457/-nothing
60.458333-0.104633Rs 100.911460/-Rs 0.911460/-
70.5416670.104633Rs 105.224575/-Rs 5.224575/-
80.6250000.318639Rs 109.826084/-Rs 9.826084/-
90.7083330.548522Rs 114.993389/-Rs 14.993389/-
100.7916670.812218Rs 121.220809/-Rs 21.220809/-
110.8750001.150349Rs 129.702071/-Rs 29.702071/-
120.9583331.731664Rs 145.693204/-Rs 45.693204/-
Sum of the twelve payoffsRs 127.571591/-
Divided by twelveRs 10.630966/-
Multiplied by the discount factor 0.951229Rs 10.112488/-

The last three rows are the whole method in three lines of arithmetic. Read them slowly. Add, divide, discount. There is nothing else in it. Every difficulty this method has is a difficulty about the twelve numbers going in, never about the three lines of arithmetic coming out.

The third column is symmetric as well. Equal slices of the probability scale are symmetric about one half, so the standard normal values come in matched pairs about zero. The first and twelfth are minus and plus 1.731664, the second and eleventh minus and plus 1.150349, and so on inward. The symmetry is a free check on the arithmetic: a list of standard normal values that is not a mirror image of itself contains a slip somewhere.

Twelve equal slices. Bar height is the payoff at that slice midpoint. The slices are equally likely. The finishing values they produce are not equally spaced, and the payoffs are not either. THESE FIVE PAY NOTHING and they still count in the average the strike falls here, at probability 0.440382 0.91 5.22 9.83 14.99 21.22 29.70 45.69 Rs 100/- 72.9 81.9 87.6 92.3 96.7 100.9 105.2 109.8 115.0 121.2 129.7 145.7 finishing value at each slice midpoint, in rupees Five slices contribute nothing and the twelfth contributes Rs 45.693204/- on its own. Twelve slices is far too few to describe a payoff shaped like this.
At twelve slices, five of the twelve finishing values fall below the strike and contribute nothing, while the top slice alone contributes Rs 45.693204/- of the Rs 127.571591/- total, which is why twelve slices is far too coarse.

Look at the picture and then at the number again. The estimate of Rs 10.112488/- is being carried, to a large extent, by one slice out of twelve. Leaning on one slice out of twelve is a fragile way to build an average, and the fragility is not hidden anywhere clever. The shape of the bars shows it plainly.

Derivatives Foundation Bootcamp — Fin Maverick Building a Working Capital Schedule — free micro-course from Fin Maverick

How fast does the error fall as more slices are added?

Now run the same construction at five different counts and put the results beside each other. Nothing changes except m. The process, the measure, the strike, the horizon and the discount factor are all identical in every row.

Number of slicesEstimateShort of the exact answer byAs a share of the exact answer
12Rs 10.112488/-Rs 0.338096/-3.2352 per cent
50Rs 10.374711/-Rs 0.075873/-0.7260 per cent
200Rs 10.432104/-Rs 0.018479/-0.1768 per cent
1,000Rs 10.446963/-Rs 0.003621/-0.0346 per cent
5,000Rs 10.449869/-Rs 0.000715/-0.0068 per cent
Exact answer, closed formRs 10.450584/-nothingnothing

The first jump is enormous and the last is almost nothing. Going from twelve slices to fifty removes Rs 0.262223/- of error for thirty eight extra slices. Going from a thousand to five thousand removes Rs 0.002906/- for four thousand extra slices. Most of the accuracy is bought in the first few dozen slices and the rest is bought at rapidly rising cost. That shape is the single most useful thing to know about this method, and it is why nobody sensible runs a simulated estimate at a count chosen to look impressive.

The error collapses, then crawls. The right panel is the same crawl, magnified. THE WHOLE RANGE, IN RUPEES 0.30 0.20 0.10 0 0.338096 at 12 slices 12 50 200 1,000 5,000 THE LAST THREE, MAGNIFIED 25 TIMES 0.015 0.010 0.005 0 0.018479 0.003621 0.000715 200 1,000 5,000 The flat stretch on the left is not flat. It is still falling, twenty five times too slowly to see.
The shortfall falls from Rs 0.338096/- at twelve slices to Rs 0.018479/- at two hundred, after which it looks flat at full scale but is still falling, from Rs 0.018479/- to Rs 0.000715/- across the next twenty five fold increase in work.

The contrast with a drawn estimate, and not reproducibility alone, is the reason the deterministic construction was chosen. How a drawn estimate would behave at these counts is worth being precise about. If the finishing values were drawn at random rather than sliced, the accuracy of the average would improve with the square root of the count, which is a famously slow rate.

What a drawn average would cost
$$ \mathrm{se}(n) \;=\; \frac{s}{\sqrt{n}} $$
\(\mathrm{se}(n)\)the typical size of the error of an average built from \(n\) drawn outcomes
\(s\)the standard deviation of the discounted payoff itself, Rs 14.719404/- on this contract
\(n\)the number of drawn outcomes
What it says in wordsThe typical error of an average built from drawn outcomes is the spread of the thing being averaged divided by the square root of how many outcomes were used, so quartering the error requires sixteen times the work.

With a number on it the gap becomes uncomfortable. The discounted payoff on this contract has a standard deviation of Rs 14.719404/-, larger than the price itself. Most outcomes pay nothing and a few pay a great deal. A drawn average over five thousand outcomes would therefore carry a typical error of about Rs 0.208164/-. The sliced construction at the same count of five thousand is short by Rs 0.000715/-. Bringing a drawn average down to that same typical error would take roughly 42,38,07,241 outcomes, about forty two crore of them.

The slicing is not a presentational convenience; at these counts it is several orders of magnitude more accurate than drawing. The reason is that drawing wastes effort. Draw five thousand values at random and some regions of the probability scale get visited far more than their share while others get missed entirely, and the unevenness is itself a source of error. Slicing removes that source completely by construction. Slicing cannot remove the error from using finitely many values at all, and that remaining error is what the table above measures.

Try it out

Going from two hundred slices to five thousand is twenty five times the work. By roughly how much does the shortfall fall?

Try it out

The interactive below opens at twelve slices, against an exact answer of Rs 10.450584/-. An answer first, before it moves: will the estimate sit above the exact answer or below it?

Play with it

Watch the estimate crawl toward a known answer

One control, and it changes one thing: how many equal probability slices the average is taken over. Everything else is held. The marker on the upper scale jumps most of the way in the first two moves and then stops moving visibly. The lower scale shows that it has not stopped at all.

12 slices12 slices5,000 slices
Slices
12
Estimate
10.112488
Short by
0.338096
Slices paying nothing
5
The estimate against the exact answer, on two scales at once. THE WHOLE RANGE, Rs 10.00/- TO Rs 10.50/- 10.00 10.10 10.20 10.30 10.40 exact, Rs 10.450584/- Rs 10.112488/- THE LAST STRETCH, MAGNIFIED TWENTY FIVE TIMES 10.430 10.435 10.440 10.445 10.450 exact answer off this scale, far to the left Educational illustration. Every reading is computed from the formula above. Nothing here is drawn at random.

At 12 slices the estimate is Rs 10.112488/-, short of the exact Rs 10.450584/- by Rs 0.338096/-, which is 3.2352 per cent. 5 of the 12 slices produce a finishing value below the strike and contribute nothing at all to the average. On the magnified lower scale the marker is still off to the left, so this reading is not yet close enough to appear on it.

Educational illustration. The at-the-money contract on the standard process: strike Rs 100/-, one year, volatility 20 per cent a year, risk-free rate 5 per cent a year continuously compounded, no income. The average is taken under the risk-neutral measure Q and discounted once by 0.951229. Slices are taken at midpoints, so the readout reproduces exactly on every reload rather than moving. The five readings are Rs 10.112488/- at 12 slices, Rs 10.374711/- at 50, Rs 10.432104/- at 200, Rs 10.446963/- at 1,000 and Rs 10.449869/- at 5,000, short of the exact Rs 10.450584/- by Rs 0.338096/-, Rs 0.075873/-, Rs 0.018479/-, Rs 0.003621/- and Rs 0.000715/- respectively. The mean square of the slice midpoints, which explains why every one of those is short rather than half of them being long, runs 0.899170, 0.974910, 0.993596, 0.998699 and 0.999737 against a true variance of one.
Hypothesis Testing teaches you to run a test, say what it can and cannot support, and recognise a manufactured result.

Why does the estimate come at the answer from below?

In the table of five counts, the third column is worth a second look. Every entry is a shortfall. Not one estimate lands above the exact answer, and this is not luck holding for five rows in a row. The one sided shortfall is a property of the construction, and it has a cause that can be computed.

Here is the cause. The standard normal distribution has a variance of one. Taking the centre of each slice throws away the spread within the slice, so the set of slice midpoints, treated as a little collection of numbers in its own right, has a mean square below one. The tails suffer most: the outermost slice at twelve stretches from probability zero to probability one twelfth, and its centre at 0.041667 stands in for everything out there, including values far more extreme than minus 1.731664.

Why the slice midpoints are too tightly packed
$$ \frac{1}{m}\sum_{i=1}^{m}\left[N^{-1}\!\left(\frac{i-\tfrac{1}{2}}{m}\right)\right]^{2} \;<\; 1 $$
\(N^{-1}\)the inverse of the standard normal distribution function
\(m\)the number of equal probability slices
the left sidethe mean square of the slice midpoints, 0.899170 at twelve slices
the right sidethe variance of the standard normal distribution, one exactly
What it says in wordsThe slice midpoints have a mean square strictly below one at every finite count, so the finishing values built from them are packed slightly closer together than the distribution really is, and the shortfall in that mean square is the source of the one sided error.

An understated spreadThe slice midpoints being slightly less dispersed than the distribution they stand in for, which happens whenever a centre is used in place of a whole interval. matters here in a very specific way. The payoff on this contract is flat on one side and rising on the other. The payoff is nothing at all below the strike, however far below, and rises without limit above it. Packing the finishing values closer together loses more from the upper side, where every rupee of packing removes a rupee of payoff, than it gains from the lower side, where packing changes nothing because the payoff was already nothing. The loss is one sided because the payoff is one sided, and that is the whole explanation.

Number of slicesMean square of the slice midpointsShort of one byResulting shortfall in the estimate
120.8991700.100830Rs 0.338096/-
500.9749100.025090Rs 0.075873/-
2000.9935960.006404Rs 0.018479/-
1,0000.9986990.001301Rs 0.003621/-
5,0000.9997370.000263Rs 0.000715/-

Read the two right hand columns together. The two columns fall in step, and one causes the other. The known direction is what turns the one sided approachComing at the answer from below at every count, rather than landing on either side, which is what a drawn estimate would do. from a curiosity into something dependable: which side of the truth the estimate stands on is known in advance, and adding slices moves it toward the truth rather than past it.

Naming the understatement rather than hiding it is not merely good manners. A method whose error has a known direction is more useful than a method whose error is symmetric but unnamed. An estimate known to be short places the exact answer somewhere above Rs 10.112488/-, and the shortfall table gives roughly how far above. A drawn estimate offers no such handle: it might be over, it might be under, and the only honest statement about it is a range.

Five counts, five shortfalls, and not one overshoot. Stem lengths are on a logarithmic scale so the smallest shortfall is still visible. The direction, not the length, is the claim. THE EXACT ANSWER, Rs 10.450584/- 12 slices Rs 10.112488/- short by 0.338096 50 slices Rs 10.374711/- short by 0.075873 200 slices Rs 10.432104/- short by 0.018479 1,000 slices Rs 10.446963/- short by 0.003621 5,000 slices Rs 10.449869/- short by 0.000715 Every marker hangs below the line. None has ever hung above it.
Every one of the five estimates falls below the exact answer of Rs 10.450584/-, from Rs 0.338096/- short at twelve slices to Rs 0.000715/- short at five thousand, because taking slice midpoints understates the spread at every count.
Try it out

Why does the estimate come at the exact answer from below rather than from either side?

Where does each input come from?

Where the inputs come from is the part that gets skipped, and it decides whether a produced number can be defended. Every input to the estimate has a source. Most of them are looked up. One of them is chosen rather than found, and being chosen is not a criticism of it.

InputSymbolWhere the number is foundValue here
Starting valueS at time zeroThe specification of the process being pricedRs 100/-
VolatilitysigmaThe same specification, quoted a year0.20
Risk-free raterThe same specification, continuously compounded0.05
HorizonTThe contract as given1.0
StrikeKThe contract as givenRs 100/-
Discount factore to the minus r TComputed from the rate and the horizon, never looked up separately0.951229
Inverse normalN inverseA standard routine in any numerical library, not a number anybody suppliesa function
Number of slicesmNowhere at all. Chosen by whoever runs the calculationa decision

The last row is the one to sit with. Seven of the eight inputs are lookups and the eighth is a decision, and the eighth is the only one that changes the answer without anybody having changed the problem. Moving the volatility prices a different process. Moving the strike prices a different contract. Moving the slice count prices the same thing with more or less care, and the number on the screen moves anyway.

The asymmetry is why the count belongs beside the answer, printed in the same breath, every single time. A price without its slice count is a measurement without its instrument. The count is the difference between saying the sack weighs forty kilos and saying the sack weighs forty kilos on a scale that reads to the nearest five.

Seven of these arrive with the problem. One does not. THE SPECIFICATION AS GIVEN Starting value Rs 100/- Volatility, a year 0.20 Risk-free rate, a year 0.05 Horizon 1.0 year Strike Rs 100/- Discount factor, computed 0.951229 Number of slices blank 1 Five of these are looked up, from the process specification or from the contract itself. 2 One is computed from two of the others. The discount factor is the rate and the horizon, and nothing else. 3 The last one is not on the sheet at all. Somebody picks it, and the answer moves when they do. So it is reported alongside. Educational illustration. The specification shown is invented and describes no market, no instrument and no quoted level.
Seven inputs to the estimate are looked up or computed from the specification and the contract, while the number of slices appears nowhere on the sheet and is chosen by whoever runs the calculation.
Try it out

Of the inputs to this estimate, which one is a decision rather than a lookup?

How is an estimate that arrives from somebody else checked?

Most people meet a simulated estimate as a number in a message, a cell in a sheet or a line in a report. The reader did not run it, cannot see the code, and has to decide in a minute whether to lean on it. Here is what that minute should contain.

  1. Ask what count it usedNot what model, not what assumptions, what count. If nobody can say how many outcomes the average was taken over, the checking stops there, because everything else has nothing to stand on. The count is the accuracy, and a number without it is a number with no error attached to it.
  2. Run it a second timeIf the figure moves, it was drawn rather than constructed, and the amount it moves is the size of the uncertainty that was never shown. If it does not move, either it was constructed in the way set out above, or it was drawn from a fixed starting seed, and those two are worth telling apart because only the first is more accurate for it.
  3. Compare it against a closed form where one existsFor this contract one does, and it is Rs 10.450584/-. Where no closed form exists, which is the usual reason anybody reaches for a simulated estimate at all, run the construction at two counts far apart and read the gap between them. The gap is not the error, but it is the right order of magnitude for it, and it is the only self-contained evidence available.

Step three carries the boundary, and it is worth naming. The moment a closed form exists, the simulated estimate stops being the answer and becomes a check on the answer. That is exactly the position it holds here: the exact Rs 10.450584/- is known, and the entire value of the construction in this guide is that it can be watched approaching a figure already in hand. On a contract where nothing closed form exists, the construction is the only route, and then step three collapses into the two-count comparison and the best check is lost.

Three steps, in this order. The first is the one people skip. ASK THE COUNT How many outcomes was the average taken over? If nobody can say, stop. Nothing else will help. RUN IT AGAIN Does the figure move? If it moves, it was drawn, and the movement is the uncertainty made visible. COMPARE IT Against a closed form. Here that is Rs 10.450584/-. Where none exists, use two counts far apart instead. always available always available only sometimes available The first two steps cost nothing and work on any estimate at all. The third is the strongest and it is the one that is often not there.
Asking the count and running the estimate a second time work on any figure at all, while comparison against a closed form is the strongest check and is available only where a closed form exists.

There is a second thing a person receiving a number can do, and it takes ten seconds. Ask whether the reported figure is plausible as an average at all. On this contract the average payoff before discounting is around Rs 11/-, the strike is Rs 100/- and the process starts at Rs 100/-, so a reported estimate of Rs 40/- or of Rs 0.40/- would be wrong in a way no slice count could explain. Order-of-magnitude checks catch the errors that accuracy arguments never reach. A slice count that is too small produces a number that is slightly wrong. A broken formula produces one that is wildly wrong.

Try it out

An estimate arrives with no count reported alongside it. What can be said about it?

Two readouts. Same six decimals, same confident appearance. One of them is wrong in the second decimal place. Nothing on either screen says which. ESTIMATED PRICE Rs 10.112488/- six decimal places count not reported ESTIMATED PRICE Rs 10.449869/- six decimal places count not reported The left one used twelve slices and is short by Rs 0.338096/-, which is 3.2352 per cent. The right one used five thousand and is short by Rs 0.000715/-, which is 0.0068 per cent. The digits after the second decimal on the left are formatting, not information.
Two readouts print six decimal places with identical confidence, but the left is short by Rs 0.338096/- at twelve slices and the right by Rs 0.000715/- at five thousand, and neither screen reports the count that separates them.

The error that gets made, and what it costs

Reading a simulated estimate as the price rather than as an estimate of it. At twelve slices the figure is Rs 10.112488/- against an exact Rs 10.450584/-, out by 3.2 per cent, and nothing on the screen says so. The estimate looks exactly as authoritative at twelve slices as at five thousand. The figure carries the same six decimal places, is printed in the same font, and moves toward the answer slowly enough that somebody watching it settle may reasonably conclude it has arrived when it has not.

The cost is a figure quoted to six decimals that is wrong in the second. Nothing about the number announces its own accuracy, so everything downstream inherits that error silently. A figure carried forward into a comparison, a difference or a sum takes its error with it, and looks cleaner at every step.

The fix is one line of discipline. Report the count alongside the estimate, always, in the same breath and the same field. The count is what says how much of the number to believe, and separating the two is what turns an honest approximation into a false precision.

Try it out

An estimate reads Rs 10.112488/- to six decimal places. How many of those decimals are believable?

One last note on convergenceThe estimate approaching the true value as the count rises, without ever reaching it at any finite count. before the boundary. No finite count reaches the exact answer. At five thousand slices the estimate is Rs 10.449869/- against Rs 10.450584/-, still short, and it would still be short at fifty thousand and at five lakh. The construction approaches without arriving. Approaching without arriving is the ordinary condition of every numerical method, not a defect of this one. In exchange comes a shortfall that can be computed, a direction that can be relied on, and a figure that reproduces.

How the pricing measure is arrived at, and why the average is taken under it rather than under the physical measure P, are set out under physical and risk-neutral measures. Variance reduction beyond the deterministic slicing used above, including the paired-value and control-variate constructions, is set out under variance reduction. What the contract pays is set out under the payoff function: the payoff arrives already known and is used only as the function being averaged. The closed form for this contract is set out under Black-Scholes and the Greeks, and the lattice route to the same figure under binomial option pricing. The arithmetic carries no jurisdiction and no conduct rule attaches to it: an average is an average everywhere.
Breaking Into Quants Bootcamp — Fin Maverick

References

SourceDocumentWhere
arXiv Quantitative FinancePreprint repository for work on simulated estimation and variance reduction in derivative pricingarxiv.org
Social Science Research NetworkWorking paper repository for the same materialssrn.com
Black, Scholes and Merton, 1973The papers giving the closed form for a European contract, the source of the reference figure of Rs 10.450584/- used throughoutJournal of Political Economy; Bell Journal of Economics and Management Science
Hull, Shreve and WilmottStandard texts on derivative pricing, covering both the closed form and the simulated estimatePearson, Springer and Wiley

The standard process priced throughout, and the four parameters it is given, are invented.
Educational material. Not advice on any investment, tax, budget or market position.

Calculator

Other calculators in Option Pricing Theory

Calculator

Black Scholes and the Greeks: Five Sensitivities, Five Units

Calculator

Binomial Option Pricing: Building and Checking the Tree

← PreviousNext →
Fin Maverick Micro CoursesExplore Micro Courses
Fin Maverick BootcampsExplore Bootcamps
Fin Maverick

Finance education that ends in a job, not a certificate that gathers dust. Built for young India.

LEARN
CalculatorsFrameworksComparisonsCareersShowdown
RESOURCES
All CoursesMicro CoursesBootcampsInternships
COMPANY
AboutJob openingPartnership
LEGAL
Privacy PolicyTerms & ConditionsContent LicenseReturn & Refund Policy
© 2026 FIN MAVERICK / BUILT FOR INDIA.DO FINANCE, DO NOT JUST READ ABOUT IT.