• Non ci sono risultati.

LABORATORIO DI MATEMATICA FINANZIARIA Elisabetta Michetti. Mod VALUTAZIONE DI FLUSSI DI CASSA 1

N/A
N/A
Protected

Academic year: 2022

Condividi "LABORATORIO DI MATEMATICA FINANZIARIA Elisabetta Michetti. Mod VALUTAZIONE DI FLUSSI DI CASSA 1"

Copied!
53
0
0

Testo completo

(1)

LABORATORIO DI MATEMATICA FINANZIARIA

Elisabetta Michetti Mod

VALUTAZIONE DI FLUSSI DI CASSA

1

(2)

MATLAB-INTRO

MatLab= MATrix LABoratory

(ambiente per il calcolo scientifico e le simulazioni numeriche)

Desktop di MatLab:

Command Window: finestra dei comandi (vengono indicati i comandi da eseguire ed il simbolo >> indica il prompt dei comandi)

Command History: sequenza cronologica dei comandi eseguiti

Workspace: spazio di lavoro (memoria operativa che contiene l’insieme delle variabili-array in memoria)

Current Folder: elenco di tutti i file e le cartelle presenti

nella directory corrente

(3)

ES: MEMORIZZARE IL NUMERO e2

In tal caso bisogna conoscere la sintassi che MatLab usa per la funzione esponenziale Bisognerà eseguire il seguente comando:

Il comando >>doc elfun permette di ottenere una lista completa E’ possibile memorizzare un numero assegnandogli un nome

I COMANDI vengono digitati nel prompt di MatLab

L’ASSEGNAZIONE di un nome ad una variabile avviene attraverso il simbolo =

Memorizzare in MatLab un numero

Dopo questo comando la variabile è stata memorizzata nel Workspace NB. MatLab è case sensitive

OSS. Nella Command Window MatLab visualizza il risultato prodotto dal comando, per evitare la visualizzazione il comando può essere seguito da

;

(4)

Il prompt di Matlab può essere utilizzato come una calcolatrice scientifica, assegnando un nome alle variabili per ottenerne delle altre.

ES: sia dato i2=0.06 (tasso d’interesse semestrale) allora è possibile determinare il tasso annuo equivalente nel RIC o nel RIS. Prima si definisce la

variabile i2 poi si ottiene i impiegando la formula corretta. NB: i tassi vanno scritti sempre in termini decimali.

(5)

Nell’esecuzione di istruzioni, alcuni comandi risultano di particolare comodità:

>>clc cancella la command window

>>clear cancella il workspace

>> il comando  richiama l’ultimo comando eseguito

>>doc “argomento” visualizza tutte le informazioni relative all’ “argomento richiesto” interrogando il potente Help di MatLab

>>format long attiva il formato a 15 cifre decimali

>>format short riattiva il formato di default a 4 cifre decimali

Comandi iniziali

(6)

RENDITA PERIODICA A RATA COSTANTE (TEMPORANEA IMMEDIATA)

Sia R l’importo cosante di ciascuna rata, n il numero delle rate, i il tasso d’interesse PERIODALE impiegato (cioè riferito al periodo fra il pagamento di una rata ed il pagamento della rata successiva).

Sia inoltre RI l’importo dell’eventuale rata integrativa corrisposta ALLA FINE DELLA

RENDITA (con l’ultima rata se posticipata, periodo successivo all’ultima rata se anticipata) e si consideri una variabile type che può assumere valore 0 (in caso di rendita posticipata) o 1 (in caso di rendita anticipata) .

ES…: Rendita mensile di 100 euro di durata 4 anni essendo il tasso d’interesse del 10%.

In tal caso R=100, n=12*4=48, ed avendo i=0.1 occorre determinare i12 (nel RIC se non diversamente specificato), con MatLab si ottiene i12= 0.008. Poiché non diversamente specificato la rendita non prevede una rata integrativa finale quindi RI=0 ed è posticipata quindi type=0.

(7)

pvfix(i, n, R, RI, type)

P R E S E N T VAL UE D I R E N D I T A A R AT A C O S T AN T E

Una volta individuate e salvate in MatLab le precedenti variabili è possibile calcolare il

VALORE ATTUALE DELLA RENDITA

(cioè il valore al tempo zero)

attraverso il comando pvfix avente la seguente sintassi

Il comando >> doc pvfix

(8)

…ES:

Dall’esempio precedente memorizziamo nel prompt le variabili prima definite, poi eseguiamo il comando:

NB: 7.9457e+03 significa 7.9457*10^3=7945.7 (per avere più cifre decimali è possibile settare il comando format long).

(9)

ES: Si consideri la seguente operazione finanziaria (o cash flow) CF={(10,10,10,10);(0,1,2,3)}

