I have two coupled SDEs \begin{align*} dS_t=rS_tdt+V_tdW_t^{(1)},\\ dV_t=aV_tdt+b(V_t)dW_t^{(2)},\\ \end{align*} where $W_t^{(1)}$ and $W_t^{(2)}$ are independent Brownian motions, initial input data are $S_0$ and $V_0$, $a(\cdot)$ and $b(\cdot)$ are sufficiently well-behaved, and I use an Euler-Maruyama discretisation with $N$ timesteps. How exactly should one calculate the derivative of a payoff function $\mathbb{E}f(S)$ with respect to $S_0$ in this case?

In particular, I am confused as to how to apply the chain rule in this case due to the dependence of $S_t$ on $V_t$? For example, say with the likelihood ratio method, would my integral form of the probability density be formed by $2N$ integrals ($N$ with respect to the $S$ and $N$ with respect to $V$)? (Similarly for the pathwise sensitivity approach, I am confused as to how construct the chain rule.)

Any help is greatly appreciated!


2 Answers 2


Are W1 and W2 independent? I would assume there is some correlation structure? Cholesky decomposition would help in generating the path. It's very similar to heston model where Vt is volatility.


  • $\begingroup$ Yes they are completely independent, they are coupled via V_t. $\endgroup$
    – user107224
    Apr 17, 2021 at 16:34
  • $\begingroup$ As you have put this in as an answer, it would be much better if you include in your answer an sufficiently detailed explanation of how the material in the linked webpage answers the question in case the link is broken or the material in it is changed. $\endgroup$
    – Alper
    Jan 16, 2023 at 21:01

So there are 3 ways that I know of to do this --- none of those, unfortunately, uses the likelihood ratio (when I tried to do the calculation with the likelihood ratio, eg. how policy gradients are calculated in reinforcement learning, I found that swapping expectation and derivative was giving me trouble and making things diverge to infinity)

  1. You can use finite differences, and run your monte-carlo procedure initialized at S_0, and S_0+eps, and then look at the difference divided by eps (or use a higher-order exact method for that). The issue here is that your sampling/approximation error will be off by more than 1/sqrt(number-of-monte-carlo-samples).

  2. You can use malliavin calculus, and the "so-called" integration-by-parts formula --- there are a number of references here (most are just for black-scholes but there are several that engage with stochastic volatility models). This is mathematically somewhat complex, but the final solution is just a weighted average of your payoff (eg. E[f(S)g(Z)] where Z, I believe, may have information about the path.

  3. You can just move the derivative inside the expectation and then look at df(S)/dS_0 = f'(S)dS/dS_0 for each given realization of your process. I am assuming here that dS/dS_0 is differentiable for almost every sample path (which is maybe non-trivial to show, but empirically I believe it is the case). f'(S) is simple; so the question is, what is dS/dS_0? In geometric brownian motion, for example, you get dS/dS_0 = S/S_0. In your case, for your discretized path, you should be able to empirically calculate this (eg. via finite differences --- fix your brownian motion increments, and plug in both S_0 and S_0+eps, and see what you get for S in each case, and then divide that difference by eps). I think you can also sit down and calculate this analytically: The important point here is that I don't think you need any Ito/Malliavin calculus at this point. When I played with this it was pretty simple and efficient (accuracy should be 1/sqrt(number-of-monte-carlo-samples))

  • $\begingroup$ Hello 123dogs, could you share a reference for #2, on how to use Malliavin calculus for that? (introductory level would be appreciated). Thanks! $\endgroup$
    – KT8
    Jun 15, 2023 at 8:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.