Volatilità implicita con
Visual Basic for
Application
Utilizzo del linguaggio Basic utilizzando l’interfaccia di
Excel
Silvia Patacchini
È necessario prendere in considerazione:
1. periodo di riferimento;
2. disponibilità di una serie storica dei prezzi
relativa al periodo di riferimento considerato.
Si considera la deviazione standard annualizzata
del logaritmo dei prezzi relativo alla attività
finanziaria di cui si vuole stimare la variabilità.
Per prezzo relativo considereremo il rapporto tra i
prezzi delle attività in al tempo i ed al tempo i-1.
Volatilità storica
Si possono distinguere vari concetti di
volatilità:
Volatilità storica: variabilità del prezzo
di un titolo in un dato periodo passato;
Volatilità implicita: stima della
variabilità del prezzo di un titolo attesa
dal mercato per un dato periodo futuro,
coincidente con la durata dell’opzione;
La volatilità
Si calcola quindi la volatilità storica intesa come:
dove:
Se si considera la serie storica dei valori giornalieri
di prezzi si ricaverà la corrispondente misura
della volatilità che su base annua sarà:
Volatilità annuale = volatilità giornaliera *Radq(giorni anno)
Il limite della volatilità storica è di essere una
stima della volatilità futura di un asset
finanziario.
La volatilità implicita > proviene dal confronto
tra il risultato derivante da un modello di pricing
e gli input di calcolo utilizzati che sono il:
-prezzo Spot dell’attività finanziaria sottostante;
-lo strike price;
-la data di scadenza;
-tasso risk free;
-dividendo;
Volatilità implicita
Non essendo invertibile analiticamente la
formula di Black&Scholes, è necessario
procedere iterativamente.
Si effettua una serie di prove su una serie di
valori della variabile da determinare fino a
quando non si riesce a trovare quel valore in
corrispondenza del quale si ottiene il prezzo
di mercato dell’opzione.
Solo la volatilità attesa, quindi implicita, fornisce informazioni utili
per la valutazione di opzioni e warrant. Spesso, tuttavia, le
previsioni sono influenzate dalla volatilità storica.
Maggiore è la volatilità, più redditizi risultano i warrant o le
opzioni, indipendentemente dal fatto che si tratti di opzioni call o
put. Se la volatilità è elevata, infatti, aumenta la probabilità che il
warrant risulti in the money alla scadenza e quindi abbia un
valore intrinseco. Se la volatilità diminuisce, la probabilità si
riduce e l’opzione ha un valore minore.
Poiché non è possibile calcolare con esattezza la volatilità
implicita partendo dalla volatilità storica, è necessario basarsi su
alcune stime. Per le opzioni standard europee, nella forma
prevista dal modello Black-Scholes, è possibile utilizzare a tale
scopo il metodo, molto efficace, di Newton-Raphson, che di
norma converge alla volatilità implicita richiesta attraverso tre o
quattro iterazioni, partendo dalla quotazione del derivato e non
da quella del sottostante.
Il metodo di Newton
Newton--Raphson.
Raphson.
Questo metodo, che nel calcolo della volatilità implicita
risulta molto efficiente
Si attribuisce un valore alla volatilità e si calcola il prezzo
dell'opzione.
Se tale valore differisce dal prezzo di mercato si affina la
stima iniziale.
In matematica e più specificamente in analisi numerica, il
metodo delle tangenti, chiamato anche metodo di Newton
o metodo di Newton-Raphson, è uno dei metodi per il
calcolo approssimato di una soluzione di un'equazione della
forma f(x)=0.
Esso si applica dopo aver determinato un intervallo [a,b]
che contiene una sola radice.
VOLATILITà IMPLICITA
Volatilità Attesa (Market view)
view)
Modelli di mercato (Black&Scholes
(Black&Scholes model)
model)
Mkt Price 
 ⇒ Implied Vol (σ )
Black Price 
−r(TTM )

σ∗ ⇔ f (σ∗ ) = St N ( d1 ) − K e
N ( d2 )  − CMKT = 0
σ 0 → f (σ 0 )
IF f (σ 0 ) = 0 → σ 0 = σ ∗

IF f (σ 0 ) ≠ 0 → NewVol (σ1 ) → f ′ (σ 0 )
Mangin Smile Risk
Prices and Volatilities
f ′ (σ 0 ) = VEGA = S TTM
f (σ 0 )
σ1 = σ0 −
f ′ (σ 0 )
σ1 → f (σ1 )
e
IF f (σ1 ) = 0 →σ1 =σ∗

IF f (σ1 ) ≠ 0 →NewVol (σ2 ) → f ′(σ2 )
σ 2 → f (σ 2 ) ≠ 0 → K → σ n → f (σ n ) ≅ 0 ⇔ σ n = σ ∗
N.B:
f (σn−1 )
BlackPrice − CMKT
→(σn −σn−1 ) = −
σn = σn−1 −
f ′ (σn−1 )
VEGA
CMKT ≅ BlackPrice + ∆σVEGA
 Taylor 


 Expansion 
Function Newton(Spot As Double, strike As Double, expTime As Double, rf As
Double, marketprice As Double, Vanillatype As Integer) As Double
Dim i, maxit As Integer
Dim d1, func, deriv As Double
maxit = 100
Newton = 0.1
For i = 1 To maxit Step 1
func = Black2(Spot, strike, rf, expTime, Newton, Vanillatype) - marketprice
d1 = (Log(Spot / strike) + (rf + 0.5 * (Newton ^ 2)) * expTime) / (Newton *
(expTime ^ 0.5))
deriv = Spot * (expTime ^ 0.5) * ((Exp(-0.5 * d1 ^ 2)) / ((2 *
3.14159265358979) ^ 0.5))
Newton = Newton - func / deriv
If Newton <= 0 Then Newton = 0.01
If Abs(func / deriv) < 0.0001 Then i = maxit
Next i
End Function
Scarica

Volatilità implicita con Visual Basic for Application