Giovanni Della Lunga
Università degli Studi di Bologna

Alberi Binomiali, Trinomiali e
Differenze Finite
Applicazioni al P...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Perché preoccuparsi dei metodi
numerici?


Esistono soluzioni analitiche al problema del
pricing di derivati?




Il mo...
Perché preoccuparsi dei metodi
numerici?
− rt

C = SN (d1 ) − Ee N (d 2 )


Se per metodo in forma chiusa si intende una ...
Perché preoccuparsi dei metodi
numerici?


Ogni metodo numerico comporta uno o più tipi di errore!



E’ necessario cono...
Analisi degli Errori


Un computer è in grado di rappresentare soltanto un numero finito di cifre



Un numero reale può...
Analisi degli Errori




Un esempio estremo con Excel:
calcolo del grafico della funzione (x-1)6 in un intorno di zero

...
Analisi degli Errori


Sorgenti di Errore



Semplificazioni introdotte nel modello
Errori nei dati





Errori di a...
Analisi degli Errori


Dato un problema matematico possiamo distinguere, per quanto riguarda la
propagazione degli errori...
Analisi degli Errori


Nel caso di un algoritmo, per indicare il suo
comportamento rispetto alla propagazione degli
error...
Analisi degli Errori


Tecniche di controllo degli errori




Backward analysis
Aritmetica dell’intervallo
Perturbazio...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Il modello Binomiale


