What is the best function to build a Delta neutral Butterfly SPP?

Hello.

I would like to insert a delta neutral structured products in a model. The SP is a long butterfly spread and It can be constructed by purchasing one in-the-money call option at a lower strike price, while also selling two at-the-money call options and buying one out-of-the-money call option. I would like to find the strike price of the in-the-money call option to make the Delta of the SP = 0. I’m doing it using the function “findroot” because I used it in the past for a straddle and it worked but in this case not. Is there a better function to do it? Or am I using it in an incorrect way? The file with the code is attached.

Any help will be very precious for me.

Lorenzo

Butterfly code.nb (278 KB)

Solved

Hi Lorenzo,

Would you mind posting the solution?

Hello Rohit,
I’m sorry, I didn’t see your question before. I used the findroot function. I will post an example, probably tomorrow.

K[sigma_, k_, zeta_, Ka_, K_, Ko_, V_, S_] :=
x /. FindRoot[gs[sigma, k, zeta, Ka, x, Ko, V, S] == 0, {x, 100}][[1]]

Plot[{psi[sigmab, kb, zetab, Kab, 
   K[sigmab, kb, zetab, Kab, x, Kob, sqrtVb^2, Sb], Kob, sqrtVb^2, Sb,
    x, Tb], 
  phi[sigmab, kb, zetab, Kab, 
   K[sigmab, kb, zetab, Kab, x, Kob, sqrtVb^2, Sb], Kob, sqrtVb^2, Sb,
    x, Tb], 
  1 - (psi[sigmab, kb, zetab, Kab, 
      K[sigmab, kb, zetab, Kab, x, Kob, sqrtVb^2, Sb], Kob, sqrtVb^2, 
      Sb, x, Tb] + 
     phi[sigmab, kb, zetab, Kab, 
      K[sigmab, kb, zetab, Kab, x, Kob, sqrtVb^2, Sb], Kob, sqrtVb^2, 
      Sb, x, Tb])}, {x, 0, 10}]

This is an example. gs is the function to compute the delta of the structured product. Findroot finds the value of the strike price of a call option included in the structured product for which the structured product is delta neutral (gs=0).

Thanks!