E sia assegnato il tasso di sconto annuo di valutazione del 7%. Si vuole calcolare il valore attuale (o REA).

La rendita è a rata costante annua. Il tasso d’interesse annuo è i=d/(1-d)=0.0753 (calcolato agevolmente con MatLab). La rendita ha 4 pagamenti, non ha rate integrative ed è anticipata per cui dovremo porre type=1.

In MatLab:

(10)

ES: Si consideri un BTP emesso oggi che paga cedole semestrali per 4 anni al tasso del 12%. Si vuole calcolare il valore attuale con MatLab.

Dal tasso di 0.12 annuo si passa al tasso cedolare i2=0.06 (nel RIS). Quindi ogni cedola è pari a 6 e alla fine è rimborsato un valore di 106=6+100. Si può considerare come una rendita di rata costante 6 e rata integrativa finale 100. Usiamo il tasso cedolare per calcolare il valore attuale poiché non diversamente specificato.

I dati sono memorizzati come segue nel workspace:

Poi si esegue il comando pvfix dopo aver settato il formato a più cifre decimali:

Il valore attuale è 100 poiché si è attualizzato usando il

tasso tasso cedolare

Se si impiega un più alto tasso, es i2=0.07, allora la quotazione del titolo sarà….

….. SOTTO LA PARI!

(11)

fvfix(i, n, R, RI, type)

F UT UR E VAL UE D I R E N D I TA A R AT A C O S T AN T E

In maniera analoga, definite le stesse precedenti variabili e nel caso in cui l’eventuale rata integrativa RI è versata al tempo zero, è possibile calcolare il

MONTANTE DELLA RENDITA

(è da intendersi alla fine della rendita cioè al momento dell’ultimo pagamento se posticipata, nel periodo successivo all’ultimo pagamento se anticipata)

attraverso il comando fvfix avente la seguente sintassi

Il comando >> doc fvfix

(12)

ES: Si versano oggi 300 euro e a seguire 100 euro al mese posticipati per 13 mesi ed è corrisposto un tasso d’interesse del 8%. Alla fine della rendita il capitale così

costituito può essere calcolato come segue:

NB:

1. I comandi visti possono essere combinati fra di loro per risolvere problemi più complessi

2. Avendo una operazione finanziaria semplice (cioè con una sola posta) è possibile calcolare il valore attuale o il montante considerandola come una rendita avente un solo pagamento

3. Se il tasso assegnato è un tasso di valutazione allora calcolare il valore attuale della rendita significa calcolarne il REA

(13)

ESERCIZI 1

1.1 Si consideri una rendita trimestrale di 300 euro di durata 6 anni dato il tasso d’interesse del 9%. Calcolare il REA ed il montante.

1.2 Sia dato il seguente flusso di cassa CF={(30,30,30,30,40);(0,0.5,1,1.5,2)} e sia dato il tasso di valutazione mensile del 1%. Calcolare il valore attuale del flusso.

1.3 Si versa oggi una somma di 500 euro e successivamente si compiono 7 versamenti annui di 220 euro. E’ assegnato un tasso di sconto del 3%. Calcolare il montante costituito alla fine della rendita.

1.4 Si consideri un BTP emesso oggi che paga cedole annue pari a 12 euro, di durata 6 anni e sia dato un tasso di valutazione del 7%. Calcolare il REA.

1.5 Si versano rate costanti anticipate annue per 15 anni di 150 euro ed è assegnato un tasso d’interesse semestrale del 3%. Calcolare il valore attuale ed il montante della rendita.

(14)

VETTORI

Le variabili-array in MatLab possono consistere in sequenze di caratteri alfanumerici, possono essere un numero, o una tabella di numeri o anche VETTORI.

Un VETTORE di n elementi è una ennupla ordinata di numeri reali

I suoi elementi possono essere disposti in riga separati da una virgola (vettore riga) o in colonna (vettore colonna) e racchiusi fra parentesi quadre o tonde

ES: x=[1, 3, -4, 11] è un vettore riga di 4 elementi 1

y= -1 è un vettore colonna di 3 elementi 0

z=[133] è un vettore riga (o colonna) di un elemento

(15)

Memorizzare in MatLab un vettore

VETTORE RIGA

ES: MEMORIZZARE IL VETTORE RIGA [10,-1,5]

VETTORE COLONNA

ES: MEMORIZZARE IL VETTORE COLONNA DI ELEMENTI 3, 7, 9

per memorizzarlo basta elencare i suoi elementi separati da uno spazio o da una virgola e racchiusi fra parentesi quadre

per memorizzarlo basta elencare i suoi elementi separati da un punto e virgola e racchiusi fra parentesi quadre, oppure lo si può scrivere come vettore riga aggiungendo