In ogni periodo assumiamo che il prezzo del
sottostante possa muoversi in due sole direzioni
(Mode...
Il modello Binomiale
Sd
fd
S
f





Sia S il valore del sottostante e f il valore
dell’opzione scritta su di esso.
Formi...
Il modello Binomiale




Il portafoglio è quindi privo di rischio per cui, al fine di evitare
possibilità di arbitraggio...
Il modello Binomiale: Un Esempio Numerico
Su = 5.630

Opzione CALL su ENEL

fu = 0.630

Data Valutazione

8/11/2003

Conse...
Estensione a più periodi
πH

1-π H

π

Y(HH)

Y(HL)

Y(H)

Y(0)

πL
1-π

Y(LH)

1-π L

Y(LL)

Y(L)
Bushy trees/Recombining trees


Dopo n periodi (steps) l’albero presenta 2n nodi (stati). Un albero
solo dopo 100 steps g...
Recombining trees


Sostituendo un albero a cespuglio con un albero
“ricombinante” rinunciamo alle informazioni sui singo...
Estensione a più periodi
πH
π

Y(HH)

Y(H)
1-π H

Y(0)

Y(HL)≡ Y(LH)

πL
1-π

Y(L)
1-π L

Y(LL)
Come costruire un albero binomiale
Generalizzazione a più livelli


Riprendiamo la definizione di
probabilità risk-neutral



Poniamo



Inoltre ricordiam...
Generalizzazione a più livelli


Possiamo quindi scrivere



r∆t

e −d
π* =
u−d

Come determiniamo i fattori u e d?


I...
Generalizzazione a più Livelli
ST
2
2  ST
r=
− 1 ⇒ σ (r ) = σ 
S
S0
 0
 ST
σ (r ) = Eπ 
S
 0
2

 ST
Eπ 
S
 0
...
Generalizzazione a più Livelli
σ 2 (r ) = πu 2 + (1 − π )d 2 − π 2u 2 − (1 − π ) 2 d 2 − 2π (1 − π )ud =
πu 2 (1 − π ) + π...
Generazione a più Livelli




Verifichiamo che la posizione

u = eσ

∆t

,

d = e −σ

porta al risultato desiderato.
Svi...
Generazione dei valori per il sottostante
125.5
120.8
116.3
112
107.9
103.9
100

112
107.9

103.9
100

96.29

116.3

107.9...
Generazione dei valori per l’opzione
For j = 0 To NumeroSteps
V(j, NumeroSteps) = Payoff(s(j, NumeroSteps), Strike, FlagCa...
Opzioni Americane






Fino a questo momento abbiamo considerato solo opzioni di
tipo europeo cioè opzioni esercitabil...
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Calcolo del Prezzo di un’Opzione con Albero Binomiale
Calcolo del P...
Alberi Binomiali in più dimensioni








E’ relativamente semplice costruire un albero in tre
dimensioni per rappres...
Alberi Binomiali in più dimensioni


Si supponga ad esempio che le variabili siano date dai prezzi
S1 ed S2.



Ciascuna...
Alberi Binomiali in più dimensioni






Il caso più interessante è naturalmente quello in cui le variabili
siano corre...
Alberi Binomiali in più dimensioni
u1 = e

2
( r − q1 −σ 1 / 2 ) ∆t +σ 1 ∆t

d1 = e
A=e
B=e
C =e

2
( r − q1 −σ 1 / 2 ) ∆t...
Opzioni con due sottostanti: Alcuni Esempi


Spread Options









max(0,max(Q1S1,Q2S2)-X)
max(0,X-max(Q1S1,Q2S2))...
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Un Albero Binomiale Tridimensionale
Un Albero Binomiale Tridimensio...
Alberi Binomiali e Barriere












Se, per valutare un’opzione con barriera, si usa un albero binomiale
standar...
Alberi Binomiali e Barriere
Alberi Binomiali e Barriere



Una possibile soluzione è la seguente;
Supponiamo di voler porre esattamente m livelli (p...
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Come Inserire una Barriera in un Albero Binomiale
Come Inserire una...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Alberi Trinomiali


In alternativa agli alberi binomiali, si possono
usare gli alberi trinomiali
Alberi Trinomiali
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Un Esempio di Albero Trinomiale
Un Esempio di Albero Trinomiale
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Informazione implicita






I mercati delle opzioni trasmettono informazioni sulla
distribuzione, aggiustata per il ri...
La volatilità implicita


Smile


Spesso sulla stessa azione sono quotate più
opzioni con prezzi di esercizio e scadenza...
La volatilità implicita
Tuttavia è stato osservato che la volatilità implicita
per contratti con identica vita residua var...
La volatilità implicita


Smile


Di norma le opzioni “out” e “in” the money hanno un valore di
volatilità implicita mag...
Volatilità implicita





Dato il prezzo di mercato di un’opzione, Invertendo l’equazione di
Black & Scholes possiamo r...
Volatilità implicita


L’algoritmo di Newton-Raphson



Data una funzione f(x) il problema consiste nel determinare il
v...
L’algoritmo di Newton-Raphson


All’equazione f(x) = 0 si sostituisce così
l’equazione della retta tangente

f ( xk ) + (...
START
START
Input X0,
InputEPS,
X0,
EPS,
MAX_ITER
MAX_ITER

Calcola f(X0)
Calcola f(X0)

Calcola f’(X0)
Calcola f’(X0)

Ca...
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Calcolo della volatilità implicita nel prezzo di opzioni Call
Calco...
Volatilità Implicita


Il metodo della secante










L’efficienza del metodo di Newton-Raphson dipende dalla
vol...
Volatilità Implicita


Il metodo della secante


se il valore di C(σ) ottenuto inserendo nel modello di Black & Scholes ...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
“Butterflay Spread” e prezzi di Arrow-Debreu








E' noto che i mercati dei contratti derivati hanno un forte
conte...
I titoli di Arrow-Debreu





Supponiamo di disporre di un titolo che garantisce un pay-off unitario se e
solo se si ve...
I titoli di Arrow-Debreu






Possiamo anche utilizzare i prezzi di Arrow-Debreu per fornire una
definizione alternati...
“Butterflay Spread” e prezzi di Arrow-Debreu


Come Sappiamo, in un modello binomiale il valore al tempo 0
di un generico...
“Butterflay Spread” e prezzi di Arrow-Debreu


Naturalmente le due probabilità sono
strettamente collegate...

π1

π2

p ...
“Butterflay Spread” e prezzi di Arrow-Debreu




Il prezzo di un titolo di Arrow-Debreu individua il valore
scontato del...
“Butterflay Spread” e prezzi di Arrow-Debreu


Ritornando alla notazione matematica possiamo scrivere che il
prezzo di me...
“Butterflay Spread” e prezzi di Arrow-Debreu


Assumete di avere un albero binomiale in cui il valore del titolo
rischios...
“Butterflay Spread” e prezzi di Arrow-Debreu


Abbiamo così costruito un titolo di Arrow-Debreu!



Con questa tecnica, ...
Probabilità implicite


Valore di un call spread verticale
C(Mib30,t;T,40000-h)- C(Mib30,t;T,40000)



Dividiamo per h e...
Bull spread: Mib30 - 40000
50000
50000

40000
40000

30000
30000

20000
20000

10000
10000

0

0
0

-10000
-10000

-20000
...
Butterfly spread
Calcolo della densità implicita: gli step


Analisi dei prezzi di mercato delle opzioni



Calcolo dei prezzi degli spre...
“Butterflay Spread” e prezzi di Arrow-Debreu


Abbiamo così descritto una tecnica per estrarre dai prezzi
delle opzioni i...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Alberi Binomiali Impliciti


Due tecniche opposte


Rubinstein (backward induction)





Stima della probabilità impl...
Il metodo di Rubinstein


Questo metodo rappresenta un primo tentativo di riprodurre la dinamica,
aggiustata per il risch...
Il metodo di Rubinstein




Nel modello originale proposto da Rubinstein si ipotizza che ai
sentieri che portano allo st...
Il metodo di Rubinstein: due livelli








Analizziamo prima l'algoritmo proposto da Rubinstein in un
semplice model...
Il metodo di Rubinstein: due livelli

y0 (2)

p0 (2) = ππ H

y0 (1)

πH

π
y0 (0 )

y1 (2)

y1 (1)

πL

p1 (2) = π (1 − π ...
Il metodo di Rubinstein: due livelli


L'algoritmo proposto da Rubinstein è molto semplice
e consiste di quattro fasi.

...
Il metodo di Rubinstein: due livelli


Fase 2:






determiniamo le probabilità dei sentieri che portano ai due nodi ...
Il metodo di Rubinstein: due livelli


Fase 4:


calcoliamo i possibili valori del titolo rischioso al tempo 1, cioè
y0(...
Il metodo di Rubinstein: caso generale




L'estensione ad un numero generico di periodi e di nodi è soltanto
una questi...
Il metodo di Rubinstein


Nelle fasi 2 e 3 avremo ancora

p j ( n − 1) = p j ( n ) + p j +1 ( n )
πj =


p j ( n)

p j (...
Il metodo di Rubinstein


A questo punto conosciamo i valori del titolo rischioso e le
rispettive probabilità (yj (n – 1)...
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Calcolo di un Albero Binomiale Implicito con il metodo di
Calcolo d...
Il metodo di Derman e Kani






Una metodologia alternativa a quella sopra descritta
è stata proposta da Emmanuel Derm...
Il Metodo di Derman e Kani: due livelli


Vediamo innanzitutto di definire lo sviluppo dell'albero subito dopo la
radice,...
Il metodo di Derman e Kani: due livelli
y0 (2)
call(.;y (0),1) = y0(1) – y(0)

y0 (1)

πH

π

call(.;y 0(1),2) = y0(2) – y...
Il Metodo di Derman e Kani: due livelli




Il problema è di sfruttare le variabili osservate e le proprietà
della misur...
Il Metodo di Derman e Kani: due livelli


Possiamo poi utilizzare l'equazione di valutazione dell'opzione
call, della qua...
Il Metodo di Derman e Kani: due livelli





La chiusura del modello richiede l'introduzione di una terza equazione.
De...
Il Metodo di Derman e Kani: due livelli


Procediamo avanti nell'albero, cercando di determinarne i
valori rilevanti al t...
Il Metodo di Derman e Kani: due livelli


A questo punto possiamo seguire una strategia analoga alla precedente e
definir...
Il Metodo di Derman e Kani: due livelli






Analogamente, per l'opzione put abbiamo:

dove φ1(1) è un prezzo di Arrow...
Il Metodo di Derman e Kani: due livelli









Passiamo adesso ad analizzare l'algoritmo per un arbitrario nodo i a...
Il modello di Derman e Kani: n livelli

Il modello di Derman e Kani (generalizzazione)
Il modello di Derman e Kani (genera...
Il modello di Derman e Kani: n livelli


Utilizzando la definizione di prezzo forward e le proprietà della
misura aggiust...
Il modello di Derman e Kani: n livelli


Il nuovo termine S è calcolabile a partire dall'informazione disponibile al temp...
Il modello di Derman e Kani: n livelli








Possiamo notare la struttura ricursiva dell'algoritmo, e il fatto che è...
Il modello di Derman e Kani: n livelli








Utilizzando poi il valore yi(n) così ottenuto, insieme al prezzo di un'...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti




Gli
alberi
trinomiali
impliciti
rappresentano
una
generalizzazion...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti









Nel determinare i parametri di un albero binomiale implic...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Nel caso di un albero
trinomiale, al termine di
ogni
step
dobbiamo
d...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Per l’assenza di arbitraggio abbiamo

pSu + qS d + (1 − p − q) S m =...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti








Possiamo utilizzare questa libertà per scegliere in maniera...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Forward Price



pi Si + 2 + (1 − pi − qi ) Si +1 = Fi

Option Pric...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Nella precedente equazione l’unica incognita è la probabilità
di tra...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Utilizzando i prezzi di opzioni put possiamo calcolare le
probabilit...
Derman, Kani & Chriss

Alberi Trinomiali Impliciti


Una situazione che genera probabilità negative
Esempio
Esempio
Programmazione
Programmazione
VBA
VBA

Alberi Trinomiali Impliciti
Alberi Trinomiali Impliciti
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Alberi per tassi di interesse






L’albero per i tassi di interesse è una rappresentazione in
tempo discreto del proc...
Alberi per tassi di interesse


Una delle principali differenze fra gli alberi per i tassi di interesse e
gli alberi per ...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Il modello ad alberi di Hull e White


Hull e White hanno proposto una procedura a due stadi per
costruire alberi trinomi...
Il modello ad alberi di Hull e White


Ramificazioni non standard




Hull e White hanno proposto
delle modifiche al me...
Primo stadio


Ricordiamo che la dinamica del tasso di interesse istantaneo nel
modello di Hull e White è descritta da un...
Primo stadio




il primo passo della procedura prevede di
implementare un albero che tenga conto del
fenomeno della mea...
Primo stadio



Si tratta di un processo simmetrico attorno a r* = 0 ;
se consideriamo l’incremento

r ∗ (t + ∆t ) − r ∗...
Primo stadio


Nell’albero la spaziatura fra i tassi di interesse viene
scelta uguale a

∆r = σ 3∆t




secondo H&W que...
Primo stadio







Nel corso del primo stadio l’obiettivo è quello di costruire un
albero i cui nodi siano equispazia...
Primo stadio
Primo stadio




La scelta del modello di ramificazione è determinata in base
alla condizione che in ciascun nodo tutte ...
Primo stadio


Quando a > 0 è necessario
passare alla ramificazione orientata
verso il basso per un valore di j
sufficien...
Primo stadio




Sia jmax il valore di j in corrispondenza del quale si passa dalla
ramificazione simmetrica a quella or...
Primo Stadio


Siano pu , pm e pd le probabilità connesse con i rami
superiore, intermedio e inferiore che vengono
genera...
Primo stadio


Se al nodo (i, j) il metodo di ramificazione è quello simmetrico, le tre
condizioni si traducono nelle seg...
Primo stadio


Ricordando che

∆r = 3σ ∆t
2

1 a j ∆t − aj∆t
pu = +
6
2
2
pm = − a 2 j 2 ∆t 2
3
1 a 2 j 2 ∆t 2 + aj∆t
pd ...
Primo stadio

1 a j ∆t + aj∆t
pu = +
6
2
1
pm = − − a 2 j 2 ∆t 2 − 2 aj∆t
3
7 a 2 j 2 ∆t 2 + 3aj∆t
pd = +
6
2
2

2

2
Primo stadio

7 a j ∆t − 3aj∆t
pu = +
6
2
1
pm = − − a 2 j 2 ∆t 2 + 2 aj∆t
3
1 a 2 j 2 ∆t 2 − aj∆t
pd = +
6
2
2

2

2
Secondo Stadio






Il secondo stadio nella costruzione dell’albero consiste nel
convertire l’albero per r* nell’alber...
Secondo Stadio
α (t ) = r (t ) − r ∗ (t )



Definiamo la funzione



E’ facile verificare che la dinamica seguita da qu...
Secondo stadio
Secondo Stadio






Indichiamo con αi la differenza fra il valore di r e r* al
tempo i∆t ;
sia poi Qi,j il valore attu...
Secondo stadio


da un punto di vista generale, supponiamo che le Qi,j siano state determinate
fino al livello m ;



il...
Secondo stadio


La soluzione di questa equazione è

 nm

 ∑ Qm , j e − j∆r∆t  − ln ( Pm +1 )
ln

 j = − nm

αm =...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
Sistemi Lineari


La risoluzione di un sistema lineare ha un ruolo basilare nell’analisi
numerica


Es. la discretizzazi...
Sistemi Lineari


I metodi per la risoluzione dei sistemi lineari vengono,
usualmente, divisi in due raggruppamenti


Me...
Sistemi Lineari: Metodi Diretti


L’idea centrale dei metodi diretti è l’idea dell’eliminazione



L’idea consiste nel r...
Sistemi Lineari: Sistemi Triangolari

Si tratta di un caso particolarmente importante perché








la forma triangol...
Sistemi Lineari: Sistemi Triangolari

Ly = b



Forward substitution



Backward substitution

Ux = y

b1

 y1 = l
11
...
Sistemi Lineari: Decomposizione LU


Supponiamo di dover risolvere un generico sistema del tipo

Ax = b


Se riusciamo a...
Sistemi Lineari: Matrici Sparse












In numerosi casi la matrice che descrive il sistema ha numerosi elementi...
Sistemi Lineari: Studio dell’Errore


Norme


Norma di un Vettore
Nel caso particolare di un vettore a valori reali con ...
Sistemi Lineari: Studio dell’Errore


Norme


Norma di una Matrice

AB ≤ A B


La norma è “indotta” dalla norma dei vet...
Sistemi Lineari: Studio dell’Errore


Norma del massimo


La norma di matrice indotta dalla norma del
massimo è la segue...
Sistemi Lineari: Studio dell’Errore


Matrici Convergenti


Per studiare la convergenza di procedure iterative è spesso ...
Sistemi Lineari:Condizionamento




Si tratta di studiare come varia la soluzione di un sistema lineare al variare dei
d...
Sistemi Lineari:Condizionamento
∆x = A−1∆b ≤ A−1 ∆b
A
1
b = Ax ≤ A x ⇒
≤
x
b

∆x
x

≤ A A

−1

∆b
b
Sistemi Lineari: Condizionamento


Nel caso di variazione di A si ottiene…

Ax = b

( A + ∆A) ( x + ∆x) = b

Numero di Co...
Sistemi Lineari: Condizionamento


Una matrice è detta ben condizionata
relativamente alla risoluzione di un sistema
line...
Sistemi Lineari: Metodi Iterativi







Rispetto ai metodi diretti hanno il vantaggio di preservare la
struttura dell...
Sistemi Lineari: Metodi Iterativi


Metodi di Jacobi, Gauss-Seidel, Rilassamento


L’idea comune ai differenti metodi è ...
Sistemi Lineari: Metodi Iterativi


La matrice

−1

−1

−1

B = M N = M ( M − A) = I − M A
è detta matrice di iterazione;...
Sistemi Lineari: Metodi Iterativi


Metodo di Jacobi

M = D,
xi( k +1)


N = E+ F
1
=
aii

BJ = D −1 ( E + F ) = I − D −...
Sistemi Lineari: Metodi Iterativi


Metodo di Gauss-Seidel

M = D − E, N = F
xi( k +1)


1
=
aii

(

BJ = ( D − E ) F = ...
Sistemi Lineari: Metodi Iterativi


Metodo di Rilassamento




Con l’obiettivo di accelerare la convergenza si possono ...
Sistemi Lineari: Metodi Iterativi


Studio della convergenza
Considerando la decomposizione generale ed indicando con x* ...
Sistemi Lineari: Metodi Iterativi


Il metodo iterativo definito dalla matrice di iterazione
B converge se e solo se

B <...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
PDE: Definizioni e Classificazione


L’equazione di Black & Scholes




Dinamica del sottostante descritta da un’equazi...
PDE: Definizioni e Classificazione




Per trovare delle specifiche soluzioni è
necessario aggiungere opportune condizio...
PDE: Definizioni e Classificazione




L’ordine di un’equazione differenziale è l’ordine più alto fra
quelli delle deriv...
PDE: Definizioni e Classificazione





Per semplicità ci occuperemo solo di equazioni differenziali lineari;
Sebbene i...
PDE: Definizioni e Classificazione


La classificazione delle equazioni differenziali
del secondo ordine dipende dal segn...
PDE: Definizioni e Classificazione

∂φ ∂φ
+ 2 =0
2
∂x ∂y
2



Equazione Ellittica




Equazione di Laplace

Equazione I...
PDE: Definizioni e Classificazione


Equazione Parabolica


Equazione della diffusione del calore

∂φ
∂φ
=k 2
∂t
∂x
2

...
PDE: Definizioni e Classificazione


Per integrare l’equazione
occorre aggiungere una




condizione iniziale

φ ( x,0)...
PDE: Definizioni e Classificazione


Limiti del dominio di integrazione


Da un punto di vista computazionale, il domini...
PDE: Definizioni e Classificazione


La forma dell’equazione e l’insieme delle condizioni iniziali e al
contorno determin...
Perchè i metodi numerici
Alberi Binomiali
Alberi Trinomiali
Volatilità Implicita e Smile
Prezzi di Arrow-Debreu e Probabil...
L’idea di base




L’idea di base dei metodi alle differenze finite è
intuitiva e pericolosa allo stesso tempo!
Si tratt...
Approssimazione discreta

della derivata del primo ordine

• Forward Approximation

f ′( x) =

f ( x + h) − f ( x )
+ O ( ...
Approssimazione discreta

della derivata del primo ordine
Approssimazione discreta

della derivata del secondo ordine


Dallo sviluppo in serie di Taylor possiamo
ottenere un’appr...
Schemi di discretizzazione




In generale applicheremo i nostri schemi di discretizzazione a
funzioni di due variabili
...
Schemi di discretizzazione


Nei casi che andremo a studiare le variabili saranno S
(valore del sottostante) e t (tempo a...
Schemi di discretizzazione


Osservazione 1
 Poiché il dominio della soluzione all’equazione di Black e
Scholes nel cont...
Schemi di discretizzazione


Osservazione 2




Notate che il tempo “scorre” al contrario,
all’aumentare di j , t dimin...
Schemi di discretizzazione


A seconda del tipo di equazione e dell’approsimazione utilizzata per
calcolare le derivate, ...
Schemi di discretizzazione


Utilizziamo come esempio l’equazione di Black &
Scholes


Approssimazione di θ

f i , j − f...
Condizioni al contorno


Condizioni finali e payoff


Alla scadenza il valore dell’opzione è pari al payoff da cui
ricav...
Condizioni al contorno


Condizioni al contorno


Dobbiamo specificare il valore assunto dalla funzione f per
S = 0 e S ...
Condizioni al contorno


Call Option


Se il sottostante è nullo anche il valore dell’opzione è zero

f 0, j = 0


Per ...
Condizioni al contorno


Put Option


Per S = 0 abbiamo la condizione

f 0, j = Ke


− rjδt

Mentre per grandi valori d...
Condizioni al contorno


Ulteriori condizioni

∂f 1 2 2 ∂ 2 f
∂f
+ σ S
+ rS
− rf = 0
2
∂t 2
∂S
∂S
∂f (0, t )
S =0⇒
− rf (...
Condizioni al contorno


Ulteriori condizioni: se il payoff è lineare in S per grandi valori di
S

∂f 1 2 2 ∂ 2 f
∂f
+ σ ...
Condizioni al contorno


Opzioni con Barriere


Es. up-and-out Call




V(Sb, t) = 0

Volendo inserire questa condizio...
Condizioni al contorno


Opzioni con
Barriere
Spesso non è possibile
verificare questa
condizione, al fine di
mantenere b...
Condizioni al contorno


Es. Condizione sulla Barriera
 Supponiamo quindi di avere una barriera che possiamo esprimere
n...
Condizioni al contorno


Es. Condizione sulla Barriera


Se indichiamo quindi con fI-1,j un punto situato subito prima d...
Metodo Esplicito
∂f
∂ f
∂f
+ a ( S , t ) 2 + b( S , t )
+ c( S , t ) f = 0
∂t
∂S
∂S
2

f i , j − f i , j +1

 f i +1, j −...
Metodo Esplicito


Riscriviamo l’equazione alle differenze finite ponendo il termine j + 1 a
sinistra del segno di uguale...
Metodo Esplicito


Nei casi che prenderemo in considerazione, i coefficienti A, B e C
non dipendono dal tempo e quindi no...
Metodo Esplicito


Il metodo alle differenze finite esplicito è equivalente al
calcolo con alberi trinomiali

E’ calcolat...
Metodo Esplicito








L’equazione appena scritta vale solo per i punti
interni alla griglia;
Abbiamo pertanto I – 1...
Metodo Esplicito


Poiché conosciamo il valore di fi,0 che è pari al valore
del payoff, possiamo calcolare step by step t...
Esempio 1
Esempio 1
Programmazione
Programmazione
VBA
VBA

Calcolo del Prezzo di una Call Europea
Calcolo del Prezzo di un...
Metodo Esplicito

Esempio 1 – Call Europea
'
' loop di calcolo
'
For j = 0 To NumTStep - 1
For i = 1 To NumSStep - 1
A = 0...
Metodo Esplicito

Problemi di convergenza
f i , j +1 = Ai , j f i −1, j + (1 + Bi , j ) f i , j + Ci , j f i +1, j




...
Metodo Esplicito

Problemi di convergenza




Affinché il sistema converga è necessario che la norma
della matrice sia m...
Metodo Esplicito

Problemi di convergenza


Significato finanziario dei limiti
sugli intervalli
 Vediamo quale relazione...
Metodo Esplicito

Problemi di convergenza


Applicando questa approssimazione si giunge alla seguente espressione
che rap...
Metodo Esplicito

Problemi di convergenza
ˆ
Ai
ˆ
Bi
ˆ
Ci

(

)

1 22
σ i − ri δt
1
2
=
=
πd
1 + rδt
1 + rδt
1 − σ 2i 2δt
1...
Metodo Esplicito

Problemi di convergenza


Possiamo interpretare queste quantità come
probabilità risk-neutral ;

E ( ∆S...
Metodo Esplicito

Problemi di convergenza


Le condizioni di stabilità del metodo esplicito si traducono
quindi nella ric...
Esempio 2
Esempio 2
Programmazione
Programmazione
VBA
VBA

Calcolo del Prezzo di un’Opzione Parigina
Calcolo del Prezzo di...
Metodo Esplicito

Esempio 2 – Parigina
Metodo Esplicito

Esempio 2 – Parigina




Introduciamo una nuova variabile di stato che rappresenta il tempo
in cui il ...
Metodo Implicito
∂f
∂2 f
∂f
+ a ( S , t ) 2 + b( S , t )
+ c( S , t ) f = 0
∂t
∂S
∂S

f i , j − f i , j +1

 f i +1, j +1...
Metodo Implicito

Sono calcolati a partire
dai valori dell’opzione in
questo punto

I valori dell’opzione
questi punti

in
Metodo Implicito


Riscriviamo l’equazione alle differenze finite ponendo il termine i, j a
sinistra del segno di uguale
...
Metodo Implicito


Contrariamente alle apparenze il metodo implicito presenta
caratteristiche completamente diverse dal m...
Metodo di Crank-Nicolson


Il metodo di
Crank-Nicolson
può
essere
pensato come
una sorta di
media dei due
metodi visti fi...
Metodo di Crank-Nicolson


Lo schema di discretizzazione è il seguente

f i , j − f i , j +1

δt

 f i +1, j +1 − 2 f i ...
Metodo di Crank-Nicolson


Lo schema può essere riscritto nella seguente forma

− Ai , j +1 f i −1, j +1 + (1 − Bi , j +1...
Metodo di Crank-Nicolson


L’espressione appena vista può essere posta in forma matriciale
C1
0


 
 A1 (1 + B1 )
...
Metodo di Crank-Nicolson


Le due equazioni aggiuntive vengono fornite dalle condizioni al contorno.



Utilizzando anch...
Metodo di Crank-Nicolson


Es. Condizione al contorno per f0,j
C1
0


  f 0, j +1 
 A1 (1 + B1 )



A2
(1 + B2...
Metodo di Crank-Nicolson


Le matrici M che compaiono nella risoluzione dello
schema di Crank-Nicolson sono matrici tri-d...
Metodo di Crank-Nicolson


Decomposizione LU






Per problemi in cui la matrice M non dipende dal tempo, tale
approc...
Metodo di Crank-Nicolson


Metodi Iterativi






I metodi iterativi sono, in generale, più facili da
programmare dell...
Metodo di Crank-Nicolson


Metodi Iterativi


Esercizio Europeo

ω
n +1
n
vi = vi +
M ii


i −1
N


n +1
n
 qi − ∑ M...
Esempio 3
Esempio 3
Programmazione
Programmazione
VBA
VBA

Calcolo del Prezzo di una Call Americana
Calcolo del Prezzo di ...
Upcoming SlideShare
Loading in …5
×

Lezione 2 alberi e differenze finite

1,725 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,725
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
57
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Lezione 2 alberi e differenze finite

  1. 1. Giovanni Della Lunga Università degli Studi di Bologna Alberi Binomiali, Trinomiali e Differenze Finite Applicazioni al Pricing di Prodotti Derivati
  2. 2. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  3. 3. Perché preoccuparsi dei metodi numerici?  Esistono soluzioni analitiche al problema del pricing di derivati?   Il modello di Black & Scholes offre una soluzione in forma chiusa al problema del pricing di un’opzione europea? Cosa significa esattamente soluzione in forma chiusa o analitica?
  4. 4. Perché preoccuparsi dei metodi numerici? − rt C = SN (d1 ) − Ee N (d 2 )  Se per metodo in forma chiusa si intende una formula risolutiva priva di errore numerico, allora in pratica nel problema del pricing di prodotti derivati non esistono soluzioni in forma chiusa!
  5. 5. Perché preoccuparsi dei metodi numerici?  Ogni metodo numerico comporta uno o più tipi di errore!  E’ necessario conoscerne  L’origine  La propagazione  La mancata considerazione di questi aspetti può condurre a risultati del tutto privi di senso  Questi aspetti sono particolarmente importanti nel settore della risoluzione numerica delle equazioni differenziali a derivate parziali in cui, come vedremo, vengono utilizzati metodi iterativi.
  6. 6. Analisi degli Errori  Un computer è in grado di rappresentare soltanto un numero finito di cifre  Un numero reale può essere approssimato  Errore di arrotondamento  Il risultato prodotto da un algoritmo differisce, in generale, dal risultato esatto cioè da quel risultato che si otterrebbe lavorando con un numero infinito di cifre.  Senza un’idea, più precisamente una maggiorazione, della differenza dei due risultati, il risultato numerico può essere del tutto illusorio. Infatti esso può dipendere dal numero di cifre utilizzate e/o dall’ordine in cui vengono effettuale le operazioni.
  7. 7. Analisi degli Errori   Un esempio estremo con Excel: calcolo del grafico della funzione (x-1)6 in un intorno di zero 6E-14 6E-14 5E-14 5E-14 4E-14 4E-14 3E-14 3E-14 2E-14 2E-14 1E-14 1E-14 0 0 0.992 0.992 -1E-14 -1E-14 0.994 0.994 0.996 0.996 0.998 0.998 1 1 1.002 1.002 1.004 1.004 1.006 1.006 1.008 1.008
  8. 8. Analisi degli Errori  Sorgenti di Errore   Semplificazioni introdotte nel modello Errori nei dati    Errori di arrotondamento   Sistematici Casuali Sono gli errori introdotti nella rappresentazione dei numeri sul calcolatore Errori di troncamento  Sono gli errori che vengono introdotti quando un procedimento infinito viene approssimato mediante un procedimento finito (es. calcolo di una derivata)
  9. 9. Analisi degli Errori  Dato un problema matematico possiamo distinguere, per quanto riguarda la propagazione degli errori,  il comportamento del problema e  il comportamento di un particolare algoritmo utilizzato per risolvere il problema  Nel primo caso si è interessati a vedere come eventuali perturbazioni sui dati del problema si trasmettono sui risultati  Per caratterizzare un problema rispetto a questo tipo di comportamento si usa comunemente il termine condizionamento.  Un problema è ben condizionato (o mal condizionato) a seconda che le perturbazioni sui dati non influenzino (o influenzino) eccessivamente i risultati
  10. 10. Analisi degli Errori  Nel caso di un algoritmo, per indicare il suo comportamento rispetto alla propagazione degli errori è più usuale il termine di stabilità.  Si dirà quindi che un algoritmo è stabile (instabile) se la successione delle operazioni non amplifica (amplifica) eccessivamente gli errori di arrotondamento.
  11. 11. Analisi degli Errori  Tecniche di controllo degli errori    Backward analysis Aritmetica dell’intervallo Perturbazioni sperimentali  L’idea è semplice (anche se talvolta può essere eccessivamente costosa): si esegue il calcolo più volte a partire da diversi dati perturbati e usando precisioni diverse.
  12. 12. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  13. 13. Il modello Binomiale  In ogni periodo assumiamo che il prezzo del sottostante possa muoversi in due sole direzioni (Modello Binomiale);  Backward induction: partendo dalla data di scadenza del contratto derivato in cui si conosce il valore dell’opzione si risale verso la radice dell’albero calcolando ad ogni nodo la probabilità risk adjusted;
  14. 14. Il modello Binomiale Sd fd S f   Sia S il valore del sottostante e f il valore dell’opzione scritta su di esso. Formiamo un portafoglio con una posizione lunga in ∆ unità del sottostante e una corta in un’opzione call.  Il valore del portafoglio nei due stati del mondo sarà pari a Su fu  Determiniamo il valore di ∆ che rende uguali questi due valori S 0 u∆ − f u S 0 d∆ − f d fu − f d S0 u∆ − f u = S0 d∆ − f d ⇒ ∆ = S0 u − S0 d
  15. 15. Il modello Binomiale   Il portafoglio è quindi privo di rischio per cui, al fine di evitare possibilità di arbitraggio, il suo rendimento deve eguagliare il tasso di rendimento risk-free. Questo implica che il valore scontato del portafoglio in uno dei due stati del mondo futuri deve eguagliare il valore attuale oggi, ovvero S0 ∆ − f = ( S0 u∆ − f u ) e − rT ⇒ f = S0 ∆ − ( S0 u∆ − f u ) e − rT sostituendo ∆... sostituendo ∆... f =e − rT [ pf u + (1 − p) f d ] dove e rT − d p= u−d
  16. 16. Il modello Binomiale: Un Esempio Numerico Su = 5.630 Opzione CALL su ENEL fu = 0.630 Data Valutazione 8/11/2003 Consegna 19/11/2003 S = 5.414 Strike = 5.00 f = 0.432 S = 5.414 Var% giornaliera = 1.18% tasso risk free ~ 1% Sd = 5.2 fd = 0.2 Variazione a scadenza stimata al 4% ∆t = 11/365 ~ 0.03 e rT − d e0.01⋅0.03 − 0.96 0.04 p= = ≈ = 1/ 2 u−d 0.08 0.08 f =e − rT 0.630 + 0.2 [ pf u + (1 − p) f d ] ≈ = 0.415 2
  17. 17. Estensione a più periodi πH 1-π H π Y(HH) Y(HL) Y(H) Y(0) πL 1-π Y(LH) 1-π L Y(LL) Y(L)
  18. 18. Bushy trees/Recombining trees  Dopo n periodi (steps) l’albero presenta 2n nodi (stati). Un albero solo dopo 100 steps genera 1.267.650.600.228.230.000.000.000.000.000 nodi  Poiché questo tipo di albero pone problemi computazionali rilevanti, spesso si assume che sentieri con lo stesso numero di aumenti e diminuzioni del prezzo, sebbene in sequenza diversa, portino allo stesso nodo (lattice, recombining tree, reticolo,…)  Dopo 100 steps un recombining tree ha 101 nodi
  19. 19. Recombining trees  Sostituendo un albero a cespuglio con un albero “ricombinante” rinunciamo alle informazioni sui singoli sentieri che portano allo stesso nodo  L’informazione può essere rilevante per  valutare opzioni con pay-off path-dependent  modelli della dinamica del tasso di interesse  Alcuni programmi di ricerca sono dedicati a metodologie per ridurre la crescita dei bushy-trees
  20. 20. Estensione a più periodi πH π Y(HH) Y(H) 1-π H Y(0) Y(HL)≡ Y(LH) πL 1-π Y(L) 1-π L Y(LL)
  21. 21. Come costruire un albero binomiale
  22. 22. Generalizzazione a più livelli  Riprendiamo la definizione di probabilità risk-neutral  Poniamo  Inoltre ricordiamo che Y (t ) − Y ( L) P (t , T ) π* = Y ( H ) − Y ( L) Y (t ) = S Y ( H ) = Su Y ( L) = Sd P (t , T ) = e − r (T −t )
  23. 23. Generalizzazione a più livelli  Possiamo quindi scrivere  r∆t e −d π* = u−d Come determiniamo i fattori u e d?  In funzione della volatilità del sottostante u=e  σ ∆t 1 d= u La scelta d = 1/u garantisce che l’albero sia ricombinante (infatti con questa posizione si ha (Su)d = S)
  24. 24. Generalizzazione a più Livelli ST 2 2  ST r= − 1 ⇒ σ (r ) = σ  S S0  0  ST σ (r ) = Eπ  S  0 2  ST Eπ  S  0  ST Eπ  S  0 2    ST  −  Eπ   S    0   = πu + (1 − π )d   2   = πu 2 + (1 − π )d 2       2   = σ 2 ∆t   La scelta di u e d si giustifica ricordando che la volatilità del rendimento dell’azione, nel nostro modello deve essere pari a σ2∆t
  25. 25. Generalizzazione a più Livelli σ 2 (r ) = πu 2 + (1 − π )d 2 − π 2u 2 − (1 − π ) 2 d 2 − 2π (1 − π )ud = πu 2 (1 − π ) + π (1 − π )d 2 − 2π (1 − π )ud = π (1 − π )(u 2 + d 2 − 2ud ) = π (1 − π )(u − d ) 2 =  u − e r∆t  (u − d ) 2 = (e r∆t − d )(u − e r∆t ) =   u−d   = e r∆t (u + d ) − ud − e 2 r∆t e r∆t − d u−d Sostituendo ud = 1 e sviluppando al primo ordine otteniamo... e r∆t (u + d ) − ud − e 2 r∆t ≈ (1 + r∆t )(u + d ) − 1 − 1 − 2r∆t = (1 + r∆t )(u + d − 2)
  26. 26. Generazione a più Livelli   Verifichiamo che la posizione u = eσ ∆t , d = e −σ porta al risultato desiderato. Sviluppando al primo ordine in ∆t abbiamo infatti 1 2 1 2 u = 1 + σ ∆t + σ ∆t , d = 1 − σ ∆t + σ ∆t 2 2 da cui (trattenendo solo i termini al primo ordine) (1 + r∆t )(u + d − 2) = 1 1   (1 + r∆t ) 1 + σ ∆t + σ 2 ∆t + 1 − σ ∆t + σ 2 ∆t − 2  = σ 2 ∆t 2 2   ∆t
  27. 27. Generazione dei valori per il sottostante 125.5 120.8 116.3 112 107.9 103.9 100 112 107.9 103.9 100 96.29 116.3 107.9 103.9 100 96.29 92.72 s(0, 0) = PrezzoSottostante For n = 1 To NumeroSteps For j = n To 1 Step -1 s(j, n) = u * s(j - 1, n - 1) Next j s(0, n) = d * s(0, n - 1) Next n 100 96.29 92.72 89.28 92.72 89.28 85.97 85.97 82.78 79.71 Per ogni livello tutti i nodi tranne l’ultimo derivano dal corrispondente nodo precedente moltiplicato per il coefficiente u. L’ultimo nodo deriva dal precedente moltiplicato per d.
  28. 28. Generazione dei valori per l’opzione For j = 0 To NumeroSteps V(j, NumeroSteps) = Payoff(s(j, NumeroSteps), Strike, FlagCall) Next j For n = NumeroSteps To 1 Step -1 For j = 0 To n - 1 V(j, n - 1) = (p * V(j + 1, n) + (1 - p) * V(j, n)) * FattoreSconto 21.12 Next j 120.8 16.8 Next n 116.3 12.86 112 9.482 107.9 6.766 103.9 4.691 100 5.975 103.9 2.53 96.29 8.013 107.9 5.054 103.9 3.073 100 1.821 96.29 1.058 92.72 16.48 116.3 12.33 112 8.763 107.9 3.941 100 25.62 125.5 1.968 100 1.006 96.29 0.514 92.72 0.263 89.28 0 92.72 0 89.28 0 85.97 0 85.97 0 82.78 0 79.71
  29. 29. Opzioni Americane    Fino a questo momento abbiamo considerato solo opzioni di tipo europeo cioè opzioni esercitabili soltanto alla scadenza; Le opzioni di tipo americano, cioè quelle esercitabili entro la scadenza, sono facilmente valutabili nell’approccio binomiale; Ad ogni step è necessario valutare qual’è il maggior valore fra   il valore dell’opzione calcolato come valore atteso futuro (continuation value) il valore che deriva dall’esercizio immediato dell’opzione (payoff) For n = NumeroSteps To 1 Step -1 For j = 0 To n - 1 V(j, n - 1) = Application.Max((p * V(j + 1, n) + (1 - p) * V(j, n)) _ * FattoreSconto, Payoff(s(j, n - 1), Strike, FlagCall)) Next j Next n
  30. 30. Esempio Esempio Programmazione Programmazione VBA VBA Calcolo del Prezzo di un’Opzione con Albero Binomiale Calcolo del Prezzo di un’Opzione con Albero Binomiale
  31. 31. Alberi Binomiali in più dimensioni     E’ relativamente semplice costruire un albero in tre dimensioni per rappresentare i movimenti di due variabili non correlate; Dapprima si costruisce separatamente un albero a due dimensioni per ciascuna delle due variabili; quindi si combinano i due alberi in un solo albero a tre dimensioni. Le probabilità relative ai rami del nuovo albero sono pari al prodotto delle probabilità dei corrispondenti rami degli alberi a due dimensioni.
  32. 32. Alberi Binomiali in più dimensioni  Si supponga ad esempio che le variabili siano date dai prezzi S1 ed S2.  Ciascuna di queste due variabili può essere rappresentata in due dimensioni da un albero binomiale CCR; supponiamo che p1 sia la probabilità che S1 aumenti e 1-p1 la probabilità che diminuisca, analogamente con p2 e S2;   nell’albero a tre dimensioni ci saranno quindi quattro rami che vengono generati da ciascun nodo con le seguenti probabilità  p1p2 S1 aumenta, S2 aumenta  p1(1-p2) S1 aumenta, S2 diminuisce  (1-p1)p2 S1 diminuisce, S2 aumenta  (1-p1)(1-p2) S1 diminuisce, S2 diminuisce
  33. 33. Alberi Binomiali in più dimensioni    Il caso più interessante è naturalmente quello in cui le variabili siano correlate; Rubinstein ha suggerito un modo di costruire un albero a tre dimensioni disponendo i nodi secondo un approccio binomiale; Dal nodo (S1, S2) si può passare ad uno dei seguenti nodi con probabilità 0.25 (albero con probabilità uguali lungo i rami, tipo JR): ( S1u1 ; S 2 A) ( S1u1 ; S 2 B ) ( S1 d 1 ; S 2 C ) ( S1 d 1 ; S 2 D )
  34. 34. Alberi Binomiali in più dimensioni u1 = e 2 ( r − q1 −σ 1 / 2 ) ∆t +σ 1 ∆t d1 = e A=e B=e C =e 2 ( r − q1 −σ 1 / 2 ) ∆t −σ 1 ∆t 2 ( r − q2 −σ 2 / 2 ) ∆t +σ 2 ∆t  ρ + 1− ρ 2      2 ( r − q2 −σ 2 / 2 ) ∆t +σ 2 ∆t  ρ − 1− ρ 2      2 ( r − q2 −σ 2 / 2 ) ∆t −σ 2 ∆t  ρ − 1− ρ 2      D=e 2 ( r − q2 −σ 2 / 2 ) ∆t −σ 2 ∆t  ρ + 1− ρ 2      Deriva dalla “Cholesky Decomposition”
  35. 35. Opzioni con due sottostanti: Alcuni Esempi  Spread Options      max(0,max(Q1S1,Q2S2)-X) max(0,X-max(Q1S1,Q2S2)) call put max(0,min(Q1S1,Q2S2)-X) max(0,X-min(Q1S1,Q2S2)) Dual Strike Options    call put Opzione sul minimo   max(0, Q1S1-Q2S2-X) max(0,X+Q2S2-Q1S1) Opzione sul massimo   call put  call put max(0,(Q1S1-X1),(Q2S2-X2)) max(0,(X1-Q1S1),(X2-Q2S2)) Reverse Dual Strike Options   call put max(0,(Q1S1-X1),(X2-Q2S2)) max(0,(X1-Q1S1),(Q2S2-X2)) Portfolio Options    call put max(0, (Q1S1+Q2S2)-X) max(0,X-(Q1S1+Q2S2)) Exchange Options  max(0,Q2S2-Q1S1)
  36. 36. Esempio Esempio Programmazione Programmazione VBA VBA Un Albero Binomiale Tridimensionale Un Albero Binomiale Tridimensionale
  37. 37. Alberi Binomiali e Barriere       Se, per valutare un’opzione con barriera, si usa un albero binomiale standard la convergenza è lenta; per ottenere un risultato accurato è necessario usare un numero elevato di intervalli; la ragione di questa lenta convergenza è che la barriera ipotizzata dall’albero è diversa da quella effettiva. Definiamo barriera interna la barriera formata dai nodi immediatamente all’interno della barriera effettiva e barriera esterna la barriera formata dai nodi immediatamente all’esterno della barriera; i calcoli standard assumono implicitamente che la barriera esterna coincida con la barriera effettiva; Il problema può essere affrontato cercando di posizionare accuratamente i nodi nulle barriere.
  38. 38. Alberi Binomiali e Barriere
  39. 39. Alberi Binomiali e Barriere   Una possibile soluzione è la seguente; Supponiamo di voler porre esattamente m livelli (per ogni intervallo n) fra la barriera H e il valore iniziale S del prezzo; avremo H = Su m , u = eσ ∆t ⇒ H = Se mσ ⇓  H ln S   2 m 2σ 2T  2 2  = m σ ∆t = n  ⇓ n= m 2σ 2T   H  ln S     2 ∆t
  40. 40. Esempio Esempio Programmazione Programmazione VBA VBA Come Inserire una Barriera in un Albero Binomiale Come Inserire una Barriera in un Albero Binomiale
  41. 41. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  42. 42. Alberi Trinomiali  In alternativa agli alberi binomiali, si possono usare gli alberi trinomiali
  43. 43. Alberi Trinomiali
  44. 44. Esempio Esempio Programmazione Programmazione VBA VBA Un Esempio di Albero Trinomiale Un Esempio di Albero Trinomiale
  45. 45. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  46. 46. Informazione implicita    I mercati delle opzioni trasmettono informazioni sulla distribuzione, aggiustata per il rischio, del sottostante. Nel modello di Black & Scholes, tutta l’informazione necessaria è rappresentata dalla volatilità dei rendimenti σ. Estrarre il valore di volatilità che nel modello di Black e Scholes produce il valore del prezzo di un’opzione osservato sul mercato significa calcolare il valore della volatilità implicita.
  47. 47. La volatilità implicita  Smile  Spesso sulla stessa azione sono quotate più opzioni con prezzi di esercizio e scadenza diversi;  Se il modello di Black & Scholes fose corretto le opzioni avrebbero prezzi differenti ma un identico valore per la volatilità implicita;  σ infatti è funzione dell’attività sottostante e non del prezzo di esercizio o del tempo;
  48. 48. La volatilità implicita Tuttavia è stato osservato che la volatilità implicita per contratti con identica vita residua varia in funzione del prezzo di esercizio! 20.00% 20.00% 19.80% 19.80% 19.60% 19.60% 19.40% 19.40% 19.20% 19.20% 19.00% 19.00% 18.80% 18.80% 18.60% 18.60% 18.40% 18.40% 18.20% 18.20% 18.00% 18.00% 85.000 85.000 90.000 90.000 95.000 95.000 100.000 100.000 105.000 105.000 110.000 110.000 115.000 115.000
  49. 49. La volatilità implicita  Smile  Di norma le opzioni “out” e “in” the money hanno un valore di volatilità implicita maggiore di quelle at-the-money.  L’effetto, noto come volatility smile è accentuto per i contratti con scadenza breve ed è quasi inesistente per quelli di lunga durata;  l’effetto smile contrasta con la teoria e rivela che il modello non è corretto;  il fatto che, dopo il crash del 1987, l’effetto sia più evidente ha indotto alcuni studiosi a formulare l’ipotesi che il vero processo diffusivo dei prezzi sia a salti e non continuo.
  50. 50. Volatilità implicita    Dato il prezzo di mercato di un’opzione, Invertendo l’equazione di Black & Scholes possiamo ricavare la volatilità implicita nella quotazione. La volatilità implicita deve essere calcolata numericamente. Brenner Subrahmanian (accurata at-the-money) (( )) call Y , , t ;Y( tt) eeδ( TT−−t) , , T t;Y ( ) δ ( t ) T σ T − tt ≅ 2π call Y σ T − ≅ 2π Y ( tt) ) Y(  Corrado Miller (accurata at-the-money ± 10%)  −δ ( ( − t ) ( 22π π YYt( )t )−−ee −δTT −)tK  K+ σ TT−− t ≅≅ t call − σ + −−δTT −)t ) call − δ ( ( −t 22 ( YYt( )t )++ee K K   2 (( ) )  22 −δ ( T − t ) )  2 −δ ( T − t ) )  ( ( K K  − YYt( )t )−−ee −δ ( T −tK  − YYt( )t )−−ee −δ ( T −tK call  call −  − 22 ππ   Nell’esempio in VBA utilizzeremo l’algoritmo di Newton-Raphson   
  51. 51. Volatilità implicita  L’algoritmo di Newton-Raphson  Data una funzione f(x) il problema consiste nel determinare il valore di x* tale che f(x*) = 0.  L’idea geometrica che sta alla base del metodo è la seguente.  Partendo da una stima iniziale x della soluzione si genera una 0 successione di valori {xk} approssimando, per ogni k, la curva y = f(x) con la tangente nel punto (xk, f(xk)) e calcolando xk+1 come l’intersezione della tangente con l’asse delle x.
  52. 52. L’algoritmo di Newton-Raphson  All’equazione f(x) = 0 si sostituisce così l’equazione della retta tangente f ( xk ) + ( x − xk ) f ' ( xk ) = 0 x k +1 f ( xk ) = xk − f ' ( xk )
  53. 53. START START Input X0, InputEPS, X0, EPS, MAX_ITER MAX_ITER Calcola f(X0) Calcola f(X0) Calcola f’(X0) Calcola f’(X0) Calcola Calcola X = X0 – f(X0)/f’(X0) X = X0 – f(X0)/f’(X0) Poni X0 = X Poni X0 = X Incrementa di un’unità Incrementa di un’unità il Numero Iterazioni il Numero Iterazioni Diagrammi di Flusso L’algoritmo di Newton-Raphson E’ vera almeno una delle E’ vera almeno una delle seguenti affermazioni: seguenti affermazioni: 1) |X – X0| < EPS 1) |X – Iterazioni > 2) Numero X0| < EPS 2) MAX_ITER Iterazioni > Numero MAX_ITER ? ? SI SI END END NO NO
  54. 54. Esempio Esempio Programmazione Programmazione VBA VBA Calcolo della volatilità implicita nel prezzo di opzioni Call Calcolo della volatilità implicita nel prezzo di opzioni Call
  55. 55. Volatilità Implicita  Il metodo della secante      L’efficienza del metodo di Newton-Raphson dipende dalla volatilità iniziale scelta; una procedura meno sensibile al valore iniziale di σ è il metodo della secante; il primo passo da compiere è di scegliere due valori per σ, uno basso e uno alto. Il valore basso σb stima C(σb) minore di C, il valore alto σa stima C(σa) maggiore di C. La volatilità implicita risulta dalla seguente interpolazione lineare: [ C − C ( σ b ) ]( σ a − σ b ) σ1 = σb + C (σ a ) − C (σ b )
  56. 56. Volatilità Implicita  Il metodo della secante  se il valore di C(σ) ottenuto inserendo nel modello di Black & Scholes è inferiore al prezzo di mercato C, la nuova stima di σ è ottenuta sostituendo σb con il valore della volatilità interpolata [ C − C ( σ 1 ) ]( σ a − σ 1 ) σ2 = σ1 + C (σ a ) − C (σ 1 )    Se il valore di C(σ) ottenuto inserendo σ1 nel modello è superiore al prezzo di mercato per la nuova stima di σ si sostituisce a σa il valore della volatilità interpolata. Quando C(σ) coincide con C il processo iterativo termina è si è trovata la volatilità implicita. Il metodo è in generale preferito a quello di Newton-Raphson perché non richiede la stima di Vega ad ogni iterazione.
  57. 57. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  58. 58. “Butterflay Spread” e prezzi di Arrow-Debreu     E' noto che i mercati dei contratti derivati hanno un forte contenuto informativo. Le quotazioni di un future o di un opzione su un titolo rischioso riassumono la valutazione del mercato sull'evoluzione di quel titolo. Possiamo quindi utilizzare i prezzi dei contratti derivati per estrarre uno schema binomiale di evoluzione del prezzo del titolo rischioso. Questo tema è al centro dell'attenzione della letteratura finanziaria sulle opzioni dei nostri giorni, ed ha dato vita ad un filone di tecniche note come alberi binomiali impliciti, che generalizzano l'idea di probabilità implicita proposta da Breeden e Litzenberger alla fine degli anni 70.
  59. 59. I titoli di Arrow-Debreu    Supponiamo di disporre di un titolo che garantisce un pay-off unitario se e solo se si verifica un preciso stato di natura. Tale prodotto finanziario è noto come titolo di Arrow-Debreu. Il pay-off dei due titoli di Arrow-Debreu del modello binomiale sono descritti nella seguente tabella. Prezzo dello stato H Prezzo dello stato H Prezzo dello stato L Prezzo dello stato L Titolo risk-free Titolo risk-free Portafoglio immunizzato Portafoglio immunizzato Titoli di Arrow-Debreu Titoli di Arrow-Debreu T T Stato H Stato H 1 ϕH(t) 1 ϕH(t) 0 ϕL(t) 0 ϕL(t) P(t,T) 1 P(t,T) 1 1 ϕH(t)+ ϕL(t) 1 ϕH(t)+ ϕL(t) T T Stato L Stato L 0 0 1 1 1 1 1 1
  60. 60. I titoli di Arrow-Debreu    Possiamo anche utilizzare i prezzi di Arrow-Debreu per fornire una definizione alternativa del requisito di esclusione delle possibilità di arbitraggio. Nella tabella precedente notiamo infatti che il portafoglio immunizzato può essere costruito semplicemente acquistando i titoli di Arrow-Debreu corrispondenti a tutti gli stati di natura. Il requisito di esclusione delle possibilità di arbitraggio richiede quindi che φ H + φ L = P( t , T )
  61. 61. “Butterflay Spread” e prezzi di Arrow-Debreu  Come Sappiamo, in un modello binomiale il valore al tempo 0 di un generico contratto derivato di tipo europeo, descritto da una funzione di pay-off con possibilità di esercizio al tempo n è ottenuto, sulla base del principio di non-arbitraggio, attraverso la formula 1 prezzo del contratto = (1 + R f ) n  n ∑ probabilità (nodo j) × payoff (nodo j) j= 0 Si noti che la probabilità che compare nella formula è la probabilità che il nodo i-esimo dell’n-esimo livello sia raggiunto e non la classica probabilità di transizione tra due nodi dell’albero che compare nelle precedenti formule di pricing.
  62. 62. “Butterflay Spread” e prezzi di Arrow-Debreu  Naturalmente le due probabilità sono strettamente collegate... π1 π2 p = π 1 ⋅π 2
  63. 63. “Butterflay Spread” e prezzi di Arrow-Debreu   Il prezzo di un titolo di Arrow-Debreu individua il valore scontato della probabilità associata al nodo nel quale il titolo paga un'unità. Infatti ricordando la definizione di titolo di Arrow-Debreu di scadenza n e nodo i ... AD i ,n P  1 sul nodo i allo step n = altrimenti 0 ... segue che AD i ,n P 1 = Prob (nodo i) ⋅ 1 n (1 + R f )
  64. 64. “Butterflay Spread” e prezzi di Arrow-Debreu  Ritornando alla notazione matematica possiamo scrivere che il prezzo di mercato di un contratto derivato con data di esercizio n e payoff descritto dalla funzione g(.) è dato da g ( y,0 ) = ∑ φ j ( n ) g ( y j ( n ) ) n j =0  dove φj(n) denota il prezzo del titolo di Arrow-Debreu che paga un’unità di valore nel nodo j al tempo n e yj(n) rappresenta il valore del titolo rischioso su tale nodo.  Se fossimo in grado di osservare e operare su titoli di Arrow-Debreu potremmo valutare e replicare qualsiasi contratto derivato.
  65. 65. “Butterflay Spread” e prezzi di Arrow-Debreu  Assumete di avere un albero binomiale in cui il valore del titolo rischioso su ogni nodo differisce di una quantità h rispetto al nodo adiacente...  ... e di calcolare il valore di 1/h unità di un butterfly spread centrato sul valore yi(n).  Il payoff corrispondente, PBS, sarà descritto dalla funzione 1 se i = j 1 PBS ( y, n; yi ( n ) ) =  h 0 se i ≠ j  per i, j = 0, 1…n.
  66. 66. “Butterflay Spread” e prezzi di Arrow-Debreu  Abbiamo così costruito un titolo di Arrow-Debreu!  Con questa tecnica, suggerita per la prima volta da Breeden e Litzenberger (1978), siamo in grado di estrarre dai valori delle opzioni quotate sul mercato la probabilità implicita assegnata al nodo i dell'albero al tempo n.  Più precisamente, Pimp ( i, n ) = (1 + R f )  n 1 PBS ( y, n; yi ( n ) ) h Inoltre, l'insieme dei butterfly spread con data di esercizio al tempo n può essere usato come base per la determinazione, in coerenza con il principio di non arbitraggio, di tutti i contratti di tipo europeo con stessa data di esercizio.
  67. 67. Probabilità implicite  Valore di un call spread verticale C(Mib30,t;T,40000-h)- C(Mib30,t;T,40000)  Dividiamo per h e prendiamo il limite per h che tende a zero per ottenere - dC(C(Mib30,t;T,K)/dK = Prob(Mib30 > 40000) Prob(.) è la probabilità aggiustata per il rischio  Nello stesso modo possiamo costruire una butterfly prendendo la differenza tra due spread verticali d2C(C(Mib30,t;T,K)/dK2 = f(Mib30 = 40000) f è la densità aggiustata per il rischio
  68. 68. Bull spread: Mib30 - 40000 50000 50000 40000 40000 30000 30000 20000 20000 10000 10000 0 0 0 -10000 -10000 -20000 -20000 -30000 -30000 -40000 -40000 0 10000 10000 20000 20000 30000 30000 40000 40000 50000 50000 60000 60000 70000 70000 80000 80000
  69. 69. Butterfly spread
  70. 70. Calcolo della densità implicita: gli step  Analisi dei prezzi di mercato delle opzioni  Calcolo dei prezzi degli spread verticali  Calcolo dei prezzi delle butterfly  Dividiamo il valore delle butterfly per il loro pay-off (h)  Dividiamo il valore così ottenuto per il fattore di sconto Data Data esercizio esercizio Prezzo strike Prezzo strike Prezzo opzione Prezzo opzione Spread verticale Spread verticale Butterfly Butterfly spread spread ArrowArrowDebreu Debreu APR. APR. APR. APR. 35000 35000 36000 36000 2624 2624 1786 1786 APR. APR. APR. APR. 37000 37000 38000 38000 1440 1440 911 911 1184 1184 875 875 342 342 307 307 17.10% 17.10% 15.35% 15.35% APR. APR. APR. APR. 39000 39000 40000 40000 598 598 343 343 842 842 568 568 422 422 334 334 21.10% 21.10% 16.70% 16.70% APR. APR. APR. APR. 41000 41000 42000 42000 178 178 109 109 420 420 234 234 I prezzi di Arrow Debreu impliciti nelle opzioni: un esempio sul MIB30 (Fonte: Il Sole24Ore 11/03/1999) I prezzi di Arrow Debreu impliciti nelle opzioni: un esempio sul MIB30 (Fonte: Il Sole24Ore 11/03/1999)
  71. 71. “Butterflay Spread” e prezzi di Arrow-Debreu  Abbiamo così descritto una tecnica per estrarre dai prezzi delle opzioni informazione sulle probabilità da assegnare ai nodi dell'albero.  Il passo successivo è ovviamente il tentativo di costruire l'intero albero a partire dalle informazioni contenute nei prezzi di mercato, dando così una descrizione completa della dinamica del prezzo in essi implicita.  La ricerca più recente nel campo degli alberi binomiali è stata indirizzata in questa direzione ed ha dato vita ad un filone di letteratura noto come: alberi impliciti (implied trees).
  72. 72. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  73. 73. Alberi Binomiali Impliciti  Due tecniche opposte  Rubinstein (backward induction)    Stima della probabilità implicita a un temp T >t Ricostruzione della dinamica del titolo da T a t Derman & Kani (forward induction)   Osservazione del valore di opzioni al tempo t Costruzione della dinamica del titolo da t a T
  74. 74. Il metodo di Rubinstein  Questo metodo rappresenta un primo tentativo di riprodurre la dinamica, aggiustata per il rischio, del prezzo di un titolo, a partire dai prezzi di mercato di contratti derivati.  Assumiamo di osservare un insieme di opzioni con data di esercizio nel periodo n e diversi prezzi d'esercizio.  Utilizzando l'approccio di Breeden e Litzenberger sopra descritto sappiamo che sulla base di queste informazioni siamo in grado di estrarre i prezzi dei titoli di ArrowDebreu.  Partendo da questa informazione vogliamo ricostruire la dinamica del prezzo.  Un algoritmo che è in grado di produrre questo risultato è stato proposto da Mark Rubinstein (1994).  Il metodo di Rubinstein sfrutta le proprietà dei prezzi di Arrow-Debreu e della misura di probabilità aggiustata per il rischio. Un'importante assunzione che è necessaria allo sviluppo del modello è che sia noto il legame tra le probabilità attribuite a ciascun nodo e le probabilità dei vari sentieri che conducono a quel nodo.
  75. 75. Il metodo di Rubinstein   Nel modello originale proposto da Rubinstein si ipotizza che ai sentieri che portano allo stesso nodo sia attribuita la stessa probabilità. Esplicitamente: prob. nodo (j, n) = n.sentieri che portano a (j, n) ⋅ prob. dei sentieri n =   p j ( n)  j    dove pj (n) è la probabilità assegnata a ciascun sentiero che porta al nodo j al tempo n.
  76. 76. Il metodo di Rubinstein: due livelli     Analizziamo prima l'algoritmo proposto da Rubinstein in un semplice modello con n = 2. Quello che assumiamo di conoscere è l'insieme dei valori del titolo rischioso al tempo 2 e le rispettive probabilità aggiustate per il rischio associate ad ogni sentiero (cioè yi(2) e pi(2), i = 0, 1, 2). Richiamiamo l’attenzione sull’ipotesi di equiprobabilità dei sentieri che portano allo stesso nodo, che ci consente di scrivere p1(2) = π (1- π H ) = (1- π)π L. Vogliamo ricavare:   i) i due possibili valori del titolo rischioso al tempo 1 (cioè yi(1), i = 0,1); ii) la probabilità di un aumento o una diminuzione tra t = 0 e t = 1 e tra t = 1 e t = 2.
  77. 77. Il metodo di Rubinstein: due livelli y0 (2) p0 (2) = ππ H y0 (1) πH π y0 (0 ) y1 (2) y1 (1) πL p1 (2) = π (1 − π H ) = (1 − π )π L p2 (2) = (1 − π )(1 − π L ) y2 (2) t =0 t =1 t=2
  78. 78. Il metodo di Rubinstein: due livelli  L'algoritmo proposto da Rubinstein è molto semplice e consiste di quattro fasi.  Fase 1: determinazione del tasso non rischioso. E' ottenuta direttamente utilizzando le proprietà della misura aggiustata per il rischio. In particolare
  79. 79. Il metodo di Rubinstein: due livelli  Fase 2:    determiniamo le probabilità dei sentieri che portano ai due nodi al tempo t = 1, cioè p0 (1) = π e p1(1) =1 - π. Poiché le probabilità attribuite ai sentieri sono probabilità composte di sequenze di aumenti e diminuzioni del prezzo otteniamo che, prendendo ad esempio p0(2) = ππ H e p1(2) = π (1 - π H ), Fase 3:   in ciascun nodo raggiungibile al tempo t = 1 calcoliamo le probabilità di un aumento del prezzo, cioè π H e π L. Utilizzando p0(2) = ππ H ed il calcolo di p0(1) = π ricavato nella fase 2 otteniamo (e π L in modo analogo)
  80. 80. Il metodo di Rubinstein: due livelli  Fase 4:  calcoliamo i possibili valori del titolo rischioso al tempo 1, cioè y0(1) e y1(1).  Sfruttiamo ancora una volta le proprietà della misura aggiustata per il rischio per ottenere  e ricaviamo y1(1) in maniera analoga.  Si noti che a questo punto dell'algoritmo i termini che compaiono a destra nell'equazione sono noti.
  81. 81. Il metodo di Rubinstein: caso generale   L'estensione ad un numero generico di periodi e di nodi è soltanto una questione di notazione. Nella fase 1 avremo infatti (1 + R ) f n y j ( n) n = ∑   p j ( n)  j y 0 ( 0) j =0   n Il coefficiente binomiale rappresenta il numero dei possibili sentieri che portano al nodo j in n mosse;  Si noti che in questo modo abbiamo utilizzato l'ipotesi di equiprobabilità dei sentieri che portano allo stesso nodo.
  82. 82. Il metodo di Rubinstein  Nelle fasi 2 e 3 avremo ancora p j ( n − 1) = p j ( n ) + p j +1 ( n ) πj =  p j ( n) p j ( n − 1) e infine [ 1 y j ( n − 1) = π j y j ( n ) + (1 − π j ) y j +1 ( n ) 1+ Rf ]
  83. 83. Il metodo di Rubinstein  A questo punto conosciamo i valori del titolo rischioso e le rispettive probabilità (yj (n – 1) e pj (n – 1)) e siamo in grado di ripetere l'algoritmo dalla fase 2 alla fase 4 per ricavare la stessa informazione riferita al tempo n - 2, e così via fino a raggiungere la radice dell'albero.  Come abbiamo visto, il metodo di Rubinstein utilizza una strategia di backward induction, che partendo da una certa data futura ricostruisce l'albero procedendo all'indietro, fino alla radice.  Subito dopo l’esempio discuteremo invece di una metodologia che sfrutta una strategia di segno opposto (forward induction).
  84. 84. Esempio Esempio Programmazione Programmazione VBA VBA Calcolo di un Albero Binomiale Implicito con il metodo di Calcolo di un Albero Binomiale Implicito con il metodo di Rubinstein Rubinstein
  85. 85. Il metodo di Derman e Kani    Una metodologia alternativa a quella sopra descritta è stata proposta da Emmanuel Derman e Iraq Kani di Goldman & Sachs. Come anticipato poco sopra, l'idea è di partire dalla radice dell'albero e procedere in avanti, utilizzando i prezzi di opzioni osservate sul mercato su scadenze diverse. Come nelcaso precedente, è utile sviluppare in prima battuta l'analisi su un modello di due periodi, ed estenderla poi su un orizzonte arbitrario.
  86. 86. Il Metodo di Derman e Kani: due livelli  Vediamo innanzitutto di definire lo sviluppo dell'albero subito dopo la radice, al tempo t = 1.  Le incognite sono tre:   valore del titolo rischioso nel nodo zero del primo livello y1(1)   valore del titolo rischioso nel nodo zero del primo livello y0(1) la probabilità aggiustata per il rischio, di un aumento o diminuzione del prezzo, π. Assumiamo invece di osservare:  il valore del titolo rischioso al tempo 0, y(0)  il tasso d'interesse non rischioso Rf  il prezzo di mercato di un'opzione call, con data di esercizio al tempo t = 1 e prezzo di esercizio pari al valore corrente del titolo rischioso, y(0) (un'opzione at-the-money).
  87. 87. Il metodo di Derman e Kani: due livelli y0 (2) call(.;y (0),1) = y0(1) – y(0) y0 (1) πH π call(.;y 0(1),2) = y0(2) – y0(1) y1 (2) = y (0) y0 (0 ) y1 (1) πL put(.;y1(1),2) = y1(1) - y2(2) y2 (2) t =0 t =1 t=2
  88. 88. Il Metodo di Derman e Kani: due livelli   Il problema è di sfruttare le variabili osservate e le proprietà della misura aggiustata per il rischio per definire un sistema di equazioni che consenta di ricavare le tre incognite: y0(1), y1(1) e π. Una prima proprietà della misura di probabilità aggiustata per il rischio consente di esprimere il prezzo forward del titolo rischioso, definito come F0(0) ≡ (1 + Rf)y0(0), usando la proprietà di martingala F0 ( 0 ) = πy 0 (1) + (1 − π ) y1 (1)
  89. 89. Il Metodo di Derman e Kani: due livelli  Possiamo poi utilizzare l'equazione di valutazione dell'opzione call, della quale osserviamo il prezzo sul mercato, per ottenere una seconda equazione del modello π C= [ y 0 (1) − y 0 ( 0) ] 1+ Rf  dove abbiamo assunto il caso non degenere y0(1) > y(0) > y1(1) (l'opzione viene esercitata solo su uno dei due nodi).
  90. 90. Il Metodo di Derman e Kani: due livelli    La chiusura del modello richiede l'introduzione di una terza equazione. Derman e Kani propongono di sfruttare questo grado di libertà per definire la traiettoria della parte centrale dell'albero, con la scelta di una centering condition. In particolare propongono di sviluppare la parte centrale dell'albero intorno al valore corrente y(0) del titolo rischioso, in parallelo con il modello binomiale a volatilità costante y ( 0 ) = y 0 (1) y1 (1) 2  che segue immediatamente da y0 ( 1) = y0 ( 0 ) u , y1 ( 1) = y0 ( 0 ) d con ud = 1  Utilizzando la centering condition nelle equazioni del prezzo forward e dell'opzione otteniamo la probabilità aggiustata per il rischio ed il valore del titolo rischioso sui due nodi.
  91. 91. Il Metodo di Derman e Kani: due livelli  Procediamo avanti nell'albero, cercando di determinarne i valori rilevanti al tempo 2.  Le incognite adesso sono cinque:    i valori del titolo rischioso sui tre nodi (y0(2) e y1(2) e y2(2)); le probabilità di un aumento del prezzo a partire da ciascuno dei due nodi raggiungibili al tempo 1, cioè πH e πL. Assumiamo di osservare:    tutte le variabili dell'albero fino al tempo 1; il prezzo di mercato di un'opzione call con data di esercizio al tempo 2 e prezzo di esercizio pari a y0(1); il prezzo di mercato di un'opzione put con data di esercizio al tempo 2 e prezzo di esercizio pari a y1(1).
  92. 92. Il Metodo di Derman e Kani: due livelli  A questo punto possiamo seguire una strategia analoga alla precedente e definire due equazioni per i prezzi forward (1 + R ) y (1) ≡ F (1) = π y ( 2) + (1 − π ) y ( 2) f 0 0 u 0 H 1 (1 + R ) y (1) ≡ F (1) = π y ( 2) + (1 − π ) y ( 2) f  1 1 d 1 L 2 Per quanto riguarda l'opzione call, avremo Call ( .; y 0 (1) ,2 ) = ππ H (1 + R ) f 2 φ 0 (1)π H [ y 0 ( 2) − y 0 (1) ] = [ y 0 ( 2) − y 0 (1) ] 1+ Rf φ0(1) è valore corrente di un titolo Arrow-Debreu che paga un’unità di valore in corrispondenza dello stato y0(1) e dove ancora una volta poniamo y0(2) > y0(1) > y1(2)
  93. 93. Il Metodo di Derman e Kani: due livelli    Analogamente, per l'opzione put abbiamo: dove φ1(1) è un prezzo di Arrow-Debreu e assumiamo ancora y1(2) > y1(1) > y1(2). Abbiamo ancora una volta un grado di libertà da utilizzare, con quattro equazioni a fronte di cinque incognite. Ancora una volta, il modello è chiuso definendo la centering condition, che in questo caso impone al prezzo del titolo di ritornare al valore corrente:
  94. 94. Il Metodo di Derman e Kani: due livelli      Passiamo adesso ad analizzare l'algoritmo per un arbitrario nodo i al tempo n - 1. Al tempo n - 1 assumiamo di conoscere, per averli già calcolati con il nostro meccanismo di forward induction, gli n valori del titolo rischioso ed i rispettivi prezzi di Arrow-Debreu. Vogliamo calcolare i valori delle variabili al tempo n, su n + 1 nodi. Consideriamo il generico nodo i e assumiamo di osservare al tempo 0 il valore di un'opzione call con data di esercizio al tempo n e prezzo di esercizio pari a yi(n - 1). Scriviamo l'equazione di valutazione dell'opzione nel modo seguente φiπ i [ yi ( n ) − yi ( n − 1) ] + Call = 1+ Rf 1 1+ Rf ∑ φ [π ( y ( n ) − y ( n − 1) ) + (1 − π )( y ( n ) − y ( n − 1) )] i −1 j =0 j j j i j j +1 i
  95. 95. Il modello di Derman e Kani: n livelli Il modello di Derman e Kani (generalizzazione) Il modello di Derman e Kani (generalizzazione)
  96. 96. Il modello di Derman e Kani: n livelli  Utilizzando la definizione di prezzo forward e le proprietà della misura aggiustata per il rischio:
  97. 97. Il modello di Derman e Kani: n livelli  Il nuovo termine S è calcolabile a partire dall'informazione disponibile al tempo n - 1. L'equazione di valutazione dell'opzione può quindi essere scritta in forma più succinta (1 + R )C = φ π [ y ( n ) − y ( n − 1) ] + Σ f i i i i  D'altronde, la proprietà della probabilità aggiustata per il rischio implica  Sostituendo nell'equazione di valutazione dell'opzione e riordinando i termini otteniamo  cosicché il valore yi (n) è ottenuto in funzione di variabili note al tempo n - 1 e del valore yi + 1 (n).
  98. 98. Il modello di Derman e Kani: n livelli     Possiamo notare la struttura ricursiva dell'algoritmo, e il fatto che è necessario definire un grado di libertà ulteriore per l'inizializzazione. Tale grado di libertà consente l'introduzione della centering condition, che ricordiamo essere dove osserviamo che la numerazione dei nodi include 0, cosicché al tempo n abbiamo n + 1 nodi. Così, ponendo ad esempio i + 1 = n/2 nel caso in cui n sia pari, siamo in grado di inizializzare l'algoritmo e calcolare y i (n) utilizzando un'opzione call con prezzo di esercizio yi (n - 1).
  99. 99. Il modello di Derman e Kani: n livelli     Utilizzando poi il valore yi(n) così ottenuto, insieme al prezzo di un'opzione con prezzo di esercizio pari a yi - 1(n - 1) siamo in grado di calcolare yi - 1(n), e così via fino all'ultimo nodo della parte superiore dell'albero. I nodi della parte inferiore verranno invece ricavati in maniera speculare utilizzando opzioni put. Infine, le probabilità di un aumento del prezzo in ogni nodo verranno calcolate utilizzando l'equazione dei prezzi forward. I prezzi di Arrow-Debreu al tempo n saranno calcolati come A questo punto, disponiamo dei prezzi del titolo rischioso e dei titoli di Arrow-Debreu per ogni nodo al tempo n e possiamo continuare il calcolo per definire la struttura dell'albero al tempo n + 1, n + 2 e così via.
  100. 100. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  101. 101. Derman, Kani & Chriss Alberi Trinomiali Impliciti   Gli alberi trinomiali impliciti rappresentano una generalizzazione del caso binomiale implicito; anche in questo caso l’albero viene “distorto” in modo da incorporare una volatilità locale dipendente dal tempo e dal sottostante (smile e struttura a termine di volatilità)
  102. 102. Derman, Kani & Chriss Alberi Trinomiali Impliciti      Nel determinare i parametri di un albero binomiale implicito, si hanno un uguale numero di equazioni e di incognite; l’albero che si viene così a determinare è unico; Questa caratteristica di unicità talvolta può essere svantaggiosa in quanto non permette di aggiustare i valori per calibrare situazioni in cui la volatilità cambia molto al variare del tempo e del livello del sottostante; Per questo talora è preferibile ricorrere ad alberi trinomiali impliciti; questo tipo di alberi possiedono un numero di parametri naturalmente più elevato e permettono di fissare in maniera arbitraria i prezzi dei nodi (price state);
  103. 103. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Nel caso di un albero trinomiale, al termine di ogni step dobbiamo determinare cinque incognite    la probabilità p la probabilità q il prezzo Su  il prezzo Sm  il prezzo Sd
  104. 104. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Per l’assenza di arbitraggio abbiamo pSu + qS d + (1 − p − q) S m = F0  ... e per ottenere nel continuo la volatilità desiderata deve essere p( Su − F0 ) + q( S d − F0 ) + (1 − p − q)( S m − F0 ) = F02σ 2 ∆t + O (∆t ) 2  2 2 Abbiamo quindi due vincoli e cinque incognite, per cui in ogni nodo restano tre parametri liberi che possiamo fissare a piacere
  105. 105. Derman, Kani & Chriss Alberi Trinomiali Impliciti     Possiamo utilizzare questa libertà per scegliere in maniera adeguata l’albero dei prezzi (price state); La scelta deve essere fatta in modo da garantire che le probabilità di transizione restino comunque confinate all’interno dell’intervallo [0, 1]; Una volta fissati i prezzi (ad esempio tramite la procedura utilizzata per generare un albero trinomiale standard) possiamo utilizzare i dati delle opzioni e dei forward in nostro possesso per calcolare i valori della probabilità di transizione; Le formule che si ottengono sono simili al caso precedentemente visto a proposito dell’albero implicito binomiale;
  106. 106. Derman, Kani & Chriss Alberi Trinomiali Impliciti
  107. 107. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Forward Price  pi Si + 2 + (1 − pi − qi ) Si +1 = Fi Option Price [ ] C ( K , t n +1 ) = e − r∆t ∑ λ j − 2 p j − 2 + λ j −1 (1 − p j −1 − q j −1 ) + λ j q j max ( S j − K ,0 ) j  ponendo K = Si+1 e riordinando otteniamo e r∆t C ( Si +1 , t n +1 ) = λi pi ( Si + 2 − Si +1 ) + 2n ∑ λ (F j =i +1 j j − S i +1 )
  108. 108. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Nella precedente equazione l’unica incognita è la probabilità di transizione in quanto i prezzi sono fissati a priori e i valori delle opzioni e del forward sono noti; possiamo pertanto scrivere r∆t e C ( S i +1 , t n +1 ) − pi = (eq. forward price) 2n ∑ λ (F j =i +1 j j − S i +1 ) λi ( S i + 2 − Si +1 ) Fi − pi ( Si + 2 − Si +1 ) − Si +1 qi = S i − S i +1
  109. 109. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Utilizzando i prezzi di opzioni put possiamo calcolare le probabilità per i nodi del livello centrale e di quelli ad esso sottostanti i −1 qi = e r∆t P ( Si +1 , t n +1 ) − ∑ λ j ( Si +1 − F j ) (eq. forward price) j =0 λi ( Si +1 − S i ) Fi + qi ( Si +1 − Si ) − Si +1 pi = S i + 2 − S i +1
  110. 110. Derman, Kani & Chriss Alberi Trinomiali Impliciti  Una situazione che genera probabilità negative
  111. 111. Esempio Esempio Programmazione Programmazione VBA VBA Alberi Trinomiali Impliciti Alberi Trinomiali Impliciti
  112. 112. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  113. 113. Alberi per tassi di interesse    L’albero per i tassi di interesse è una rappresentazione in tempo discreto del processo stocastico per il tasso a breve così come l’albero per i prezzi di un’azione è una rappresentazione in tempo discreto del processo seguito dal prezzo di un’azione; Se l’intervallo di tempo usato è ∆t, i tassi di interesse riportati sull’albero sono i tassi composti continuamente relativi ad un periodo di ampiezza pari a ∆t. L’assunzione che si fa di solito quando si costruisce un albero è che il tasso relativo al periodo ∆t segua lo stesso processo stocastico del tasso istantaneo nel corrispondente modello in tempo continuo.
  114. 114. Alberi per tassi di interesse  Una delle principali differenze fra gli alberi per i tassi di interesse e gli alberi per i prezzi di un’azione sta nel modo in cui si effettua l’attualizzazione:  nell’albero per i prezzi di un’azione si assume di solito che il tasso di attualizzazione sia lo stesso ad ogni nodo...  ... nell’albero per i tassi di interesse il tasso di attualizazione cambia da nodo a nodo.  Per i tassi di interesse, spesso risulta conveniente usare un albero trinomiale piuttosto che binomiale;  il principale vantaggio di un albero trinomiale è che esso offre un ulteriore grado di libertà facilitando la rappresentazione di proprietà del processo seguito dal tasso di interesse come la mean reversion.
  115. 115. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  116. 116. Il modello ad alberi di Hull e White  Hull e White hanno proposto una procedura a due stadi per costruire alberi trinomiali relativi ad un ampio insieme di modelli ad un fattore.  Vediamo come si applica questa procedura al modello dinamico di Hull e White per il tasso istantaneo di interesse.  H&W hanno dimostrato in una serie di lavori che la procedura può essere generalizzata in modo relativamente semplice ad un’ampia categoria di modelli stocastici per la dinamica di r .
  117. 117. Il modello ad alberi di Hull e White  Ramificazioni non standard   Hull e White hanno proposto delle modifiche al metodo di ramificazione standard di un albero trinomiale; le ramificazioni non standard (riportate in figura) si rivelano utili per incorporare il fenomeno della mean reversion quando i tassi di interesse sono molto alti o, rispettivamente, molto bassi.
  118. 118. Primo stadio  Ricordiamo che la dinamica del tasso di interesse istantaneo nel modello di Hull e White è descritta da un processo stocastico del tipo dr = [θ (t ) − ar ] dt + σdz   dove a e σ sono delle costanti come vedremo la funzione Theta viene scelta in modo da calibrare il modello sulla struttura a termine iniziale.
  119. 119. Primo stadio   il primo passo della procedura prevede di implementare un albero che tenga conto del fenomeno della mean reversion A tale scopo si considera la variabile ausiliaria r* la cui dinamica è descritta dall’equazione dr ∗ = −ar ∗ dt + σdz
  120. 120. Primo stadio   Si tratta di un processo simmetrico attorno a r* = 0 ; se consideriamo l’incremento r ∗ (t + ∆t ) − r ∗ (t )  questo ha una distribuzione normale; inoltre se si ignorano termini di ordine superiore a ∆t, il valore atteso dell’incremento è pari a − ar ∗ (t )∆t  e la sua varianza risulta σ 2 ∆t
  121. 121. Primo stadio  Nell’albero la spaziatura fra i tassi di interesse viene scelta uguale a ∆r = σ 3∆t   secondo H&W questo valore risulta ottimale dal punto di vista della minimizzazione degli errori Nel modello vi è l’assunzione implicita che il tasso istantantaneo si riferisca in realtà all’istante ∆t che comunque si suppone piccolo.
  122. 122. Primo stadio     Nel corso del primo stadio l’obiettivo è quello di costruire un albero i cui nodi siano equispaziati sia rispetto a r* che rispetto a t; al fine di implementare la mean reversion occorrerà scegliere per ciascun nodo quale sia il metodo di ramificazione appropriato per proseguire la costruzione dell’albero; Questa scelta determinerà la forma complessiva dell’albero; Infine dovremo calcolare le probabilità corrispondenti ad ogni ramificazione;
  123. 123. Primo stadio
  124. 124. Primo stadio   La scelta del modello di ramificazione è determinata in base alla condizione che in ciascun nodo tutte e tre le probabilità di transizione devono risultare definite positive; Nella maggior parte dei casi risulta valida la ramificazione simmetrica...
  125. 125. Primo stadio  Quando a > 0 è necessario passare alla ramificazione orientata verso il basso per un valore di j sufficientemente elevato;  analogamente, per valori di j sufficientemente bassi, è necessario utilizzare la ramificazione orientata verso l’alto
  126. 126. Primo stadio   Sia jmax il valore di j in corrispondenza del quale si passa dalla ramificazione simmetrica a quella orientata verso il basso e jmin il valore per il quale deve avvenire il cambiamento con la ramificazione orientata verso l’alto; Hull e White hanno mostrato che per ottenere probabilità sempre positive è sufficiente scegliere jmax 0.184 = min int > , a∆t jmin = − jmax
  127. 127. Primo Stadio  Siano pu , pm e pd le probabilità connesse con i rami superiore, intermedio e inferiore che vengono generati dal nodo;  Le probabilità vengono scelte in modo coerente con il valore atteso e la varianza della variazione di r* nell’intervallo ∆t ;  Inoltre la somma delle tre probabilità deve essere 1;
  128. 128. Primo stadio  Se al nodo (i, j) il metodo di ramificazione è quello simmetrico, le tre condizioni si traducono nelle seguenti equazioni: pu ∆r − pd ∆r = −aj∆r∆t pu ∆r + pd ∆r = σ ∆t + a j ∆r ∆t 2 2 pu + pm + pd = 1 2 2 2 2 2
  129. 129. Primo stadio  Ricordando che ∆r = 3σ ∆t 2 1 a j ∆t − aj∆t pu = + 6 2 2 pm = − a 2 j 2 ∆t 2 3 1 a 2 j 2 ∆t 2 + aj∆t pd = + 6 2 2 2 2 2
  130. 130. Primo stadio 1 a j ∆t + aj∆t pu = + 6 2 1 pm = − − a 2 j 2 ∆t 2 − 2 aj∆t 3 7 a 2 j 2 ∆t 2 + 3aj∆t pd = + 6 2 2 2 2
  131. 131. Primo stadio 7 a j ∆t − 3aj∆t pu = + 6 2 1 pm = − − a 2 j 2 ∆t 2 + 2 aj∆t 3 1 a 2 j 2 ∆t 2 − aj∆t pd = + 6 2 2 2 2
  132. 132. Secondo Stadio    Il secondo stadio nella costruzione dell’albero consiste nel convertire l’albero per r* nell’albero per r; ciò si ottiene spostando i nodi nell’albero di r* in modo da assicurare la coerenza con la term structure iniziale Questo significa che una volta calibrato l’albero, i prezzi degli zero coupon che maturano ad ogni periodo dell’albero devono coincidere con i prezzi implici nella struttura per scadenza dei tassi correntemente osservata sul mercato.
  133. 133. Secondo Stadio α (t ) = r (t ) − r ∗ (t )  Definiamo la funzione  E’ facile verificare che la dinamica seguita da questa funzione è descritta da dα = [θ (t ) − aα (t )] dt  di fatto calibrare il modello significa, come avevamo accennato all’inizio, scegliere un’opportuna funzione Theta in grado di rendere coerente l’albero dei tassi con la struttura a termine iniziale.
  134. 134. Secondo stadio
  135. 135. Secondo Stadio    Indichiamo con αi la differenza fra il valore di r e r* al tempo i∆t ; sia poi Qi,j il valore attuale di un titolo che paga 1 unità di valore se viene raggiunto il nodo (i,j) e zero altrimenti (prezzo di Arrow-Debreu); le αi e le Qi,j vengono calcolate iterativamente tramite un processo di induzione forward .
  136. 136. Secondo stadio  da un punto di vista generale, supponiamo che le Qi,j siano state determinate fino al livello m ;  il passo successivo consiste quindi nel determinare αm in modo che l’albero valuti correttamente un titolo a sconto con scadenza al tempo (m+1)∆t ;  Il tasso di interesse al nodo (m, j) è pari a j∆r + αm per cui il prezzo di un titolo a sconto con scadenza al tempo (m+1)∆t è pari a Pm +1 = nm Qm , j e −(α m + j∆r ) ∆t ∑ j = − nm dove nm è il numero di nodi al tempo m∆t su ciascuno dei due lati rispetto al nodo centrale.
  137. 137. Secondo stadio  La soluzione di questa equazione è  nm   ∑ Qm , j e − j∆r∆t  − ln ( Pm +1 ) ln   j = − nm  αm = ∆t  una volta determinato αm, possiamo calcolare le Qi,j per i = m+1, infatti se indichiamo con q(k,j) la probabilità di passare dal nodo (m,k) al nodo (m+1,j) possiamo scrivere Qm +1, j = ∑ Qm ,k q (k , j )e − (α m + k∆r ) ∆t k
  138. 138. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  139. 139. Sistemi Lineari  La risoluzione di un sistema lineare ha un ruolo basilare nell’analisi numerica  Es. la discretizzazione di un’equazione differenziale porta alla soluzione di un sistema lineare  Per questo scaturisce la necessità di avere a disposizione algoritmi efficienti e per i quali siano note le proprietà di stabilità  Anche nell’ambito di una stessa categoria di problemi, quali ad esempio quelli derivanti dalla risoluzione di equazioni differenziali, il tipo di sistema può variare a seconda del metodo di discretizzazione utilizzato.
  140. 140. Sistemi Lineari  I metodi per la risoluzione dei sistemi lineari vengono, usualmente, divisi in due raggruppamenti  Metodi Diretti: sono i metodi che in assenza di errori di arrotondamento danno la soluzione in un numero finito di operazioni. Si tratta sostanzialmente dei metodi che utilizzano l’idea dell’eliminazione di Gauss.  Metodi Iterativi: la soluzione è ottenuta come limite di una successione di soluzioni di problemi lineari più semplici. Diversamente dal caso precedente, la matrice dei coefficienti non viene modificata durante il calcolo e quindi è più agevole sfruttarne la sparsità.
  141. 141. Sistemi Lineari: Metodi Diretti  L’idea centrale dei metodi diretti è l’idea dell’eliminazione  L’idea consiste nel ricavare (eliminare) da una fissata equazione una particolare incognita e nella sua sostituzione nelle equazioni rimanenti  La sostituzione diminuisce la dimensione del problema  Iterando il procedimento si riduce il problema originario ad un problema ad una sola dimensione in una sola incognita  Determinata tale incognita le altre componenti della soluzione sono successivamente ottenute mediante una procedura di sostituzione all’indietro.
  142. 142. Sistemi Lineari: Sistemi Triangolari Si tratta di un caso particolarmente importante perché     la forma triangolare è il risultato finale dell’applicazione del metodo di eliminazione a sistemi generali La soluzione è estremamente semplice La matrice dei coefficienti è una matrice triangolare superiore o inferiore cioè rispettivamente della forma:  u11 u12  u1n     0 u 22  u 2 n  U =        0  0 u  nn    l11   l21 L =   l  n1 0 l22  ln 2 0      0   lnn   
  143. 143. Sistemi Lineari: Sistemi Triangolari Ly = b  Forward substitution  Backward substitution Ux = y b1   y1 = l 11   N  1 y = bi − ∑ lij y j  i  lii  j =1   yN   xN = u NN   N  1  x =  yi − ∑ uij x j  i  uii  j =i  
  144. 144. Sistemi Lineari: Decomposizione LU  Supponiamo di dover risolvere un generico sistema del tipo Ax = b  Se riusciamo a trovare due matrici, una triangolare inferiore L ed una triangolare superiore U tali che A = LU  Il nostro problema si riconduce alla risoluzione di due sistemi triangolari Ly = b Ux = y
  145. 145. Sistemi Lineari: Matrici Sparse       In numerosi casi la matrice che descrive il sistema ha numerosi elementi nulli. Quale sia la percentuale di elementi necessaria per far ritenere una matrice sparsa dipende naturalmente dal contesto. Comunemente una matrice è ritenuta sparsa se il numero di elementi diversi da zero è dello stesso ordine di grandezza del numero di righe (e di colonne!) della matrice stessa: O(n). La presenza di sparsità in una matrice rappresenta a priori un vantaggio dal momento che memorizzando solo gli elementi diversi da zero si possono ottenere notevoli vantaggi in termini di occupazione di memoria e di tempo di calcolo. Tuttavia l’applicazione dei metodi diretti porta ad una modifica della matrice del sistema che tipicamente riduce o annulla la sparsità della matrice iniziale (fill-in). Un’interessante alternativa ai metodi diretti, quando la matrice è sparsa e di grandi dimensioni è fornita dai metodi iterativi e dai metodi tipo gradiente. In essi, a differenza dei metodi diretti, la matrice di partenza non viene modificata e quindi per essi non esiste il problema del fill-in.
  146. 146. Sistemi Lineari: Studio dell’Errore  Norme  Norma di un Vettore Nel caso particolare di un vettore a valori reali con n dimensioni si definisce come norma p, con p compreso fra 1 e infinito, la quantità x  Casi particolari:   p 1/ p  p =  ∑ xi   i =1  n p = 2 Norma Euclidea p = ∞ Norma del Massimo (o di Chebichev) x ∞ = max xi 1≤i ≤ n
  147. 147. Sistemi Lineari: Studio dell’Errore  Norme  Norma di una Matrice AB ≤ A B  La norma è “indotta” dalla norma dei vettori A = sup x≠0 Ax x
  148. 148. Sistemi Lineari: Studio dell’Errore  Norma del massimo  La norma di matrice indotta dalla norma del massimo è la seguente n A ∞ = max ∑ aij i j =1 Cioè la massima delle somme dei moduli delle righe
  149. 149. Sistemi Lineari: Studio dell’Errore  Matrici Convergenti  Per studiare la convergenza di procedure iterative è spesso necessario, come vedremo in seguito, stabilire quando per una matrice A si ha la convergenza a zero delle successive potenze, cioè quando lim A = 0 m m →∞  In questo caso si dice che la matrice è convergente. Una condizione sufficiente affinché una matrice risulti convergente è che per una norma si abbia lim A m →∞ m = 0 ⇒ A <1
  150. 150. Sistemi Lineari:Condizionamento   Si tratta di studiare come varia la soluzione di un sistema lineare al variare dei dati, cioè della matrice A e del termine noto b Iniziamo dal caso in cui venga modificato solo il termine noto… Ax = b A( x + ∆x) = b + ∆b Sottraend Sottraend oo −1 A(∆x) = ∆b ⇒ ∆x = A ∆b
  151. 151. Sistemi Lineari:Condizionamento ∆x = A−1∆b ≤ A−1 ∆b A 1 b = Ax ≤ A x ⇒ ≤ x b ∆x x ≤ A A −1 ∆b b
  152. 152. Sistemi Lineari: Condizionamento  Nel caso di variazione di A si ottiene… Ax = b ( A + ∆A) ( x + ∆x) = b Numero di Condizionamento del Problema ∆x x + ∆x ≤ A A −1 ∆A A
  153. 153. Sistemi Lineari: Condizionamento  Una matrice è detta ben condizionata relativamente alla risoluzione di un sistema lineare se il numero di condizionamento non è “troppo grande” (questo naturalmente dipende dal contesto);  Si può dimostrare che il numero di condizionamento da una misura di quanto vicina sia una matrice all’essere singolare.
  154. 154. Sistemi Lineari: Metodi Iterativi     Rispetto ai metodi diretti hanno il vantaggio di preservare la struttura della matrice preservandone quindi l’eventuale sparsità In generale sono di più facile implementazione Poiché tuttavia la soluzione è ottenuta come limite di una successione per essere una valida alternativa possono aver bisogno di opportune tecniche di accelerazione Introducono in ogni caso un errore dovuto all’approssimazione (studio della convergenza)
  155. 155. Sistemi Lineari: Metodi Iterativi  Metodi di Jacobi, Gauss-Seidel, Rilassamento  L’idea comune ai differenti metodi è la seguente. Data una stima iniziale x(0) del sistema lineare Ax = b si costruisce una successione di vettori {x(k)} risolvendo successivamente dei sistemi lineari semplici. A=M −N det( M ) ≠ 0 Ax = b ⇒ Mx = Nx + b ⇓ Mx ( k +1) = Nx (k ) +b
  156. 156. Sistemi Lineari: Metodi Iterativi  La matrice −1 −1 −1 B = M N = M ( M − A) = I − M A è detta matrice di iterazione;   essa individua un particolare metodo ed il suo studio è fondamentale per stabilire la convergenza e la rapidità di convergenza del corrispondente metodo; E’ utile considerare la seguente decomposizione di A A= D −E −F triangolare triangolare diagonale inferiore superiore
  157. 157. Sistemi Lineari: Metodi Iterativi  Metodo di Jacobi M = D, xi( k +1)  N = E+ F 1 = aii BJ = D −1 ( E + F ) = I − D −1 A i −1 n   (k ) (k )  bi − ∑ aij x j − ∑ aij x j    j =1 j =i +1   L’implementazione del metodo richiede due vettori xold, xnew; alla fine di ogni ciclo si pone xnew = xold. Le componenti del vettore xnew sono costruite a partire dal vettore xold in maniera indipendente; l’algoritmo è quindi in forma parallela.
  158. 158. Sistemi Lineari: Metodi Iterativi  Metodo di Gauss-Seidel M = D − E, N = F xi( k +1)  1 = aii ( BJ = ( D − E ) F = I − D E −1 −1 ) −1 D −1 F i −1 n   ( k +1) (k )  bi − ∑ aij x j − ∑ aij x j    j =1 j =i +1   A differenza del metodo di Jacobi, per l’implementazione del metodo di GaussSeidel è sufficiente un solo vettore; le componenti del vettore iterato, infatti, sono utilizzate non appena vengono calcolate.
  159. 159. Sistemi Lineari: Metodi Iterativi  Metodo di Rilassamento   Con l’obiettivo di accelerare la convergenza si possono modificare i metodi precedenti scegliendo di aggiornare il vettore al passo k + 1 con una opportuna media pesata del valore al passo k-esimo e del nuovo valore calcolato; Ad esempio il metodo di Gauss-Siedel può essere così modificato; una voltà calcolata la quantità 1 yi = aii  i −1 n   ( k +1) (k )  bi − ∑ aij x j − ∑ aij x j    j =1 j =i +1   Si assume come nuovo valore la combinazione lineare ( k +1) i x = ωy + (1 − ω ) x (k ) i
  160. 160. Sistemi Lineari: Metodi Iterativi  Studio della convergenza Considerando la decomposizione generale ed indicando con x* la soluzione del sistema Ax = b, possiamo scrivere: x* = Bx * + M −1b x ( k +1) = Bx ( k ) + M −1b da cui, ponendo e( k ) = x * − x (k ) Si ha la seguente relazione ricorrente sull’errore e ( k +1) = Be ( k ) che, per applicazione successiva, può essere scritta come e ( k +1) = B k e ( 0)
  161. 161. Sistemi Lineari: Metodi Iterativi  Il metodo iterativo definito dalla matrice di iterazione B converge se e solo se B <1 Da questo risultato discende che il metodo di rilassamento converge solo per 0<ω < 2
  162. 162. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  163. 163. PDE: Definizioni e Classificazione  L’equazione di Black & Scholes   Dinamica del sottostante descritta da un’equazione differenziale stocastica Utilizzo del principio di non arbitraggio ∂f 1 2 2 ∂ f ∂f + σ S + rS − rf = 0 2 ∂t 2 ∂S ∂S 2
  164. 164. PDE: Definizioni e Classificazione   Per trovare delle specifiche soluzioni è necessario aggiungere opportune condizioni al contorno L’equazione ha alcune caratteristiche distintive    È del secondo ordine È lineare È un’equazione parabolica
  165. 165. PDE: Definizioni e Classificazione   L’ordine di un’equazione differenziale è l’ordine più alto fra quelli delle derivate presenti all’interno dell’equazione La forma generica di un’equazione differenziale lineare del secondo ordine è la seguente (dove φ è una funzione di x e y): ∂φ ∂φ ∂φ ∂φ ∂φ a 2 +b +c 2 +d +e + fφ + g = 0 ∂x ∂x∂y ∂y ∂x ∂y 2 2 2
  166. 166. PDE: Definizioni e Classificazione    Per semplicità ci occuperemo solo di equazioni differenziali lineari; Sebbene in finanza la maggior parte dei modelli di pricing si basi su PDE lineari, è interessante notare che si possono ottenere equazioni non lineari semplicemente eliminando alcune delle semplificazioni implicite nel modello di Black e Scholes; Ad esempio introducendo i costi di transazione, l’equazione di Black & Scholes diventa… (Wilmott, Derivatives, Cap. 21)
  167. 167. PDE: Definizioni e Classificazione  La classificazione delle equazioni differenziali del secondo ordine dipende dal segno assunto dall’espressione ∆ = b − 4ac 2  Se ∆ > 0 l’equazione è iperbolica  Se ∆ = 0 l’equazione è parabolica  Se ∆ < 0 l’equazione è ellittica
  168. 168. PDE: Definizioni e Classificazione ∂φ ∂φ + 2 =0 2 ∂x ∂y 2  Equazione Ellittica   Equazione di Laplace Equazione Iperbolica  Equazione delle Onde 2 ∂φ 1 ∂φ − 2 2 =0 2 ∂t v ∂x 2 2
  169. 169. PDE: Definizioni e Classificazione  Equazione Parabolica  Equazione della diffusione del calore ∂φ ∂φ =k 2 ∂t ∂x 2  Perché è così interessante per la finanza?  Perché l’equazione di Black & Scholes è un’equazione parabolica, anzi con un opportuno cambio di variabile si può dimostrare che è esattamente uguale all’equazione della propagazione del calore!
  170. 170. PDE: Definizioni e Classificazione  Per integrare l’equazione occorre aggiungere una   condizione iniziale φ ( x,0) = u ( x) 0≤ x≤1 e delle  condizioni al contorno φ (0, t ) = φ (1, t ) = u0 t>0 Nei problemi finanziari la condizione iniziale è usualmente sostituita da Nei problemi finanziari la condizione iniziale è usualmente sostituita da una condizione terminale. Ad esempio ilil payoff di un’opzione è una condizione terminale. Ad esempio payoff di un’opzione è conosciuto solo alla scadenza. conosciuto solo alla scadenza.
  171. 171. PDE: Definizioni e Classificazione  Limiti del dominio di integrazione  Da un punto di vista computazionale, il dominio di integrazione deve essere comunque limitato sia nel tempo che nell’altra variabile (es. valore del sottostante)  Le condizioni al contorno  sono molto semplici per le opzioni europee plain vanilla;  per le opzioni con barriera di solito possono addirittura semplificare il problema;  per altri tipi di opzione esotiche le condizioni al contorno possono a loro volta richiedere particolari tecniche numeriche per la loro espressione;  il caso delle opzioni americane è invece più complesso: siamo in presenza di un cosiddetto free boundary.
  172. 172. PDE: Definizioni e Classificazione  La forma dell’equazione e l’insieme delle condizioni iniziali e al contorno determinano se un dato problema è ben posto;  Un problema è ben posto se  Esiste una soluzione;  La soluzione è unica (almeno all’interno di una famiglia di soluzioni di interesse);  La soluzione non risente della dipendenza sensibile dai dati del problema (cioè una “piccola” perturbazione nei dati deve risultare in una “piccola” perturbazione nella soluzione)
  173. 173. Perchè i metodi numerici Alberi Binomiali Alberi Trinomiali Volatilità Implicita e Smile Prezzi di Arrow-Debreu e Probabilità Implicite Alberi Binomiali Impliciti Alberi Trinomiali Impliciti Alberi per tassi di interesse Il modello di Hull & White Richiami di Analisi Numerica: Sistemi Lineari Equazioni Differenziali a Derivate Parziali Metodi alle Differenze Finite
  174. 174. L’idea di base   L’idea di base dei metodi alle differenze finite è intuitiva e pericolosa allo stesso tempo! Si tratta di approssimare le derivate parziali con quozienti di differenze finite ∂C ∂S ∆C ∆S
  175. 175. Approssimazione discreta della derivata del primo ordine • Forward Approximation f ′( x) = f ( x + h) − f ( x ) + O ( h) h •Backward Approximation f ′( x) = f ( x ) − f ( x − h) + O ( h) h •Central Approximation f ( x + h) − f ( x − h) f ′( x) = + O(h 2 ) 2h
  176. 176. Approssimazione discreta della derivata del primo ordine
  177. 177. Approssimazione discreta della derivata del secondo ordine  Dallo sviluppo in serie di Taylor possiamo ottenere un’approssimazione valida fino a termini del secondo ordine f ( x + h) − 2 f ( x ) + f ( x − h) f ′′( x) = + O(h 2 ) h2
  178. 178. Schemi di discretizzazione   In generale applicheremo i nostri schemi di discretizzazione a funzioni di due variabili È naturale pertanto definire una griglia di punti della forma (iδx, jδy )  I valori della funzione sulla griglia formano pertanto una matrice φ ( x, y ) → φij = φ (iδx, jδy )
  179. 179. Schemi di discretizzazione  Nei casi che andremo a studiare le variabili saranno S (valore del sottostante) e t (tempo alla scadenza del contratto) S = iδS  0≤i≤ I Poiché non disponiamo di una condizione iniziale bensì di una condizione finale, è conveniente scegliere t = T − jδt 0≤ j≤ J
  180. 180. Schemi di discretizzazione  Osservazione 1  Poiché il dominio della soluzione all’equazione di Black e Scholes nel continuo è 0 ≤ S < ∞, IδS rappresenta la nostra approssimazione dell’infinito;  In pratica questo limite superiore non necessità di essere eccessivamente grande, è sufficiente prendere un valore pari a tre o quattro volte il prezzo di esercizio;  Per le opzioni con barriera il problema talora si semplifica in quanto non è necessario trovare soluzioni per tutti i valori di S; ad esempio per un’opzione up-and-out non è necessario generare punti della griglia corrispondenti a valori di S che superano la barriera.
  181. 181. Schemi di discretizzazione  Osservazione 2   Notate che il tempo “scorre” al contrario, all’aumentare di j , t diminuisce; Il valore della funzione sulla griglia sarà pertanto indicato come f ij = f (iδS , T − jδt )
  182. 182. Schemi di discretizzazione  A seconda del tipo di equazione e dell’approsimazione utilizzata per calcolare le derivate, otterremo un insieme di equazioni algebriche;  La definizione delle condizioni al contorno merita particolare attenzione;  In ogni caso ci aspetteremo che facendo tendere a zero gli incrementi δx e δy la soluzione del set di equazioni algebriche converga alla soluzione della PDE… … ma questo non è assolutamente garantito!
  183. 183. Schemi di discretizzazione  Utilizziamo come esempio l’equazione di Black & Scholes  Approssimazione di θ f i , j − f i , j +1 ∂f ≈ ∂t δt  Approssimazione di ∆ f i +1, j − f i −1, j ∂f ≈ ∂S 2δS  Approssimazione di Γ f i +1, j − 2 f i , j + f i −1, j ∂ f ≈ 2 2 ∂S δS 2
  184. 184. Condizioni al contorno  Condizioni finali e payoff  Alla scadenza il valore dell’opzione è pari al payoff da cui ricaviamo la condizione: f ( S , T ) → f i , 0 = Payoff (iδS )  Il payoff è una funzione nota di S, ad esempio per una call porremo: f i , 0 = max(iδS − K ,0)
  185. 185. Condizioni al contorno  Condizioni al contorno  Dobbiamo specificare il valore assunto dalla funzione f per S = 0 e S = IδS;  La specifica delle condizioni al contorno dipende dal tipo di opzione;  Vediamo alcuni esempi…
  186. 186. Condizioni al contorno  Call Option  Se il sottostante è nullo anche il valore dell’opzione è zero f 0, j = 0  Per grandi valori del sottostante il valore dell’opzione tende asintoticamente a S − Ke − r (T − t ) f I , j = IδS − Ke − rjδt
  187. 187. Condizioni al contorno  Put Option  Per S = 0 abbiamo la condizione f 0, j = Ke  − rjδt Mentre per grandi valori del sottostante la put diventa priva di valore, ovvero fI, j = 0
  188. 188. Condizioni al contorno  Ulteriori condizioni ∂f 1 2 2 ∂ 2 f ∂f + σ S + rS − rf = 0 2 ∂t 2 ∂S ∂S ∂f (0, t ) S =0⇒ − rf (0, t ) = 0 ∂t f 0, j − f 0, j +1 δt − rf 0, j = 0 ⇒ f 0, j (1 − rδt ) = f 0, j +1
  189. 189. Condizioni al contorno  Ulteriori condizioni: se il payoff è lineare in S per grandi valori di S ∂f 1 2 2 ∂ 2 f ∂f + σ S + rS − rf = 0 2 ∂t 2 ∂S ∂S ∂ 2 f (S , t ) S →∞⇒ →0 2 ∂S f I , j = 2 f I −1, j − f I − 2, j
  190. 190. Condizioni al contorno  Opzioni con Barriere  Es. up-and-out Call   V(Sb, t) = 0 Volendo inserire questa condizione nella griglia di valutazione, l’ideale sarebbe avere il valore della barriera lungo una linea della griglia stessa, cioè Sb/δS dovrebbe essere un numero intero.
  191. 191. Condizioni al contorno  Opzioni con Barriere Spesso non è possibile verificare questa condizione, al fine di mantenere basso l’errore, in questi casi è conveniente considerare il punto che si trova oltre la barriera ed effettuare un’interpolazione.
  192. 192. Condizioni al contorno  Es. Condizione sulla Barriera  Supponiamo quindi di avere una barriera che possiamo esprimere nella forma f ( S B , t ) = φ (t )  Ad esempio per un opzione di tipo “out” il valore di φ sarà 0 mentre per un’opzione di tipo “in” dovrà essere uguale al valore dell’opzione che entra in esercizio alla barriera.
  193. 193. Condizioni al contorno  Es. Condizione sulla Barriera  Se indichiamo quindi con fI-1,j un punto situato subito prima della barriera e con fI,j il punto della griglia subito oltre la barriera stessa, possiamo porre come condizione al contorno [ 1 f I , j = φ − (1 − α ) f I −1, j α dove Sb − ( I − 1)δS α= δS  ] In questo modo la retta che unisce i due punti assume esattamente valore φ sulla barriera.
  194. 194. Metodo Esplicito ∂f ∂ f ∂f + a ( S , t ) 2 + b( S , t ) + c( S , t ) f = 0 ∂t ∂S ∂S 2 f i , j − f i , j +1  f i +1, j − 2 f i , j + f i −1, j  + + ai , j  2   δt δS    f i +1, j − f i −1, j    + ci , j f i , j = O(δt , δS 2 ) bi , j   2δS  
  195. 195. Metodo Esplicito  Riscriviamo l’equazione alle differenze finite ponendo il termine j + 1 a sinistra del segno di uguale f i , j +1 = Ai , j f i −1, j + (1 + Bi , j ) f i , j + Ci , j f i +1, j 1 Ai , j = c1ai , j + c2bi , j 2 Bi , j = −2c1ai , j + δtci , j Ci , j 1 = c1ai , j − c2bi , j 2 δt δt c1 = 2 , c2 = δS δS
  196. 196. Metodo Esplicito  Nei casi che prenderemo in considerazione, i coefficienti A, B e C non dipendono dal tempo e quindi non contengono l’indice j;  Esplicitando la dipendenza dai parametri differenziale, possiamo quindi scrivere ( ) dell’equazione ( 1 22 Ai = σ i − ri δt 2 ) Bi = − σ i + r δt ( ) 1 22 Ci = σ i + ri δt 2 2 2
  197. 197. Metodo Esplicito  Il metodo alle differenze finite esplicito è equivalente al calcolo con alberi trinomiali E’ calcolato a partire dai valori dell’opzione in questi punti Il valore dell’opzione questo punto in
  198. 198. Metodo Esplicito     L’equazione appena scritta vale solo per i punti interni alla griglia; Abbiamo pertanto I – 1 equazioni per I + 1 incognite; Le ulteriori due equazioni provengono dalle condizioni al contorno per i = 0 e i = I; Se conosciamo fi,j per ogni i allora possiamo ricavare il valore di fi,j+1;
  199. 199. Metodo Esplicito  Poiché conosciamo il valore di fi,0 che è pari al valore del payoff, possiamo calcolare step by step tutti i valori nella griglia corrispondenti agli istanti precedenti fino al valore attuale. Dal momento che il valore della funzione al passo temporale j + 1 è una funzione esplicita del valore agli step precedenti, il metodo appena descritto viene detto metodo alle differenze finite esplicito.
  200. 200. Esempio 1 Esempio 1 Programmazione Programmazione VBA VBA Calcolo del Prezzo di una Call Europea Calcolo del Prezzo di una Call Europea
  201. 201. Metodo Esplicito Esempio 1 – Call Europea ' ' loop di calcolo ' For j = 0 To NumTStep - 1 For i = 1 To NumSStep - 1 A = 0.5 * dt * i * (Volatility * Volatility * i - RiskFreeRate) B = -(Volatility * Volatility * i * i + RiskFreeRate) * dt C = 0.5 * dt * i * (Volatility * Volatility * i + RiskFreeRate) f(i, j + 1) = A * f(i - 1, j) + (1 + B) * f(i, j) + C * f(i + 1, j) Next i ' ' condizioni al contorno per S = 0 e per S "molto grande" ' If TipoOpzione = 0 Then ' call option f(0, j + 1) = 0 f(NumSStep, j + 1) = NumSStep * dS - Strike * Exp(-RiskFreeRate * (j + 1) * dt) ElseIf TipoOpzione = 1 Then ' put option f(0, j + 1) = Strike * Exp(-RiskFreeRate * (j + 1) * dt) f(NumSStep, j + 1) = 0 End If Next j
  202. 202. Metodo Esplicito Problemi di convergenza f i , j +1 = Ai , j f i −1, j + (1 + Bi , j ) f i , j + Ci , j f i +1, j         f1, j +1  1 + B1 C1 0   f 2, j +1   A2 1 + B2 C2 f 3, j +1  =  0 A3 1 + B3         f n −1, j +1   0 0 0   0  0  C3    0    0  0      1 + Bn −1  0 f1, j   f 2, j  f 3, j  + c.c.    f n −1, j  
  203. 203. Metodo Esplicito Problemi di convergenza   Affinché il sistema converga è necessario che la norma della matrice sia minore di 1 Da questo si ricavano due limiti importanti sulla dimensione degli step δS δt ≤ 2 2 σ S 2 σ S δS ≤ r 2
  204. 204. Metodo Esplicito Problemi di convergenza  Significato finanziario dei limiti sugli intervalli  Vediamo quale relazione intercorre fra il metodo esplicito e gli alberi trinomiali  Ripristiniamo il normale “scorrere” del tempo ed approssimiamo le derivate rispetto ad S al tempo t con i valori stimati al tempo t + ∆t
  205. 205. Metodo Esplicito Problemi di convergenza  Applicando questa approssimazione si giunge alla seguente espressione che rappresenta un’altra forma del metodo alle differenze esplicito ˆ ˆ ˆ f i , j = Ai f i −1, j +1 + Bi f i , j +1 + Ci f i +1, j +1 ( ) 1 22 σ i − ri δt 1 − σ 2i 2δt ˆ Ai = 2 Bi = 1 + rδt 1 + rδt 1 22 σ i + ri δt Ci = 2 1 + rδt ( ( ) )
  206. 206. Metodo Esplicito Problemi di convergenza ˆ Ai ˆ Bi ˆ Ci ( ) 1 22 σ i − ri δt 1 2 = = πd 1 + rδt 1 + rδt 1 − σ 2i 2δt 1 = = π0 1 + rδt 1 + rδt 1 22 σ i + ri δt 1 2 = = πu 1 + rδt 1 + rδt ( ) ( ) πd +π0 +πu =1
  207. 207. Metodo Esplicito Problemi di convergenza  Possiamo interpretare queste quantità come probabilità risk-neutral ; E ( ∆S ) = −δSπ d + 0π 0 + δSπ u = riδSδt = rSδt  Infatti l’incremento di valore nell’intervallo di tempo avviene al tasso privo di rischio!
  208. 208. Metodo Esplicito Problemi di convergenza  Le condizioni di stabilità del metodo esplicito si traducono quindi nella richiesta che tali probabilità siano sempre non negative! σ S π d ≥ 0 ⇒ σ iδS − rδS ≥ 0 ⇒ δS ≤ r 2 δS 2 2 2 2 π 0 ≥ 0 ⇒ σ i δS δt ≤ δS ⇒ δt ≤ 2 2 σ S π u ≥ 0 ∀ δS , δt 2 2
  209. 209. Esempio 2 Esempio 2 Programmazione Programmazione VBA VBA Calcolo del Prezzo di un’Opzione Parigina Calcolo del Prezzo di un’Opzione Parigina
  210. 210. Metodo Esplicito Esempio 2 – Parigina
  211. 211. Metodo Esplicito Esempio 2 – Parigina   Introduciamo una nuova variabile di stato che rappresenta il tempo in cui il valore dell’asset si trova oltre la barriera τ In questo caso la barriera divide la regione di integrazione in due parti, nella prima il prezzo dell’asset si trova fuori dalla regione di attivazione e quindi l’equazione differenziale che descrive il comportamento dinamico dell’opzione è la stessa; nella seconda entra in gioco la variabile τ e l’equazione diventa ∂f ∂f 1 2 2 ∂ f ∂f + + σ S + rS − rf = 0 2 ∂t ∂τ 2 ∂S ∂S 2
  212. 212. Metodo Implicito ∂f ∂2 f ∂f + a ( S , t ) 2 + b( S , t ) + c( S , t ) f = 0 ∂t ∂S ∂S f i , j − f i , j +1  f i +1, j +1 − 2 f i , j +1 + f i −1, j +1  + + ai , j +1  2   δt δS    f i +1, j +1 − f i −1, j +1  2  + ci , j +1 f i , j +1 = O (δt , δS ) bi , j +1    2δS  
  213. 213. Metodo Implicito Sono calcolati a partire dai valori dell’opzione in questo punto I valori dell’opzione questi punti in
  214. 214. Metodo Implicito  Riscriviamo l’equazione alle differenze finite ponendo il termine i, j a sinistra del segno di uguale f i , j = Ai , j +1 f i −1, j +1 + (1 + Bi , j +1 ) f i , j +1 + Ci , j +1 f i +1, j +1 1 Ai , j +1 = −c1ai , j +1 − c2bi , j +1 2 Bi , j +1 = 2c1ai , j +1 − δtci , j +1 1 Ci , j +1 = −c1ai , j +1 + c2bi , j +1 2 δt δt c1 = 2 , c2 = δS δS
  215. 215. Metodo Implicito  Contrariamente alle apparenze il metodo implicito presenta caratteristiche completamente diverse dal metodo esplicito  Il metodo non soffre delle problematiche legate allo step lungo la direzione temporale; lo step lungo S può essere piccolo e lo step lungo t più grande senza per questo creare problemi di convergenza;  La soluzione dell’equazione alle differenze finite non è più immediata; occorre risolvere un sistema di equazioni algebriche;  Allo stesso costo computazione è comunque possibile trovare un’approssimazione ancora migliore…
  216. 216. Metodo di Crank-Nicolson  Il metodo di Crank-Nicolson può essere pensato come una sorta di media dei due metodi visti fino a questo momento, di fatto esso utilizza i valori in sei punti come mostrato in figura
  217. 217. Metodo di Crank-Nicolson  Lo schema di discretizzazione è il seguente f i , j − f i , j +1 δt  f i +1, j +1 − 2 f i , j +1 + f i −1, j +1  1  f i +1, j − 2 f i , j + f i −1, j 1  + ai , j  + ai , j +1  2   2  2 δS δS 2     f i +1, j +1 − f i −1, j +1  1  f i +1, j − f i −1, j 1  + bi , j  + bi , j +1    2  2 2δS 2δS            1 1 + ci , j +1 f i , j +1 + ci , j f i , j = O(δt 2 , δS 2 ) 2 2  Questo schema risulta corretto fino al secondo ordine in entrambe le variabili!
  218. 218. Metodo di Crank-Nicolson  Lo schema può essere riscritto nella seguente forma − Ai , j +1 f i −1, j +1 + (1 − Bi , j +1 ) f i , j +1 − Ci , j +1 f i +1, j +1 = = Ai , j f i −1, j + (1 − Bi , j ) f i , j + Ci , j f i +1, j   Dove i valori dei coefficienti vengono dedotti come al solito dai coefficienti dell’equazione differenziale nel continuo. Il metodo è stabile come il metodo implicito (possono essere utilizzati valori qualunque per gli step) e risulta più preciso.
  219. 219. Metodo di Crank-Nicolson  L’espressione appena vista può essere posta in forma matriciale C1 0      A1 (1 + B1 )   0 A2 (1 + B2 )       0 0    0 0       (1 + BI − 2 ) CI −2 0       0 AI −1 (1 + BI −1 ) C I −1     − A1   0  0           =  f I −1, j +1  f I , j +1   (1 − B1 ) − C1 0     f 0, j    f1, j  − A2 (1 − B2 )      0    0 0         (1 − BI − 2 ) − C I −2 0  f I −1, j      0 − AI −1 (1 − BI −1 ) − C I −1  f I , j   f 0, j +1 f1, j +1  Le due matrici hanno I-1 righe e I+1 colonne, si tratta quindi di un sistema di I-1 equazioni in I+1 incognite.
  220. 220. Metodo di Crank-Nicolson  Le due equazioni aggiuntive vengono fornite dalle condizioni al contorno.  Utilizzando anche le condizioni al contorno possiamo riformulare il problema in termini di un sistema di equazioni con matrici quadrate del tipo M  j +1 L j +1 v + rj = M v j j R r è un vettore noto che dipende dalle condizioni al contorno e/o iniziali (Per una rassegna completa della forma da attribuire alle condizioni al contorno si veda Wilmott Derivatives.)
  221. 221. Metodo di Crank-Nicolson  Es. Condizione al contorno per f0,j C1 0     f 0, j +1   A1 (1 + B1 )    A2 (1 + B2 )      f1, j +1  0 0 0    0 0    =       (1 + BI − 2 ) CI −2 0  f I −1, j +1        0 AI −1 (1 + BI −1 ) C I −1  f I , j +1    C1 0 0  0  f1, j +1   A1 f 0, j +1  1 + B1      C2 0  0  f 2, j +1   0   A2 1 + B2  0 A3 1 + B3 C3  0  f 3, j +1  +  0                       0 0 0 0  1 + Bn −1  f I −1, j +1   0     
  222. 222. Metodo di Crank-Nicolson  Le matrici M che compaiono nella risoluzione dello schema di Crank-Nicolson sono matrici tri-diagonali;  Possiamo utilizzare i vari metodi di risoluzione discussi predentemente   LU Decomposition Metodi Iterativi
  223. 223. Metodo di Crank-Nicolson  Decomposizione LU    Per problemi in cui la matrice M non dipende dal tempo, tale approccio è sicuramente conveniente in quanto la decomposizione viene effettuata una sola volta; Nei casi frequenti in cui si abbia dipendenza dal tempo, tuttavia, tale processo va ripetuto ad ogni step temporale rallentando significativamente il processo di calcolo; Inoltre tale metodo non si presta ad essere facilmente modificabile per trattare l’eventualità di esercizio anticipato.
  224. 224. Metodo di Crank-Nicolson  Metodi Iterativi    I metodi iterativi sono, in generale, più facili da programmare della decomposizione LU; Inoltre sono facilmente estendibili al caso di opzioni americane o altri derivati con esercizio anticipato; Di contro possono essere più lenti della decomposizione LU nel caso di derivati di tipo Europeo
  225. 225. Metodo di Crank-Nicolson  Metodi Iterativi  Esercizio Europeo ω n +1 n vi = vi + M ii  i −1 N   n +1 n  qi − ∑ M ij v j − ∑ M ij v j    j =1 j =1   Esercizio Americano  n ω n +1 vi = max vi + M ii   i −1 N    n +1 n  qi − ∑ M ij v j − ∑ M ij v j , Payoff    j =1 j =1    
  226. 226. Esempio 3 Esempio 3 Programmazione Programmazione VBA VBA Calcolo del Prezzo di una Call Americana Calcolo del Prezzo di una Call Americana

×