Ciclo di seminari: Metodi Computazionali per la Finanza C.d.L.M. Finanza e Assicurazioni a.a. 2018/2019 Lezione 4: Simulazione Moti Browniani e con Monte Carlo
Cos è il Metodo Monte Carlo? Dinamica di Black-Scholes { dbt = rb t dt ds t = µs t dt + σs t dw t Goal: determinare il prezzo di un derivato al tempo t, t [0, T ], sotto la misura risk-neutral Q [ D t = E Q H(ST ) ] Ft e r(t t), t [0, T ]
Cos è il Metodo Monte Carlo? Domanda 1 Come determiniamo il prezzo (a scadenza) del sottostante? Simulazione di M traiettorie del sottostante Domanda 2 Qual è il payoff del derivato? Calcolo del payoff per ogni simulazione Domanda 3 Come calcoliamo il prezzo D t del derivato al tempo t? Metodo Monte Carlo: D t 1 M Mj=1 H(S (j) T )
Cos è il Metodo Monte Carlo? Metodo Monte Carlo Metodo stocastico per il calcolo numerico di quantità deterministiche. Il metodo viene utilizzato per la prima volta all inizio della II Guerra Mondiale da Von Neumann ed Ulam, mentre lavoravano al Progetto Manhattan (realizzazione della bomba atomica, Los Alamos, NM, 1943 1945) Idea: quante volte una freccetta colpisce il bersaglio?
Cos è il Metodo Monte Carlo?
Cos è il Metodo Monte Carlo? Idea: se il numero (N) di lanci è grande, allora numero di freccette nel bersaglio (v) area del cerchio v N A c A q D altra parte, { Ac = π r 2 A q = 4r 2 π = 4 Ac v 4 A q N
multivariati Simulazione Moto Browniano Standard {W t } t 0 processo di Wiener: W 0 = 0, W t W s N (0, t s) Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) Una simulazione: X (1) i W (1) 0 = 0 N (0, 1), i = 1,..., N W (1) = W (1) 0 + t 0X (1) 1 W (1) = W (1) + X (1) 2... W (1) T = W (1) t N 1 + t N t N 1 X (1) N
multivariati Simulazione Moto Browniano Standard {W t } t 0 processo di Wiener: W 0 = 0, W t W s N (0, t s) Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) Due simulazioni: X (1) i N (0, 1), X (2) i N (0, 1), i = 1,..., N W (1) 0 = 0 W (1) = W (1) 0 + t 0X (1) 1 W (1) = W (1) + X (1) 2... W (1) T = W (1) t N 1 + t N t N 1 X (1) N W (2) 0 = 0 W (2) = W (2) 0 + t 0X (2) 1 W (2) = W (2) + X (2) 2... W (2) T = W (2) t N 1 + t N t N 1 X (2) N
multivariati Simulazione Moto Browniano Standard {W t } t 0 processo di Wiener: W 0 = 0, W t W s N (0, t s) Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) M simulazioni: X (j) i N (0, 1), i = 1,..., N, j = 1,..., M W (j) 0 = 0 W (j) W (j) W (j) T = W (j) 0 + t 0X (j) 1 = W (j)... + X (j) 2 = W (j) t N 1 + t N t N 1 X (j) N
multivariati Simulazione Moto Browniano Standard W = W (1) 0 W (1) W (1)... W (1) T N 1 W (1) T W (2) 0 W (2) W (2)... W (2) T N 1 W (2) T W (3) 0 W (3) W (3)... W (3) T N 1 W (3) T.................. W (M 1) 0 W (M 1) W (M) 0 W (M) W (M 1)... W (M 1) T N 1 W (M)... W (M) T N 1 W (M 1) T W (M) T
multivariati
multivariati Simulazione Moto Browniano Generalizzato {Y t } t 0 Moto Browniano generalizzato: Y 0 = y 0, dy t = adt + σdw t Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) Una simulazione: X (1) i Y (1) 0 = y 0 N (0, 1), i = 1,..., N Y (1) = Y (1) 0 + a( t 0) + σ t 0X (1) 1 Y (1) = Y (1) 1 + a( ) + σ X (1) 2... Y (1) t N = Y (1) N 1 + a(t N t N 1 ) + σ t N t N 1 X (1) N
multivariati Simulazione Moto Browniano Generalizzato {Y t } t 0 Moto Browniano generalizzato: Y 0 = y 0, dy t = adt + σdw t Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) Due simulazioni: X (1) i N (0, 1),, X (2) i N (0, 1) i = 1,..., N Y (1) 0 = y 0 Y (1) = Y (1) 0 + a( t 0 ) + σ t 0 X (1) 1 Y (1) = Y (1) 1 + a( ) + σ X (1) 2... Y (2) 0 = y 0 Y (2) = Y (2) 0 + a( t 0 ) + σ t 0 X (2) 1 Y (2) = Y (2) 1 + a( ) + σ X (2) 2... Y (1) t N = Y (1) N 1 + a(t N t N 1 ) + σ t N t N 1 X (1) N Y (2) t N = Y (2) N 1 + a(t N t N 1 ) + σ t N t N 1 X (2) N
multivariati Simulazione Moto Browniano Generalizzato {Y t } t 0 Moto Browniano generalizzato: Y 0 = y 0, dy t = adt + σdw t Scadenzario in [0, T ] : 0 = t 0 < <... < t N 1 < t N = T (N fissato a priori, e.g. numero giorni lavorativi in un anno) M simulazioni: X (j) i Y (j) 0 = y 0 Y (j) Y (j) Y (j) t N N (0, 1), i = 1,..., N, j = 1,..., M = Y (j) 0 + a( t 0) + σ t 0X (j) 1 = Y (j) 1 + a( ) + σ X (j) 2... = Y (j) N 1 + a(t N t N 1 ) + σ t N t N 1 X (j) N
multivariati Simulazione Moto Browniano Standard Y = Y (1) 0 Y (1) Y (1)... Y (1) T N 1 Y (1) T Y (2) 0 Y (2) Y (2)... Y (2) T N 1 Y (2) T Y (3) 0 Y (3) Y (3)... Y (3) T N 1 Y (3) T.................. Y (M 1) 0 Y (M 1) Y (M) 0 Y (M) Y (M 1)... Y (M 1) T N 1 Y (M)... Y (M) T N 1 Y (M 1) T Y (M) T
multivariati
multivariati Simulazione Moto Browniano Geometrico {S t} t 0 Moto Browniano geometrico: S 0 = s 0, {( ) } ds t = µs tdt + σs tdw t, S t = s 0 exp µ σ2 2 t + σ (W t W 0) Una simulazione: X (1) i S (1) t 0 = s 0 S (1) S (1) S (1) t N N (0, 1), i = 1,..., N {( ) = s 0 exp µ σ2 2 {( ) = s 0 exp µ σ2 2... = s 0 exp {( µ σ2 2 ) ( t 0) + σ } t 0X (1) 1 } ( ) + σ X (1) 2 } (t N t N 1 ) + σ t N t N 1 X (1) N
multivariati Simulazione Moto Browniano Geometrico {S t} t 0 Moto Browniano geometrico: S 0 = s 0, {( ) } ds t = µs tdt + σs tdw t, S t = s 0 exp µ σ2 2 t + σ (W t W 0) M simulazioni: X (j) i S (j) t 0 = s 0 S (j) S (j) S (j) t N N (0, 1), i = 1,..., N, j = 1,..., M {( ) = s 0 exp µ σ2 2 {( ) = s 0 exp µ σ2 2... = s 0 exp {( µ σ2 2 ) ( t 0) + σ } t 0X (j) 1 } ( ) + σ X (j) 2 } (t N t N 1 ) + σ t N t N 1 X (j) N
multivariati Simulazione Moto Browniano Standard S = S (1) S (1) S (1)... S (1) T N 1 S (1) T S (2) 0 S (2) S (2)... S (2) T N 1 S (2) T S (3) 0 S (3) S (3)... S (3) T N 1 S (3) T.................. S (M 1) 0 S (M 1) S (M) 0 S (M) S (M 1)... S (M 1) T N 1 S (M)... S (M) T N 1 S (M 1) T S (M) T
multivariati
multivariati Due Moti Browniani correlati db t = rb t dt ds (1) t = µ 1 S (1) t dt + σ 1 S (1) t dw (1) t ds (2) t = µ 2 S (2) t dt + σ 2 S (2) t dw (2) t Corr ( ( dw (1) t, dw (2) ) 1 ρ t = ρ, C = ρ 1 )
multivariati Dal punto di vista algoritmico /1: 1. scelta dei parametri del modello (ρ = 0.4) e fattorizzazione di Cholesky C = A A, (A triangolare inferiore) 2. scelta dello scadenzario t = [0,,,..., t N 1, T ] 3. costruzione delle differenze dei tempi dello scadenzario dt i = t i t i 1, i = 1,..., N (vettore dt) 4. estrazione di M vettori casuali di lunghezza N da distribuzione normale standard per ciascun moto browniano (matrici X 1 e X 2 )
multivariati Dal punto di vista algoritmico /2: 5. per ogni istante di osservazione i = 1,..., N : memorizzazione delle estrazioni di tutte le simulazioni al tempo i-esimo (matrice M 2) costruzione della matrice Z, di dimensione M 2 in accordo con l espressione del Moto Browniano (standard, generalizzato, geometrico) Attenzione alle dimensioni degli addendi!! 6. costruzione di due matrici W 1 e W 2 (M (N + 1)) delle traiettorie dei Moti Browniani 7. rappresentazione grafica delle traiettorie simulate
multivariati Simulazione di MB standard correlati
multivariati Simulazione di MB generalizzati correlati
multivariati Simulazione di MB geometrici correlati
Esercizio Con il metodo Monte Carlo, considerando il modello di Black e Scholes per la dinamica del prezzo di un azione con parametri S 0 = 90, r = 0.06, σ = 0.2, valutare in t = 0 i seguenti titoli: 1 una call europea ed una put europea con scadenza T = 1.2 anni e strike price K = 95 2 un titolo derivato avente, alla scadenza T = 1.2 anni, il seguente payoff H T = max{k S, 0}, dove K = 95 e, indicato con 0 = t 0 < <... < t p = T uno scadenzario prefissato (osservazioni giornaliere), S = 1 p p i=1 S t i.
Esercizio Con il metodo Monte Carlo, considerando il modello di Black e Scholes bivariato, sotto la misura risk-neutral Q, di parametri r = 0.06, σ = [0.2, 0.4], S 0 = [90, 100] con correlazione ρ = 0.4 per la dinamica dei prezzi S j, j = 1, 2 di due azioni, si calcoli in t = 0 il valore V 0 di un derivato avente, alla scadenza T = 1 anno, il payoff sotto indicato: dove K = 102 e S = 3 2j=1 S j T. H T = max{k S, 0},
Esercizio Con il metodo Monte Carlo, considerando il modello di Black e Scholes bivariato, sotto la misura risk-neutral Q, di parametri r = 0.06, σ = [0.2, 0.4], S 0 = [90, 100] con correlazione ρ = 0.4 per la dinamica dei prezzi S i, i = 1, 2 di due azioni, si calcoli in t = 0 il valore V 0 di un derivato, avente alla scadenza T = 1 anno, il payoff sotto riportato H T = max{s K, 0}, { } dove K = 102 e S = max 1 2 (S1 + S 1 ),..., 1 2 (S1 t p + S p ), essendo 0 = t 0 < <... < t p = T uno scadenzario prefissato (osservazioni giornaliere).
Modello di Heston Modello di Black-Scholes con salti Ipotesi del modello di Black e Scholes: No arbitraggio, costi di transazione, dividendi titoli negoziati continuamente e scambiati anche in valori frazionari log-rendimenti indipendenti e normalmente distribuiti volatilità costante
Modello di Heston Modello di Black-Scholes con salti Modello di Heston db t = rb t dt ds t = µs t dt + v t S t dw (1) t dv t = k(θ v t )dt + η v t dw (2) t con µ R, k, θ, η > 0 e d W (1) t, W (2) t = ρdt θ media di lungo periodo k velocità di ritorno η vol-of-vol
Modello di Heston Modello di Black-Scholes con salti Discretizzazione temporale: schema di Eulero 0 := t 0 < < <..., t N 1 < t N =: T, con t i = it N Discretizzazione processo del prezzo: S ti = S ti 1 +µs ti 1 t+ v ti S ti 1 W (1) t i, W (1) t i := W (1) t i W (1) t i 1 Discretizzazione processo square-root della varianza: v ti = v ti 1 +k(θ v ti 1 ) t+ v ti η W (2) t i, W (2) t i := W (2) t i W (2) t i 1 Attenzione! Il processo {v t } t 0 deve essere sempre positivo (metodo della specularità)
Modello di Heston Modello di Black-Scholes con salti Processi Jump Diffusion ds t = µs t dt + v t S t dw t + S t dj t dove J t = N t j=1 Y j, con N t processo di Poisson e Y j v.a.i.i.d (processo di Poisson composto) {N(λ) t } t 0 t.c. N(λ) t Po(λt), (P(N(λ) t = k) = e λt (λt) k k! ) Y j N (µ J, σ J )
Modello di Heston Modello di Black-Scholes con salti Discretizzazione Discretizzazione temporale: 0 := t 0 < < <..., t N 1 < t N =: T, con t i = it N Simulazione traiettorie (come MB geometrico univariato + termine di salto )
Modello di Heston Modello di Black-Scholes con salti Esercizio Con il metodo di Eulero simulare M = 10, 50, 100, traiettorie del prezzo di un azione, considerando per esso una dinamica data da un processo Jump Diffusion con i seguenti parametri: S 0 = 90, σ = 0.2, µ = 0.7, µ J = 0.02, σ J = 0.22, λ = 30.
Modello di Heston Modello di Black-Scholes con salti Esercizio Con il metodo Monte Carlo, determinare al tempo t = 0 il prezzo D 0 di un titolo derivato avente il seguente payoff H T = max{k S, 0}, dove K = 95, T = 1 anno e S = 1 p p i=1 St i, essendo 0 = t 0 < <... < t p = T uno scadenzario prefissato, costituito da osservazioni giornaliere, e sapendo che {S t} t 0 è il processo stocastico che governa l andamento del sottostante, nei seguenti casi: modello di Black e Scholes, con parametri assegnati r = 1%, σ = 25%, S 0 = 100; modello Jump-Diffusion, con parametri assegnati r = 1%, σ = 25%, S 0 = 100, λ = 30 ed ampiezza di salto distribuita secondo una v.a. normale di media µ J = 0.02 e varianza σ 2 J = 22%; modello di Heston, con parametri assegnati r = 1%, σ = 25%, S 0 = 100, V 0 = 0.3, k = 4, θ = 0.04, η = 0.45, ρ = 0.3.