alla fine l’apice (che trasforma un vettore riga in un vettore colonna e viceversa)

(16)

16

Lavorare con i vettori

Il numero degli elementi del vettore si chiama dimensione del vettore (i vettori A e B degli esempi precedenti hanno dimensione 3)

DI CONSEGUENZA:

è possibile ACCEDERE AD UNO O PIU’ ELEMENTI DI UN VETTORE proprio specificando l’indice. Esso va indicato tra parentesi tonde dopo il nome del vettore

OSS: ciascun elemento di un vettore è identificato da un indice che indica la posizione dell’elemento considerato. Nell’esempio precedente -1 è l’elemento di

indice 2 del vettore A mentre 9 è l’elemento di indice 3 del vettore B.

Per conoscere la dimensione di un vettore si usa il comando length seguito dal nome del vettore (fra parentesi tonde)

ES: INDIVIDUARE LA DIMENSIONE DI A

(17)

Lavorare con i vettori

(2) CREARE UN VETTORE RIGA DI DIMENSIONE 2 AVENTE COME ELEMENTI IL PRIMO E TERZO ELEMENTO DI B

OSS: tramite l’indice è possibile puntare ad un elemento di un vettore quindi anche assegnargli un nuovo valore e di conseguenza

modificare il valore di un elemento del vettore (3) ASSEGNARE AL PRIMO ELEMENTO DI A IL VALORE 7

(1) MEMORIZZARE IL SECONDO ELEMENTO DEL VETTORE B

Ora la variabile b assume valore 7

(18)

18

Lavorare con i vettori

(1)Può essere necessario AGGIUNGERE UN ELEMENTO AD UN VETTORE in tal caso è sufficiente memorizzare un nuovo vettore che ha come primi elementi lo stesso

vettore iniziale e come ultimo elemento il nuovo elemento

(2) In maniera analoga può essere necessario ELIMINARE UN ELEMENTO DA UN VETTORE

in tal caso basta sostituire quell’elemento con un vettore vuoto []

ES.

Scrivere il vettore riga M di elementi 3,-3,7,-7,0 quindi aggiungere in coda l’elemento 10

ES.

Eliminare il terzo elemento del vettore MM

(19)

ESERCIZIO PROPOSTO A

- MEMORIZZARE IN MatLab I SEGUENTI VETTORI:

- Che dimensione hanno?

- CREARE DUE NUOVI VETTORI: uno colonna (xx) avente come elementi gli elementi di x di indice pari e l’altro riga (zz) avente come elementi i primi due elementi di z.

- Sostituire il primo elemento di xx con -20 e sostituire il secondo elemento di zz con il valore 31

- Trasformare xx in vettore riga e zz in vettore colonna

 2, 3, ,10 ,  0 , 3 / 5 7

1 4

x e y z

 

   

               

(20)

ESERCIZIO PROPOSTO B

MEMORIZZARE IN MatLab IL VETTORE COLONNA P AVENTE I SEGUENTI ELEMENTI:

10,-1,3,0,7,6

1. Creare il vettore Q dal vettore P aggiungendo l’elemento 0 in testa e l’elemento 1 in coda.

2. Creare il vettore R dal vettore P eliminando il secondo, terzo e quarto elemento.

3. Creare il vettore S che ha come primi elementi gli elementi del vettore Q e come successivi elementi quelli del vettore R.

4. Che dimensione ha il vettore S?

5. Assegnare al quinto elemento di S il valore 7. Che vettore ottenete?

6. Creare il vettore T formato dal primo e dal nono elemento di S

(21)

L’OPERATORE “:”

A volte, dato un vettore, può essere necessario ESTRARRE I PRIMI k ELEMENTI DEL VETTORE

stesso; a tal fine di grande utilità è l’operatore : che viene letto da MatLab come

“da … a …”

NB l’operatore : può anche essere usato in maniera più flessibile, ad esempio per estrarre gli elementi dall’indice i all’indice j del vettore

ES. Memorizzare il vettore colonna X di elementi 2,4,6,8,10 quindi creare il vettore composto dai primi 3 elementi

ES. Dato il vettore X, creare un vettore formato dagli elementi di X che vanno dal secondo al quarto

(22)

22

Se volessimo estrarre da un vettore un nuovo vettore composto dagli elementi di indice dispari?

Dovremmo indicare a MatLab di prelevare gli elementi con indice che vanno da 1 ad n (ultimo indice) di passo 2

NB Utilizzando ancora l’operatore : è possibile richiedere di partire da un certo indice per arrivare ad un altro indice impiegando un certo passo

La scrittura i:p:j viene letta da MatLab come “da i a j con passo p” questo comando può essere utilizzato in diverse occasioni anche per definire vettori

equispaziati (di elementi ordinati equidistanti tra di loro)

L’OPERATORE “:”

(23)

ES. MEMORIZZARE IL VETTORE RIGA Y DI ELEMENTI CHE VANNO DA 0 A 40 DI PASSO 4

ES. DATO IL VETTORE Y, CREARE UN VETTORE FORMATO DAGLI ELEMENTI DI Y CHE VANNO DAL SECONDO AL SESTO

OSS.

Nell’ultimo esempio non è stato specificato un passo che di conseguenza è, per default, pari ad 1

L’OPERATORE “:”

(24)

ESERCIZIO PROPOSTO C

Memorizzare in MatLab il vettore colonna P di elementi che vanno da -10 a 60 di passo 2 ed il vettore riga Q di 11 elementi che vanno da -1 a -6 di opportuno passo

1. Quanti elementi ha il vettore P?

NB: fissando gli elementi iniziale e finale ed il passo si ottiene di conseguenza la dimensione del vettore

2. Quale passo hai usato per creare il vettore Q?

3. Dal vettore P si crei il vettore P1 formato dagli elementi di P di indice pari.

4. Trasformare il vettore riga Q nel vettore colonna Q1 quindi sopprimere da quest’ultimo gli elementi dal secondo al quinto

(25)

OPERATORE linspace

A volte non è noto il passo ma è noto il numero di elementi che deve avere il vettore da i a j.

Ad esempio si desidera un vettore composto da n elementi equispaziati che vanno da i a j; in tal caso si usa il comando linspace(i,j,n)

ES. Memorizzare il vettore riga V composto da 20 elementi equispaziati che vanno da -2 a 6

ES. Sopprimere gli elementi di V di indice pari

(26)

ESERCIZIO PROPOSTO D

Memorizzare in MatLab il vettore riga A composto da 60 elementi che vanno da 3 a 20 ed il vettore colonna B composto da 10 elementi che vanno da 2 a -5

1. Che dimensione ha il vettore A?

2. Trasformare il vettore B in vettore riga e creare il vettore C avente come primi elementi gli elementi di A e come elementi successivi quelli di B

3. Creare il vettore D estraendo da C gli elementi che vanno dal sesto al diciottesimo di passo 3

4. Quanti elementi ha il vettore D?

(27)

CASH FLOW PERIODICO CON POSTE VARIABILI

In tal caso consideriamo un flusso PERIODICO di pagamenti di importo variabile.

Per calcolarne il valore attuale o il montante non si dispone di una formula sintetica: in matematica finanziaria occorre calcolare la somma dei valori attuali (o dei montanti) di ogni singola posta e se il flusso di cassa prevede molti pagamenti il calcolo può essere laborioso.

In MatLab esiste un comando per calcolare:

- Il valore di un flusso di cassa PERIODICOcon importi variabili (quindi anche di segno non costante) nel momento in cui avviene il primo pagamento: PRESENT VALUE - Il valore di un flusso di cassa PERIODICOcon importi variabili (quindi anche di segno

non costante) nel momento in cui avviene l’ultimo pagamento: FUTURE VALUE - Il tasso di valutazione da impiegare è quello periodale(riferito ad un periodo)

(28)

pvvar(cf,i) fvvar(cf,i)

P R E S E N T V A L U E E F U T U R E V A L U E D I F L U S S O D I C A S S A P E R I O D I C O A I M P O R T I V A R I A B I L I

Si consideri un flusso di cassa periodico con importi variabili e sia i il tasso periodale di valutazione, allora occorre definire le seguenti variabili:

cf è il vettore riga degli importi periodici i è il tasso d’interesse periodale

il valore del flusso nel momento in cui avviene il primo pagamento o nel momento in cui avviene l’ultimo pagamento

può calcolarsi attraverso il comandi pvvar e fvvar aventi la seguente sintassi

Il comando >> doc pvvar o >> doc fvvar

intrerroga l’help di MatLab sulla sintassi del comando

(29)

ES: Si consideri il seguente flusso di cassa cf={(-10,20,10,30,-25);(0,0.5,1,1.5,2)} e sia assegnato un taso di valutazione del 10%. Si vuole calcolare il REA.

Dal vettore delle scadenze si osserva che il flusso ha periodicità semestrale quindi nel RIC calcoliamo il tasso semestrale equivalente.

Osserviamo che il REA è il valore del cash flow al tempo zero: poiché la prima posta è pagata al tempo zero allora il comando pvvar restituisce esattamente il REA cercato.

In MatLab occorre definire il vettore dei flussi quindi eseguire il comando.

(30)

