1

Is call/put wing volatility smile calibration approach used in practice? To calibrate an index (SPY) using only more liquid OTM calls/puts, to kind of use an "if" condition on K to S0 to determine whether to use call or put formular? More details;

literature I found on the internet usually calibrate vol smiles/skews to call options (Euro SPY), (assuming put-call parity),

but in practice as I know calibration (index) is done to OTM puts and calls, due to more liquidity. Also, looking at IV (BBG terminal option chain data) of puts and calls with same strike, the IV wont be the same, small differences I have observed.

I am looking at the calibration code provided here Heston model SPY calibration

It would require a few changes (hopefully) to the code,like changing the option param payoff argument to:

if K>S0 payoff 'call' elif K<S0 payoff 'put' else...

# Unconstrained problem
def f_Hest(x, rho, sigma, theta, kappa, v0):
    Heston_param = Heston_process(mu=r, rho=rho, sigma=sigma, theta=theta, kappa=kappa)
    opt_param = Option_param(S0=S0, K=K, T=T, v0=v0, exercise="European", payoff=payoff)
    Hest = Heston_pricer(opt_param, Heston_param)
    return Hest.FFT(x)

init_vals = [-0.6, 1.0, 0.04, 2.5, 0.04] bounds = ([-1, 1e-15, 1e-15, 1e-15, 1e-15], [1, np.inf, 2, np.inf, 2]) params_Hest = scpo.curve_fit( f_Hest, strikes, prices, p0=init_vals, bounds=bounds, sigma=spreads, xtol=1e-4, max_nfev=1000 )

I believe I would get something like this;

enter image description here

Skittles
  • 155
  • 6
  • 2
    The Bloomberg vol surface is computed using something very similar to the steps outlined here. – AKdemy Feb 08 '24 at 17:59
  • 1
    I would say I disagree with the statement in the linked text that:"the best approach is to derive the model parameters directly from the prices". For example, extracting Local Volatilities from prices is an unstable inverse problem and is usually avoided. Also, by computing a vol surfaces up front you can "clean" the data and get rid of potential arbitrage. That's what you see on OVDV. – AKdemy Feb 08 '24 at 18:08
  • 2
    In my experience, Heston isn't used to build surfaces. Mostly it's SVI or something similar. – AKdemy Feb 08 '24 at 18:12

0 Answers0