A simple volatility surface might have X axis = strike, Y axis = expiry and Z axis = implied volatility. But in many papers I see them use moneyness instead of strike. I have two questions.

  1. Why do they use moneyness as an axis instead of strike?
  2. Does it make sense to interpolate along the moneyness axis?

2 Answers 2


First off, there are different types of moneyness one can use when constructing a volatility surface. Each have their own advantages.

Absolute-moneyness: using absolute spot-strike comparison as a measure of moneyness. ATM would correspond with S=K. This has a simplistic interpretation when looking at option payoff diagrams at maturity.

Simple-moneyness: using strike-spot ratio as a measure of moneyness. ATM would correspond with moneyness level of S/K=1 (or K/S). Either ratio will determine whether ITM corresponds with a ratio greater than 1. For instance, call simple moneyness with S/K ratio will be ITM for a ratio greater than one (or less than 1 if using K/S). This ratio standardizes moneyness to correspond with a value greater or less than 1 depending on the ratio used as opposed to a random strike value.

Log-simple-moneyness: moneyness is measured in terms of the forward price of the asset: $\log(F/K)$ where ATM would be when moneyness is 0, which occurs when $F=K \implies \log(1)=0$. Another measure of standardization where moneyness centers around the value of 0 and ITM/OTM can be greater or less than 0. According to Wiki, "While the spot is often used by traders, the forward is preferred in theory, as it has better properties." They are referring to derivative pricing models as it simplifies calculations when using ATMF.

Standardized-forward-moneyness: $\frac{\ln(F/K)}{\sigma\sqrt\tau}$ takes into consideration the volatility and time to maturity of the underlying asset in the measurement of moneyness in terms of standard deviation units (number of standard deviations the current forward price is above the strike price).

Delta moneyness: used to construct vol surface instead of strike moneyness since delta is more consistent measure of how close to the money the option is (e.g. 10% OTM by strike can be close for long maturity but far for short maturity while 10% OTM by delta would remain consistent throughout terms of option). Moreover, delta moneyness describes near the money in more detail (ATM near expiry) and delta surface provides more natural view from hedging activities as investors hedge delta and not the spot.

In regards to your question about interpolation, yes, typically modelers will interpolate the moneyness and time axis. The details will depend on the specific models used but once the axes are interpolated, the surface will need remove any calendar and butterfly arbitrage opportunities. Remember, volatility is essentially used a pricing mechanism so hence the surface needs to be free of arbitrage.

Please refer to this Wiki page for more info on moneyness: https://en.wikipedia.org/wiki/Moneyness

  • $\begingroup$ Thanks for the detailed reply. Am i right in thinking that moneyness is a display thing relevant to rending the surface as a useful image? From a pricing point of view, if I am using the surface to get a volatility number for pricing an OTC option, i will need to call something like "surface.getVolatility(strike,tte)" ... moneyness will not come in here, right? So interpolation on the moneyness axis is really going to be interpolating between strikes. Is that right? $\endgroup$
    – brownie74
    Commented Nov 17, 2020 at 12:52
  • $\begingroup$ It is not quite clear what exactly is meant by "Delta" moneyness. The Wiki article says that it is equal to the BS delta, but there seems to be inconsistency since one BS is using S while the article uses F in its definition of $d_{+}$. And if we look at Black's delta instead, then there is a discounting factor in front of the CDF, which doesn't appear in the article. $\endgroup$
    – Confounded
    Commented Nov 27, 2023 at 2:31
  1. If you use constant strike, the moneyness changes as the underlying changes. Out of the money equity options tend to trade at a premium to at the money options (smiles/skew). Therefore, the moneyness is used to take into account the movement of the underlying.

  2. Yes, if you are trying to price an option with a strike whose moneyness is in between the options used to provide the data along your moneyness axis, you would need to do some interpolation to arrive at the volatility used to price this option.

  • $\begingroup$ Thanks for your input. Would you interpolate the moneyness and then back out a strike from that interpolated value and spot? Or would you interpolate the underlying strike. I see you might get different result depending on which you did. $\endgroup$
    – brownie74
    Commented Nov 17, 2020 at 12:56
  • $\begingroup$ @brownie74 It shouldn't make a difference if you convert your strike to moneyness and look up the vol for the corresponding moneyness; or convert your moneyness axis to strikes and look up the vol for the strike of your option. The most important factor will be that the surface and the moneyness calc of your option strike is contemporaneous. The interpolation method also will add some differences between your surface and the price. At the end of the day, the model is a theoretical construct and the actual price is going to be determined in a negotiation with your dealers for your OTC option $\endgroup$
    – AlRacoon
    Commented Nov 17, 2020 at 16:34
  • $\begingroup$ Why would you want to interpolate along the strike axis anyway? I can see if you were pricing an OTC option using this vol surface, then you might have a different expiry date to those contracts used as underliers. So you need to interpolate IVs that lie between contract dates. But for strikes, how would the user need to price an option with a fractional strike? Surely an OTC option would be done with a strike that is on a traded contract? Or is strike interpolation mainly used when you have filtered out a contract from your bootstrap inputs due to low liquidity (for ex.)? $\endgroup$
    – brownie74
    Commented Nov 18, 2020 at 7:51
  • $\begingroup$ If all your strikes line up with the data used for the moneyness axis, then there is no need to interpolate. $\endgroup$
    – AlRacoon
    Commented Nov 18, 2020 at 19:34
  • $\begingroup$ Can you describe an example where you would have to interpolate on the strike axis please? I mean a use case involving the pricing of an OTC trade and a volatility surface based on the same underlying stock. $\endgroup$
    – brownie74
    Commented Nov 19, 2020 at 8:46

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.