ES: Un deposito è movimentato dai seguenti flussi: versamento iniziale di 100 euro, prelievo dopo un anno di 30 euro, prelievo dopo 2 anni di 50 euro, versamento dopo 4 anni di 20 euro. Il tasso applicato è del 4%. Si vuole calcolare il valore finale

costituito fra 4 anni.

Si osservi che lo scadenzario è il seguente: (0,1,2,4) quindi il flusso NON E’

PERIODICO. Tuttavia è possibile ricondursi ad un flusso periodico semplicemente ipotizzando una posta di importo nullo al tempo 3. E quindi impiegare il comando fvvar come segue.

Volendo ottenere il valore dopo 5 anni è possibile aggiungere uno zero in coda al vettore dei flussi e utilizzare lo stesso comando prima visto:

(31)

ES…: E’ dato un tasso di sconto del 9%. Si consideri il seguente piano di

accumulazione del capitale: si versano posticipatamente rate annue di 200 euro per 25 anni, per i successivi 36 anni i versamenti sono dimezzati. Si vuole calcolare il valore attuale e il capitale finale così costituito.

Il tasso d’interesse da applicare si ottiene come segue:

Per memorizzare in MatLab il cash flow si osserva quanto segue: (1) poiché il primo pagamento ha luogo al tempo 1, al fine di ottenere col comando pvvar il valore al tempo zero, si pone una posta nulla iniziale; (2) poiché il vettore ha molti elementi si cerca un comando veloce per scriverlo senza dover digitare molte volte il numero, ad esempio con linspace possiamo creare un vettore di 25 elementi che vanno da 200 a 200 (quindi di passo zero) e similmente per i pagamenti successivi…

(32)

…ES…:

I vettori sopra definiti vanno poi opportunamente concatenati e il vettore finale ha il primo elemento pari a zero (oggi) + 25 elementi a seguire (flusso del primo tipo) + 36 elementi a seguire (flusso del secondo tipo). In tutto gli elementi sono 62.

(33)

…ES: Con i dati in memoria è ora possibile calcolare il valore attuale e il montante del flusso:

Si ipotizzi infine che a causa di una minore disponibilità finanziaria si è potuto versare solo 10 euro nelle ultime 10 poste. Quale sarebbe allora il montante? Si osservi che è sufficiente ridefinire gli ultimi dieci elementi del vettore cf e poi eseguire l’opportuno comando.

(34)

ESERCIZI 2

34

2.1 Si considerino i due seguenti flussi di cassa: cf1={(20,-13,40);(1,2,3)} e cf2={(-10,50,- 30,38);(0,0.5,1,1.5)}. Scegliere quello preferito impiegando il criterio del REA essendo dato un tasso di valutazione del 9%.

2.2 Si considerino i seguenti flussi: versamento di 100 euro fra 6 mesi, prelievo di 80 euro fra un anno, versamento di 30 euro fra 2 anni; è dato un tasso del 5%. Si calcoli il REA e il valore del flusso fra 5 semestri.

2.3 E’ dato un tasso d’interesse semestrale del 5%. Si consideri il seguente piano di accumulazione del capitale: si versano anticipatamente rate annue di 100 euro per 15 semestri, per i successivi 13 semestri si preleva sempre anticipatamente 50 euro. Si vuole calcolare il valore attuale e il capitale finale così costituito. Si ipotizzi che a causa di una donazione i versamenti dei primi 3 importi siano raddoppiati. Quale sarebbe allora il montante?

2.4 E’ dato un tasso d’interesse annuo del 8%. Si considerino i seguenti flussi di cassa: (a) rendita annua: primo pagamento oggi di 100 euro, e pagamenti che aumentano di 20

euro l’anno fino a 560 euro. (b) rendita semestrale, primo pagamento fra un semestre pari a 500 euro: i pagamenti in tutto sono 29 e decrescono di un importo costante, l’ultimo pagamento è di 210 euro. Calcolare present value e future value.

(35)

CASH FLOW NON PERIODICO CON POSTE VARIABILI: IL FORMATO DATA IN MATLAB

In tal caso consideriamo un flusso non necessariamente PERIODICO di pagamenti di importo variabile.

Se i flussi non sono periodici occorre specificate quali sono le date in cui avviene ciascun pagamento/riscossione

Osservazioni:

- Quando si hanno pagamenti da effettuare o investimenti in generale ciò di cui si dispone è la data esatta in cui occorre pagare o riscuotere

- Avendo la data esatta di ciascuna posta è possibile calcolare il valore attuale o il montante del flusso tenendo conto dell’anno solare e del numero effettivo di giorni che trascorre tra una data ed un’altra

(36)

Il formato data accettato da MatLab è di tipo stringa ed ha la seguente sintassi:

‘mm/gg/aaaa’

NB: per determinare il valore attuale o il montante bisogna impiegare il tasso d’interesse ANNUO

NB: il vettore delle scadenze ha la stessa dimensione del vettore dei flussi ma deve essere memorizzato come vettore colonna

NB: il valore attuale è il valore del flusso alla data del primo pagamento;

il montante è il valore del flusso alla data dell’ ultimo pagamento

ES…: Si accende un c/c il 18 febbraio del 2007 con un importo di 300 euro; il 9 marzo 2008 si versano 4000 euro e successivamente il 18 luglio 2008 si prelevano 850 euro. E’ assegnato un tasso d’interesse annuo del 7%.

Come in precedenza occorre definire il vettore riga delle poste e il tasso; ma in tal caso definiamo anche il vettore colonna delle date (formato stringa):

(37)

pvvar(cf,i,date) fvvar(cf,i,date)

P R E S E N T V A L U E E F U T U R E V A L U E D I F L U S S O D I C A S S A N O N P E R I O D I C O A I M P O R T I V A R I A B I L I

Si consideri un flusso di cassa non necessariamente periodico con importi variabili e sia i il tasso ANNUO di valutazione, allora occorre definire le seguenti variabili:

cf è il vettore riga degli importi periodici i è il tasso d’interesse annuo

date è il vettore colonna delle date associate a ciascuna posta

valore del flusso nel momento in cui avviene il primo pagamento o nel momento in cui avviene l’ultimo pagamento

Il comando >> doc pvvar o >> doc fvvar

(38)

…ES:

Il valore del flusso precedentemente definito alla data del 18 febbraio 2007 si ottiene mediante il seguente comando:

Mentre il valore del flusso finale (alla data del 18 luglio 2008) si ottiene come segue:

(39)

ES:

Il 10 maggio 2012 si investono 1000 euro. L’investimento prevede la riscossione di tre rate da 380 nelle seguenti scadenze 23 giugno 2012, 8 ottobre 2012 e 15 gennaio 2013. Essendo dato un tasso di valutazione semestrale del 3% calcolare il REA alla data dell’investimento.

Calcolare inoltre il montante prodotto da tale flusso.

In MatLab definiamo i flussi il tasso (da convertire in tasso annuo) e le scadenze, poi si usano i comandi pvvar e fvvar.

(40)

ESERCIZI 3

3.1 Si considerino i due seguenti flussi di cassa: cf1={(25,-15,40);(6 gennaio 2011, 7

marzo2012, 8 settembre 2013)} e cf2={(-12,54,-30,38);(6 gennaio 2011,8 novembre 2011,7 aprile 2012, 8 luglio 2013)}. Scegliere quello preferito impiegando il criterio del REA essendo dato un tasso di valutazione mensile dello 0.5%.

3.2 Si consideri il seguente finanziamento: si riceveranno 1000 euro il 10 luglio 2020, da restituire mediante 4 versamenti da 280 alla fine del mese di agosto, settembre ottobre e novembre dello stesso anno; è dato un tasso di sconto del 5%. Si calcoli il valore del flusso nel momento in cui è concesso il finanziamento e nel momento il cui il debito è estinto.

3.3 E’ dato un tasso d’interesse semestrale del 4%. Si consideri il seguente piano di

accumulazione del capitale: si versano 50 euro il giorno 15 di ogni mese a partire dal mese di febbraio 2009 per 4 mesi poi si versano 90 euro all’inizio di ogni bimestre per 3 bimestri a partire da ottobre 2009. Quale sarà il capitale finale così accumulato?

3.4 E’ dato un tasso d’interesse del 3%. Si consideri il seguente cash flow: si versano rate il 25 di ogni mese a partire da maggio 2009: il primo versamento è di 80 euro poi la rata aumenta di 5 euro ogni mese e l’ultima rata è di 105 euro. Il mese successivo all’ultimo versamento di prelevano 70 euro. Quale sarà il capitale finale così accumulato? E il present value?

(41)

TIR (TASSO INTERNO DI RENDIMENTO)

Si consideri un progetto finanziario rappresentato mediante vettori FLUSSI-SCADENZE con poste di segno qualsiasi

Si vuole determinare il tasso associato ad esso quale tasso oggettivo che rende tale operazione equa, se esiste unico, il TASSO INTERNO DI RENDIMENTO o Internal Rate of Return

SI NOTI CHE:

- Il TIR fa sì che il valore attuale delle entrate eguagli il valore attuale delle uscite;

- Mediante l’utilizzo del TIR è possibile confrontare la redditività di operazioni di investimento ed il costo di operazioni di finanziamento;

- Il TIR è di norma calcolato su base annua.

(42)

Si ricorda che data una OF del tipo

Questa ammette TIR se e solo se il seguente polinomio

Ammette uno, ed un unico, zero

SI NOTI CHE: Di norma l’equazione Pn(v)=0 non ammette soluzione analitica se n>2. In tal caso diventa NECESSARIO impiegare un metodo numerico.

MatLab, implementando un algoritmo iterativo, è in grado di determinare il TIR di una OF con un ottimo grado di approssimazione.

(43)

irr(cf)

T I R P E R I O D A L E D I U N F L U S S O D I C A S S A P E R I O D I C O A I M P O R T I V A R I A B I L I

Si consideri un flusso di cassa PERIODICO con importi variabili, allora occorre definire la seguente variabile:

cf è il vettore riga degli importi periodici

Il TIR associato ad un periodo può essere ottenuto mediante il seguente comando

e da esso può poi ricavarsi il TIR annuo

(44)

EX Si determini il tasso interno di rendimento associato al seguente investimento:

investimento di 100000 che produce le seguenti entrate anno 1:10000, anno 2: 20000, anno 3:30000, anno 4: 40000, anno 5 : 50000.

Essendo tale flusso periodico è possibile impiegare il comando irr ed essendo la periodicità annua il tasso così ottenuto è il TIR annuo (quindi quello cercato).

Si definisce il vettore dei flussi:

>> CF=[-100000 10000 20000 30000 40000 50000]

CF =

-100000 10000 20000 30000 40000 50000 Con il comando irr si ottiene il tasso cercato

>> i=irr(CF) i =

0.1201

(45)

EX Si consideri un BTP quotato 95 che produce cedole semestrali di 8 euro ed è rimborsato fra 3 anni. Si calcoli il TIR e si stabilisca se tale investimento è preferibile rispetto a quello riportato nell’esempio precedente.

Essendo tale flusso periodico è possibile impiegare il comando irr ed essendo la

periodicità semestrale il tasso così ottenuto è il TIR semestrale (quindi va convertito in annuo per essere confrontabile con quello dell’esempio precedente).

Si definisce il vettore dei flussi (per velocizzare usiamo linspace):

>> cf=[-95 linspace(8,8,5) 108]

cf =

-95 8 8 8 8 8 108

>> i2=irr(cf) i2 =

0.0912

>> i=(1+i2)^2-1 i =

0.1907

Poichè il TIR annuo è 19.07% tale progetto di investimento è preferibile rispetto al precedente sulla base del criterio del TIR

(46)

EX Si consideri il seguente flusso di cassa {(-30,10,25);(1,2,2.5)} NON PERIODICO, sebbene esso si possa ricondurre ad un flusso periodico inserendo un opportuno numero di importi nulli, occorre impiegare un comando più generale in cui oltre gli importi venga definito anche lo scadenzario.

Come visto in precedenza lo scadenzario deve essere definito come VETTORE COLONNA ed inoltre MatLab richiede che siano specificate le date secondo il formato data visto in precedenza.

NB: nell’esempio sopra non sono specificate le date esatte: questo problema può essere in parte aggirato stabilendo una data iniziale FITTIZIA e di conseguenza le successive. Occorre ricordare che il risultato che si ottiene può essere lievemente diverso rispetto a quello cercato in virtù del fatto che sarà impiegato l’anno solare.

Nel caso dell’esempio le date (1,2,2.5) possono essere definite come segue:

D=[’01/01/2000’;’01/01/2001’;’07/01/2001’]

(47)

xirr(cf,D)

T I R A N N U O D I U N F L U S S O D I C A S S A N O N P E R I O D I C O A I M P O R T I V A R I A B I L I

Si consideri un flusso di cassa non PERIODICO con importi variabili, allora occorre definire le seguenti variabili:

cf è il vettore riga degli importi periodici

D è il vettore colonna delle date associate a ciascun flusso

Il TIR ANNUO calcolato in base all’effettivo numero di giorni

può essere ottenuto mediante il seguente comando

(48)

EX: Si determini il tasso interno di rendimento associato al seguente flusso ove i tempi rappresentano i mesi: OF={(-30,-20,28,32);(0,2,2.5,3)}

Si definisce il vettore dei flussi

>> cf=[-30 -20 28 32]

cf =

-30 -20 28 32

Si definisce il vettore delle scadenze: si sceglie come prima data 1 gennaio 2000 (fittizia)

>> cfd=['01/01/2000'; '03/01/2000'; '03/15/2000'; '04/01/2000']

cfd =

01/01/2000 03/01/2000 03/15/2000 04/01/2000

Si usa il comando xirr per ottenere il TIR ANNUO

