I have came across the excellent answer.

I'm looking for a dicrete approximation of the Carr-Madan decomposition formula of the function $f(F_T)$ of the terminal futures price by taking a static position at time $t=0$ in options:

$$f(F_T)=f(\kappa) + f'(\kappa) [(F_T - \kappa)^+ - (\kappa - F_T)^+] + \int_0^{\kappa} f''(K) (K-F_T)^+ \ d K + \int_{\kappa}^{\infty} f''(K) (F_T-K)^+ \ d K.$$ The first term can be interpreted as the payoff from a static position in $f(\kappa)$ pure discount bonds, each paying one dollar at $T$. The second term can be interpreted as the payoff from $f'(\kappa)$ calls struck at $\kappa$ less $f'(\kappa)$ puts, also struck at $\kappa$. The third term arises from a static position in $f''(K)dK$ puts at all strikes less than $\kappa$. Similarly, the fourth term arises from a static position in $f''(K)dK$ calls at all strikes greater than $\kappa$.

My intuition is to approximate the integral formula by a weighted sum of prices of put and calls on the same underlying asset. The aim of the approximation is the implementation of the option portfolio.

Let's say at time $t=0$ one can take a static position (buy-and-hold), and the option's portfolio includes $x_i^c$, $x_i^p$ units of European call and put options, $x_i^c, x_i^p>0$ for buying, $x_i^c, x_i^p<0$ for selling, if $x_i^c$ or $x_i^p$ equal to $0$ its means that the contract does not include in the portfolio, $k^i_c$, $k^i_p$ are the corresponded call and put strikes, $i=1,2, \ldots, n$, $S_t$ is a price of the underlying asset at calendar time, $0 \le t \le T$. Then the second term at time $t=0$ can be approximated by the formula

$$f'(\kappa) [(F_T - \kappa)^+ - (\kappa - F_T)^+]\approx \sum_{i=1}^{n} x_i^c (S_t - k_c^i)^{+} + x_i^p (k_p^i - S_t)^{+},$$ the first term is the value of the call option payoff and the second is the value of the put option payoff, $X^+=\max(X, 0)$.

My question is: If my intuition is correct how to specify the number $n$?

Update. How to calculate VIX

How to be with the first term $f(\kappa)$ and the third term $\int_0^{\kappa} f''(K) (K-F_T)^+ \ d K$ and the fourth term $\int_{\kappa}^{\infty} f''(K) (F_T-K)^+ \ d K$?


Carr-Madan formula tells you that the European-style payoff $f(F_T)$ can be decomposed as: $$f(F_T)=f(\kappa) + f'(\kappa) [(F_T - \kappa)^+ - (\kappa - F_T)^+] + \int_0^{\kappa} f''(K) (K-F_T)^+ \ d K + \int_{\kappa}^{\infty} f''(K) (F_T-K)^+ \ d K$$ for any positive $\kappa$ of your choice.

Assuming deterministic rates w.l.o.g. as well as a complete market, by absence of arbitrage opportunity, to generate the payoff on the RHS at $t=T$, one can enter the following (static) positions today, at $t=0$:

$$ \underbrace{\Bbb{E}_0^\Bbb{Q}\left[ e^{-rT} f(\kappa)\right]}_{(1)} + \underbrace{\Bbb{E}_0^\Bbb{Q}\left[ e^{-rT} f'(\kappa) [(F_T - \kappa)^+ - (\kappa - F_T)^+]\right]}_{(2)} + \underbrace{\Bbb{E}_0^\Bbb{Q}\left[ e^{-rT} \int_0^{\kappa} f''(K) (K-F_T)^+ \ d K\right]}_{(3)} + \underbrace{\Bbb{E}_0^\Bbb{Q}\left[ e^{-rT} \int_{\kappa}^{\infty} f''(K) (F_T-K)^+ \ d K\right]}_{(4)} $$

where by definition: $$ (1) = f(\kappa) B(0,T), \quad (2) = f'(\kappa) (C(\kappa,T)-P(\kappa,T)) $$ $$ (3) = \int_0^\kappa f''(K) P(K,T) dK,\quad (4) = \int_\kappa^\infty f''(K) C(K,T) dK $$

$(1)$ is equivalent to go long $f(\kappa)$ zero-coupon bonds $B(0,T)$, while $(2)$ corresponds to being long $f'(\kappa)$ European calls written on the future and short $f'(\kappa)$ European puts. Terms $(3)$ and $(4)$ are more tricky as, per se, they require taking positions in an infinite number of contracts, which is not practical.

As you suggest, we could therefore approximate integrals using finite sums, see the calculation of the VIX index for instance. In that case $(3)$ (the reasoning for $(4)$ is almost identical) would become: $$ \int_0^\kappa f''(K) P(K,T) dK = \frac{1}{2} \sum_{i=1}^{N-1} (f''(K_i) P(K_i,T) + f''(K_{i+1}) P(K_{i+1},T)) (K_{i+1}-K_i) $$ where we have used the trapezoidal rule along with ${\bf{K}}=\{ K_i \}_{i=1}^N$ a partition of the interval $[0,\kappa]$ (you could also a simple Riemann sum the idea stays the same) meaning that $(3)$ corresponds to being:

  • Long $\frac{1}{2}f''(K_i)(K_{i+1}-K_i)$ puts $P(K_i,T),\quad i=1,...,N-1$
  • Long $\frac{1}{2}f''(K_{i+1})(K_{i+1}-K_i)$ puts $P(K_{i+1},T),\quad i=1,...,N-1$

The tricky part in practice is really the finite number of options that actually trade, meaning that you may not have the right granularity to decently approximate the integrals in the Carr-Madan formula (discretisation error + truncation error).

  • $\begingroup$ Thanks you for the answer. In your answer short puts were mentioned only. Could you please clarify: how to derive the number of short calls? $\endgroup$ – Nick Oct 31 '16 at 10:31
  • $\begingroup$ Not sure I understand. From the original C-M formula, you see that you are long: (a) $f'(\kappa)$ calls (term $(2)$), (b) $f''(K_i)(K_{i+1}-K_i)$ for $i=1,...,N$, where $\kappa = K_1 < ... < K_N = K_{trunc}$ if you use a simple Riemann sum to approximate integral $(4)$. $\endgroup$ – Quantuple Oct 31 '16 at 10:49
  • $\begingroup$ I was thinking the C-M formula is symmetric, i.e. the function contains long as well as short on calls and puts. Can we rewrite $(3) = \int_0^\kappa f''(K) P(K,T) dK = -\int_0^\kappa f''(K) C(K,T) dK$ and obtain short calls instead of long puts? $\endgroup$ – Nick Oct 31 '16 at 15:20
  • $\begingroup$ Maybe that I was not clear. What tells you if you are long or not at the end of the day is the sign of $f'(\kappa)$ and $f''(K_i)$. In other words "long $f'(\kappa)$ calls" actually turns out to be "short $\vert f'(\kappa) \vert$ calls" if $f'(\kappa) < 0$ $\endgroup$ – Quantuple Oct 31 '16 at 15:28
  • $\begingroup$ I have looked through the VIX Calculation. The number of options used in the VIX calculation may vary even minute-to-minute, in example, $n$ above 100. May be use another approximation methods, for instance, spline or Newton–Raphson approximation? $\endgroup$ – Nick Nov 1 '16 at 6:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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