Suppose we have a portfolio of say two vanilla options (e.g. on two index futures). One option A with underlying X and a second option B with underlying Y. I'm trying to calculate the delta-gamma value-at-risk approximation but I'm a bit confused with the gamma matrix part and especially the non-diagonal elements a.k.a cross-gamma. How exactly can we calculate this?

There is this great discussion here that suggests to use a finite difference scheme to approximate cross-gamma: Compute cross-gamma

The discussion is on option with several underlyings which is different than my problem here. But it is also mentioned in comments that it could very well be applied at the portfolio level (which is my case here).

I followed this approach and calculated the market value of my portfolio of options with epsilon set as +/- 1% on each underlying. The problem is that only option A is impacted by a shift in price of underlying X (option B does not depend on X) and only the second option B is impacted by a shift in price of underlying Y. Thus I always find a cross-gamma equal to 0 when using the formula (elements offset each other). Am I missing something?

Also, another question I have is when I assume a change in price of underlying X by +/- epsilon, should I assume all other parameters equal to calculate the new option price of A? (especially keeping the same implied volatility)


  • $\begingroup$ Your cross gamma come from moves in spot and implied volatilities, $d^2f/dSd\sigma$. Cross does not necessarily imply these two factors being from different underlyings - they can can come from different risk types as well (IV and underlying). $\endgroup$ Commented Jun 27, 2021 at 20:56
  • $\begingroup$ @Kermittfrog Thank you, makes sense. To be frank I was looking at an example from C. Alexander's book. Example is giving the following indications to compute the var: "The bond options portfolio has a position delta of 10, a position gamma of 2.5, a pv of 1000 and a delta equivalent of 1m. The stock options portfolio has a position delta of 20, a position gamma of 0.5, a pv of 250 and a delta equivalent of 5m. The cross-gamma between bonds and equities is −0.15." I was just curious how this cross-gamma could be calculated/approximated. $\endgroup$
    – CTXR
    Commented Jun 27, 2021 at 21:27
  • $\begingroup$ That would be something like the sensitivity to a parallel interest rate curve shift and a stock market index shift at the same time. $\endgroup$ Commented Jun 28, 2021 at 4:46

1 Answer 1


Stop right there. For VaR (or for expected shortfall...), you're trying to see what the P&L would be if market factors move 2+ standard deviations. If all your exposures positions are linear (gamma is zero) then P&L estimation is easy using just deltas. But if any gammas is non-zero, then delta-gamma (i.e. Taylor only orders 1 and 2) approximation of this P&L is useful for P&L explain on most normal days (some products need 3rd order), but is not accurate enough for large market moves. Instead, fully reprice the portfolio for every set of market data, whether historical or Monte Carlo, for VaR. And you'll get your cross-gammas included for free.

Edit: if you really can't reprice under each market scenario (computational limitations), then you can reprice under fewer scenarios forming a grid, e.g. FX rate going up and down 1%, 5%, 10%.. while FX implied vol also changing. Then when you need the P&L from a concrete scenario (e.g. FX down 7% and some change in IV), you interpolate from the pre-computed grid, which is faster than repricing. (If your scenario is far off the grid, then you extrapolate and note the problem, and expand your grid, maybe later.) This isn't great, but is still much more accurate than delta+gamma.

  • $\begingroup$ Ok fair and thank you for the practical point of view. Bottom line: this method is irrelevant and better using historical or MC. Nevertheless, I am curious to know how to compute these cross-gammas? $\endgroup$
    – CTXR
    Commented Jun 27, 2021 at 14:45

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.