>> xirr(cf,cfd) ans =

2.0271

Quindi i*=202.71%

(49)

APPLICAZIONE1 BTP (cenno):

Dal sito Borsa italiana è possibile visionare le quotazioni dei BTP:

http://www.borsaitaliana.it/borsa/obbligazioni/mot/btp/lista.html Selezionare Obbligazioni -> BTP -> ISIN e relativa descrizione

Dove sono riportate, alla data attuale diverse informazioni: il prezzo di

ufficiale (che è la quotazione cioè il costo sostenuto in caso di investimento

(50)

APPLICAZIONE1 (cenno): Per comodità scegliamo un BPT con una data di scadenza non troppo lontana nel tempo ad esempio IT0003644769 che è quotato 111.63 (sopra la pari) ed ha la seguente scheda tecnica. Le

cedole di 2.25 euro sono pagate il primo febbraio e il primo agosto di ogni anno. Cerchiamo il TIR associato se detenuto fino alla scadenza

(51)

APPLICAZIONE 1(cenno): Poiché la scadenza è il 1 febbraio 2020 il flusso di cassa sarà dato da:

Uscita di 111.63 oggi 23 marzo 2017

Entrate di 2.25 il 1 agosto 2017, 1 febbraio 2018, 1 agosto 2018, 1 febbraio 2019, 1 agosto 2019

Entrata di 102.25 il 1 febbraio 2020.

Definendo il vettore dei flussi e quello delle scadenze è possibile ricavare il TIR annuo associato (<(1+0.0225)^2-1= 0.0455 poiché quotato sotto la pari)

>> cf=[-111.63 linspace(2.25,2.25,5) 102.25];

d=['03/23/2017';'08/01/2017';'02/01/2018';'08/01/2018';'02/01/2019';'08/01/2 019';'02/01/2020'];

xirr(cf,d) ans =

0.0061

Quindi il TIR annuo è pari a 0.61%

(52)

APPLICAZIONE2 MUTUI

Si ricorda che il TAEG associato ad una operazione di finanziamento è il TIR nel caso in cui si considerino tutti i costi (anche quelli accessori) mentre il TAN non considera i costi accessori.

Dalle schede pubblicitarie o da contratti finanziari su finanziamenti offerti è possibile desumere il vettore dei flussi e delle scadenze e calcolare tali tassi.

(53)

ESERCIZI 4

4.1. Si chiedono in prestito 1000 euro oggi e vengono proposte le due seguenti

modalità di rimborso (a) versamento di 510 euro fra un anno e di 520 euro fra 2 anni, (b) pagamento di 102 euro alla fine di ogni mese per 10 mesi pagando subito le spese di istruttoria di 8 euro. Scegliere fra le due possibilità sulla base del criterio del TIR 4.2. Si considerino i due seguenti investimenti: (a) si investono 5000 euro oggi e si ricevono 1015 euro alla fine di ogni anno per 5 anni; (a) si investono 5000 euro oggi e si ricevono 506 euro alla fine di ogni semestre per 5 anni. Si calcoli il TIR associato e si valuti quale investimento è più conveniente sulla base del criterio del TIR.

4.3. Calcolare il TIR associato ad un BTP quotato 101 che paga cedole semestrali di 5 euro posticipate e che scade fra 5 semestri.

4.4. Determinare il TIR associato ai seguenti progetti e stabilire se è possibile

Riferimenti

Documenti correlati

La fusione tra tratti comici ed eventi storici viene dunque ribadita, giacché il ritorno del re dal Galles e l'apoplessia da cui è stato colpito sono elementi

Tale formula si ottiene suddividendo [a, b] in N subinter- valli aventi la stessa ampiezza, applicando in ognuno di loro la regola dei trapezi%. La funzione trapezi composta

Affinch`e il numero di valutazioni sia uguale, utilizziamo N = 10 intervalli per la formula dei trapezi composta e N = 5 intervalli per Cavalieri-Simpson composta, cos`ı che

Chi deve registrare il voto deve prenotarsi al primo appello di gennaio, iscrivendosi on-line all’esame, e specificando in nota “registrazione voto

[r]

Le linee di livello della funzione costo sono quelle curve (in genere delle rette) che rappresentano le possibili combinazioni dei due fattori (ad es. capitale e lavoro) che.

Dopo aver definito la funzione mediante definizione anonima il comando ezcontour(z,[x_min x_max],[y_min y_max]).. (o ezcontourf(z,[x_min x_max],[y_min y_max])) ne traccia le curve

Allora è possibile l’elevamento a potenza puntuale X.^k ed il vettore che si ottiene è il vettore riga (o colonna) Z di dimensione n avente ciascun elemento pari all’elemento di X