Local Volatility Monte Carlo: Risk-Neutral Pricing and Real-World Probabilities
Summary
The document outlines an Euler–Maruyama simulation for log asset prices under a local volatility model, using volatility that varies with time and the asset level. It asks which drift to use for option valuation versus estimating the real-world chance of an asset finishing within a specified range. The answer separates the two tasks: risk-neutral dynamics use the risk-free rate for pricing, while event probabilities are estimated under the physical measure with the appropriate real-world drift.
It also cautions that simulating log prices requires evaluating local volatility consistently with the log-price representation. A confidence interval transformed through a monotonic function such as the exponential remains a valid interval for the transformed variable, while this does not generally hold for non-monotonic transformations. The note gives conceptual guidance but no numerical example, calibration procedure, convergence analysis, or assessment of Euler discretization error.
Key ideas
- Risk-neutral simulations use the risk-free rate to estimate discounted option values.
- Physical-measure simulations use real-world dynamics to estimate event probabilities.
- Euler–Maruyama approximates the local-volatility process over small time steps.
- Local volatility must be represented consistently when the simulated state is log price.
- Confidence intervals transform directly through monotonic mappings but not generally through non-monotonic ones.
Tags
Full text
# Euler Discretization to use with Monte Carlo simulation and Local Volatility Model
# Euler Discretization to use with Monte Carlo simulation and Local Volatility Model
Like in the title, I am working on running Monte Carlo simulations to price options with the Local Volatility model as a project. I just want to make sure that I am understanding the process, especially the discretization correctly.
The risk neutral dynamics under the Local Volatility model is:
$$ \frac{d S_t }{S_t } = \mu_t dt + \sigma(t,S_t) dW_t $$
Applying Itô's lemma gives:
$$ d \ln(S_t) = (\mu_t-\frac{1}{2}\sigma^2(t,S_t)) dt + \sigma(t,S_t) dW_t $$
Using Euler-Maruyama discretization scheme for simplicity:
\begin{align} \ln(S_{t+\delta t}) &= \ln(S_{t}) + \int_t^{t+\delta t}(\mu_t-\frac{1}{2} \sigma^2(u,S_u)) du + \int_t^{t+\delta t} \sigma(u, S_u) dW_u \\ &\approx \ln(S_{t}) + (\mu_t - \frac{1}{2} \sigma^2(t,S_t)) \delta t + z \sqrt{\sigma^2(t, S_t)\delta t} \tag{1} \end{align}
Then I can incorporate the local volatility model (and the skew/smile) into my simulations by splitting the time interval between 0 and T into smaller intervals and use the volatility given by the local volatility surface and time step, plug these two into (1) (assuming that I can build a smooth LV surface).
I have two questions.
1/ Would it be correct to use the drift rate equal to the risk free rate for pricing options ?
2/ If I want to use Monte Carlo simulations to get an idea on the probability of the underlying asset ending up between an interval after a defined time period, then I would have to use the "expected return" of the underlying asset instead of the risk free rate ?
Thanks!
## Answer by oliversm (score 2)
https://quant.stackexchange.com/a/55833
## Use the risk free rate for pricing
You use the risk free rate (using the risk neutral measure $\mathbb{Q}$) so that you can use the formula $$ V(t) = \underbrace{\exp(-r(T-t))}_{\text{because we used $\mathbb{Q}$}} \mathbb{E}^{\mathbb{Q}}(P(S_T)), $$ where because we used $\mathbb{Q}$ we were able to discount the expectation after doing all the MC simulations. If you want to use the physical measure $\mathbb{P}$ then you need to move a discounting factor inside the expectation, and things just all get a bit more awkward.
## Use the real-world/physical rate for computing probabilities
For getting the probability of some event $A$ happening at time $T$ use the physical measure $\mathbb{P}$ and make use of $$ \mathbb{P}(A_T) = \mathbb{E}^{\mathbb{P}}(\mathbb{1}_{\{S_T\in A_t\}}), $$ and then make use of normal Monte Carlo to compute the expectation.
## A comment on your Euler-Maruyama scheme
If you wish to simulate $\log(S_t)$ rather than $S_t$ then make sure your local volatility is modified appropriately to use $\log(S_t)$. On a more important note, for monotonic transformations such as taking $\exp(\cdot)$ then the confidence interval you had for $\log(S_t)$ will directly give you a correct interval for $S_t$. In general though this is not true, and can be easily seen, such as if you took $\sin(\cdot)$. (In fairness I can't think of any common place example(s) of this, but It is nonetheless something to keep in mind).Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.