Jan
5

## Vanna Volga Method

The

By building a self-financing portfolio consisting a unit of option at strike K, -delta1 units of underlying asset, and -xi units of options at strike ki, Castagna and Mercurio (2007) calculate the weight xi for three given quotes with the help of Ito's lemma and then approximate the European option value under

Below is a simple Matlab code to price a call option based on Castagna and Mercurio (2007):

where Vega is a function to compute vega under black scholes formula

Implied volatilities curve is therefore easily achieved by inverting VV pricing model. Interested ppl please refer to http://www.risk.net/risk/technical-paper/1506580/the-vanna-volga-method-implied-volatilities or an advanced one www.mathfinance.de/wystup/papers/wystup_vannavolga_eqf.pdf

Hot posts:

15 Incredibly Stupid Ways People Made Their Millions

Online stock practice

Ino.com: Don't Join Marketclub until You Read This MarketClub Reviews

World Changing Mathematical Discoveries

Value at Risk xls

Random posts:

New Site Feature - Q&A

Maximum likelihood estimation of CIR interest rate

CreditMetrics spreadsheet

Free C++, Matlab, and VBA code for derivative pricing

Download Multiple Stock Quotes

**vanna volga method**is a popular pricing model for implied volatilities, especially for foreign exchange options, it is an empirical procedure that can be applied to "draw" an implied volatility smile curve from three given quotes (reversal, ATM and butterfly) for a certan time to maturity. Empirical research shows**the vanna volga method**has a comparable pricing performance with some stochastic volatility model, for example, Castagna and Mercurio (2007) show the implied volatility curve of vanna volga method outperforms that of Malz (1997), and performs equally well as of SABR (2002).By building a self-financing portfolio consisting a unit of option at strike K, -delta1 units of underlying asset, and -xi units of options at strike ki, Castagna and Mercurio (2007) calculate the weight xi for three given quotes with the help of Ito's lemma and then approximate the European option value under

**vanna volga method**, as stated in the paper, VV pricing model has several advantages: "it has a clear financial rationale supporting, based on the hedging argument...; it allows for an automatic calibration to the main volatility data...; ... it can be extended to any European-style derivative..."Below is a simple Matlab code to price a call option based on Castagna and Mercurio (2007):

% option price under Vanna volga model for any strike k

% sigma2 is ATM implied vol, k2 is ATM strike

s = 1.205;

t = 94/365;

r = -log(0.9902752)/t;

rf = -log(0.9945049)/t;

sigma1 = 0.0979;

sigma3 = 0.0929;

sigma2 = 0.09375;

k1 = 1.172;

k3 = 1.2504;

k2 = 1.2115;

k = 1.24;

Vega1 = Vega(s,k1,r,t,sigma2,rf);

Vega3 = Vega(s,k3,r,t,sigma2,rf);

Vegak = Vega(s,k,r,t,sigma2,rf);

x1 = Vegak*log(k2/k)*log(k3/k)/(Vega1*log(k2/k1)*log(k3/k1));

x3 = Vegak*log(k/k1)*log(k/k2)/(Vega3*log(k3/k1)*log(k3/k2));

price = blsprice(s,k,r,t,sigma2,rf)+x1*(blsprice(s,k1,r,t,sigma1,rf)...

-blsprice(s,k1,r,t,sigma2,rf))+x3*(blsprice(s,k3,r,t,sigma3,rf)...

-blsprice(s,k3,r,t,sigma2,rf));

% sigma2 is ATM implied vol, k2 is ATM strike

s = 1.205;

t = 94/365;

r = -log(0.9902752)/t;

rf = -log(0.9945049)/t;

sigma1 = 0.0979;

sigma3 = 0.0929;

sigma2 = 0.09375;

k1 = 1.172;

k3 = 1.2504;

k2 = 1.2115;

k = 1.24;

Vega1 = Vega(s,k1,r,t,sigma2,rf);

Vega3 = Vega(s,k3,r,t,sigma2,rf);

Vegak = Vega(s,k,r,t,sigma2,rf);

x1 = Vegak*log(k2/k)*log(k3/k)/(Vega1*log(k2/k1)*log(k3/k1));

x3 = Vegak*log(k/k1)*log(k/k2)/(Vega3*log(k3/k1)*log(k3/k2));

price = blsprice(s,k,r,t,sigma2,rf)+x1*(blsprice(s,k1,r,t,sigma1,rf)...

-blsprice(s,k1,r,t,sigma2,rf))+x3*(blsprice(s,k3,r,t,sigma3,rf)...

-blsprice(s,k3,r,t,sigma2,rf));

where Vega is a function to compute vega under black scholes formula

function VegaValue = Vega(s,k,r,t,sigma,rf)

d1 = (log(s/k)+(r-rf+0.5*sigma^2)*t)/(sigma*sqrt(t));

VegaValue = s*exp(-rf*t)*sqrt(t)*normpdf(d1,0,1);

d1 = (log(s/k)+(r-rf+0.5*sigma^2)*t)/(sigma*sqrt(t));

VegaValue = s*exp(-rf*t)*sqrt(t)*normpdf(d1,0,1);

Implied volatilities curve is therefore easily achieved by inverting VV pricing model. Interested ppl please refer to http://www.risk.net/risk/technical-paper/1506580/the-vanna-volga-method-implied-volatilities or an advanced one www.mathfinance.de/wystup/papers/wystup_vannavolga_eqf.pdf

**People viewing this post also viewed:**

Hot posts:

Random posts: