Cálculo TIR y VAN en for
Publicado por Eugenio (3 intervenciones) el 17/03/2019 16:32:55
Hola,
necesito calcular TIR y VAN de varios Cash Flow (1x23) que varían entre ellos solamente en la variable Ingresos (45947x1).
Básicamente quiero que para cada valor de Ingresos genere un array de (1x23) cuyos valores sólo varían desde n+1 hasta el final del array según la función CF=(n+1:end)=Ing-OPEX.
Y luego para cada array calcule el TIR y el VAN, obteniendo para cada uno 45947x1.
He probado las siguientes líneas,
Pero me sale este error:
In an assignment A(:) = B, the number of elements in A and B must be the same.
necesito calcular TIR y VAN de varios Cash Flow (1x23) que varían entre ellos solamente en la variable Ingresos (45947x1).
Básicamente quiero que para cada valor de Ingresos genere un array de (1x23) cuyos valores sólo varían desde n+1 hasta el final del array según la función CF=(n+1:end)=Ing-OPEX.
Y luego para cada array calcule el TIR y el VAN, obteniendo para cada uno 45947x1.
He probado las siguientes líneas,
Pero me sale este error:
In an assignment A(:) = B, the number of elements in A and B must be the same.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Error in definitivo (line 96)
CF(n+1:end)=i-OPEX;
%CÁLCULO DEL CASHFLOW
for i=Ing
OPEX=1048429;
CF=zeros(1,no+n);
CF=(n+1:end)=i-OPEX;
CashFlowDates = ['01/01/2020'
'01/01/2021'
'01/01/2022'
'01/01/2023'
'01/01/2024'
'01/01/2025'
'01/01/2026'
'01/01/2027'
'01/01/2028'
'01/01/2029'
'01/01/2030'
'01/01/2031'
'01/01/2032'
'01/01/2033'
'01/01/2034'
'01/01/2035'
'01/01/2036'
'01/01/2037'
'01/01/2038'
'01/01/2039'
'01/01/2040'
'01/01/2041'
'01/01/2042'];
TIR=xirr(CF,CashFlowDates);
VAN=pvvar(CF,0.10);
end
Valora esta pregunta


0