U N I V E R S I T A' D E G L I S T U D I D I B E R G A M O DIPARTIMENTO DI MATEMATICA, STATISTICA, INFORMATICA E APPLICAZIONI “Lorenzo Mascheroni” Modelli Matematici per i Mercati Finanziari I Immunizzazione con GAMS (Vittorio Moriggia) Attori delle selezioni di portafoglio Gestore selezione della composizione ribilanciamento del portafoglio misurazione delle prestazioni Investitori A. saldo netto positivo strategie passive: replica di un indice, portafoglio alla Markowitz strategie attive su mispricing B. saldo netto nullo (Asset-Liabilities Mgnt) strategie passive: perfect cash flow matching, portafogli dedicati, portafogli immunizzazione strategie attive su mispricing Perfect Cash Flow Matching variabile decisionale costruire un portafoglio a costo minimo tale da garantire esattamente ad ogni scadenza delle passività la piena copertura min xi q x i i iU C x i i xi 0 i L T U=1,2,...,I Universo delle obbligazioni xi = quantità del titolo i–esimo qi = Quotazione di mercato del titolo = indice della data di pagamento della passività con T L = passività al tempo Ci= Ammontare dei flussi del titolo i in liabilities.txt 23-06-1989 01-09-1989 15-06-1990 01-12-1990 01-12-1991 01-06-1993 liability 0 50000 42000 40000 40000 45000 liabrate(*) 0.092370 0.092281 0.090367 0.088643 0.085649 0.086548 (*)la struttura per scadenza delle passività è calcolata con un fitting di cubic-spline in regime di capitalizzazione continua, Actual/365 Data set derived from U.S.Treasury Quotes for 6/23/89 from the Wall Street Journal Esercizio 1 1. Definire gli opportuni insiemi per la tabella delle passività 2. Includere il file liabilites.txt per inizializzare il parametro delle passività. La sintassi del comando include è la seguente: $include "nomefile" bonds.txt bond-1 bond-2 15-07-1989 103.8125 107.25 15-08-1989 15-02-1990 15-08-1990 15-02-1991 15-08-1991 15-02-1992 15-08-1992 15-02-1993 15-08-1993 bond-3 bond-4 bond-5 bond-6 bond-7 bond-8 7.4375 7.4375 7.4375 7.4375 107.4375 3.625 3.625 3.625 3.625 3.625 3.625 103.625 4.125 4.125 4.125 4.125 4.125 4.125 104.125 4.3125 4.3125 4.3125 4.3125 4.3125 4.3125 4.3125 4.3125 104.3125 4.375 4.375 4.375 4.375 4.375 4.375 4.375 4.375 104.375 5.9375 5.9375 5.9375 5.9375 5.9375 5.9375 5.9375 5.9375 105.9375 yield price(*) accr(**) 8.08 113.0625 5.2597 8.29 97.1563 2.5635 8.37 99.6563 2.9171 8.35 100.9375 3.0497 8.35 101.375 3.0939 8.36 112.0625 4.1989 8.35 99.9063 3.3491 8.56 100.2812 6.3688 (*) I prezzi sono al corso secco (**) I ratei (accruals) sono calcolati alla data corrente Esercizio 2 1. Definire gli opportuni insiemi per la tabella delle obbligazioni (per le righe conviene utilizzare un asterisco) 2. Definire la tabella delle obbligazioni e includere il file bonds.txt 3. Calcolare i prezzi corso tel-quel: corso tel-quel = corso secco + rateo Orizzonte temporale: osservazione min xi q x i i iU C x i i L i xi 0 i U T L’insieme T riguarda solamente le scadenze delle passività. I flussi di cassa delle obbligazioni devono cadere nelle stesse date Il problema non è risolvibile! (infeasible) Esercizio 3 Individuare le variabili decisionali Definire il problema PCFM (Perfect Cash Flow Matching) e risolverlo Commentare i risultati Considerazioni sui risultati La maggior parte dei problemi sono non ammissibili (infeasible) Una possibile e parziale soluzione è data dalla creazione di portafogli dedicati Viene infatti rilassata la condizioni di perfect matching tra i flussi per una condizione meno stringente Portafogli dedicati Poiché spesso il perfect matching non è realizzabile, si costruisce un portafoglio dedicato in cui ciascun flusso in uscita è inferiore o uguale a ciascun flusso in entrata generato in quel momento o immediatamente prima min xi q x s iU i i 0 F x s ( 1 ) L s i i 1 i T xi 0 i U , s 0 T Fi C t[ 1, ] t it (1 ) Orizzonte temporale Fi C t[ 1, ] t it (1 ) Dobbiamo definire un insieme T che combini le scadenze delle passività con i flussi di cassa delle obbligazioni Dobbiamo calcolare le distanze in giorni o in anni tra le date dell’intero orizzonte temporale Esercizio 4 1. Definire l’insieme T con tutte le scadenze: T Ts Tl 2. Modificare gli insiemi delle passività (Tl) in modo che sia un sottoinsieme dell’insieme T Esercizio 5 1. Con l’aiuto di Excel creare il file ASCII maturities.txt contenente la tabella seguente: 23-06-1989 15-07-1989 15-08-1989 01-09-1989 . . . days 0 22 53 70 term 0 0.060273973 0.145205479 0.191780822 in cui le colonne “days” e “term” devono Esercizio 5 (continua) contenere, rispettivamente: i giorni trascorsi tra la prima passività e le successive, ad es. 1/9/1989 – 23/6/1989 = 70gg i giorni trascorsi tra la prima passività e le successive in anni, ad es. 1/9/1989 – 23/6/1989 / 365 = 0.192 1. Includere il file maturities.txt Esercizio 6 Calcolare i flussi delle attività reinvestiti al tasso tra due scadenze di passività [–1, ]: Fi C t[ 1, ] t it (1 ) Implementare il problema di ottimizzazione e risolvere il modello Duration matching per singole passività Come posso scegliere il mio portafoglio di investimento in modo tale che se i portafogli di attivo e passivo sono in equilibrio oggi posso essere sicuro che lo siano anche in futuro indipendentemente da ciò che accadrà ai tassi? Pi Cit (1 r ) t tT min xi q x iU i i Px i i PL k x kL iU iU i i xi 0 i U ki tCit (1 r ) t 1 tT Esercizio 7 Calcolare i prezzi teorici: Pi Cit (1 r ) t PL L (1 r ) T tT Calcolare le dollar durations: ki tCit (1 r ) tT t 1 k L L (1 r ) T 1 Esercizio 8 Implementare il problema di ottimizzazione e risolvere il modello Confrontare i risultati con il modello precedente Duration matching per passività multiple min Q x Tenendo conto della xi convessità Px i i PL k x kL Q x QL iU iU Qi t (t 1)Cit (1 r ) tT t 2 iU i i iU i i i i xi 0 i U Esercizio 9 Calcolare le duration convexity: Qi t (t 1)Cit (1 r ) t 2 tT QL ( 1) L (1 r ) 2 T Implementare il problema di ottimizzazione e risolvere il modello Commentare i risultati