1 votos

Anualidad creciente donde el flujo de efectivo aumenta cada segundo año

Me gustaría ayuda con una fórmula para calcular el Valor Futuro dado lo siguiente:

Una cantidad se invierte al FINAL de cada año, comenzando con una cantidad de PMT al final de este año, a una tasa de interés del i% por año, capitalizada anualmente, el monto de inversión se duplica cada segundo año (de forma acumulativa).

Me resulta difícil entender la última parte, "el monto de inversión se duplica cada segundo año", ya que la fórmula del Valor Futuro de la anualidad creciente está diseñada para inversiones que crecen por año y no por segundo año, ¿cómo puedo proceder?

0 votos

Esto sería más fácil de responder si incluyeras más de tu trabajo. Por ejemplo, ¿has trabajado en la fórmula que usarías si se duplicara cada año? ¿Has trabajado en cómo cambiaría si la tasa de interés fuera i% por semestre compuesto cada semestre? Tal como está, primero tendría que buscar o trabajar en la fórmula y luego descubrir cómo modificarla. Soy perezoso. Sería mucho más probable que intentara ayudar si pudiera simplemente extender o criticar tu trabajo.

0 votos

La inversión crece cada año, eso es lo que significa "interés compuesto anualmente". La otra información te dice que en dos años la contribución debe duplicarse (bastante irrealista, eso requiere un crecimiento del 41% por año).

0 votos

¿Se refiere "cantidad de inversión" al principal invertido? Si están invirtiendo al final de "cada año", el principal, de hecho, se duplica en el segundo año, pero asumir un doble aumento cada dos años en perpetuidad sería irrealista.

1voto

Sergey Osypchuk Puntos 2225

Aquí está una fórmula para el saldo al principio del año n

balance = ((1 + i)^n (3 + i) pago + (1 + i) (-2^Piso[(1 + n)/2] - 
            2^Piso[n/2] (1 + i)) pago)/(-1 + i + 3 i^2 + i^3)

La función Piso está disponible en Excel. Esta es una implementación en Excel.

enter image description here

Una versión sin uso de Piso es

balance = ((1 + i)^n (3 + i) pago + 2^(1/4 (-1)^n (-1 + (-1)^n (-1 + 2 n))) (1 + i) 
        (-2^(1/2 (-1)^(2 n)) - 2^((-1)^n/2) (1 + i)) pago)/(-1 + i + 3 i^2 + i^3)

Derivación de fórmula

He aquí la derivación. Con interés i al 10% y pago inicial pmt.

i   = 0.1
pmt = 100

El saldo al principio del año 1 es 0. Al final del año 1 se hace un pago, por lo que el saldo al principio del año 2 es pmt. El siguiente pago (el segundo) es el doble, etc.

p1 = 0
p2 = p1 (1 + i) + pago
p3 = p2 (1 + i) + 2*pago
p4 = p3 (1 + i) + 2*pago
p5 = p4 (1 + i) + 2^2*pago
p6 = p5 (1 + i) + 2^2*pago
p7 = p6 (1 + i) + 2^3*pago
p8 = p7 (1 + i) + 2^3*pago
p9 = p8 (1 + i) + 2^4*pago = 5437.33
p10 = p9 (1 + i) + 2^4*pago = 7581.06

Otra forma de expresar p10 es

p[9 + 1] = p[9](1 + i) + 2^Piso[9/2]*pago

Entonces esto se puede resolver usando Mathematica

RSolve[{p[n + 1] == p[n] (1 + i) + 2^Piso[n/2]*pago, p[1] == 0}, p[n], n]

enter image description here

La fórmula calcula correctamente el saldo al principio del año especificado.

p[n] = ((1 + i)^n (3 + i) pago + (1 + i) (-2^Piso[(1 + n)/2] - 
         2^Piso[n/2] (1 + i)) pago)/(-1 + i + 3 i^2 + i^3)

p[9]  = 5437.33
p[10] = 7581.06

Las funciones de piso se pueden reemplazar por

Piso[(1 + n)/2] = 1/4 (-1)^n (-1 + (-1)^n + 2 (-1)^n n)

y Piso[n/2] = 1/4 (-1)^n (1 + (-1)^(1 + n) + 2 (-1)^n n)

dando

p[n] = ((1 + i)^n (3 + i) pago + 2^(1/4 (-1)^n (-1 + (-1)^n (-1 + 2 n))) (1 + i) 
        (-2^(1/2 (-1)^(2 n)) - 2^((-1)^n/2) (1 + i)) pago)/(-1 + i + 3 i^2 + i^3)

Por ejemplo, el saldo al principio del año 9

i   = 0.1
pago = 100
n   = 9

balance = ((1 + i)^n (3 + i) pago + 2^(1/4 (-1)^n (-1 + (-1)^n (-1 + 2 n))) (1 + i) 
        (-2^(1/2 (-1)^(2 n)) - 2^((-1)^n/2) (1 + i)) pago)/(-1 + i + 3 i^2 + i^3)
= 5437.33

Método alternativo

La misma solución también se puede encontrar como la forma cerrada de una suma.

enter image description here

La suma para el ejemplo se vería así

i   = 0.1
pago = 100
n   = 9

balance = 2^0 pago (1 + i)^(n - 1 - 1) +
          2^1 pago (1 + i)^(n - 2 - 1) + 2^1 pago (1 + i)^(n - 3 - 1) +
          2^2 pago (1 + i)^(n - 4 - 1) + 2^2 pago (1 + i)^(n - 5 - 1) +
          2^3 pago (1 + i)^(n - 6 - 1) + 2^3 pago (1 + i)^(n - 7 - 1) +
          2^4 pago (1 + i)^(n - 8 - 1)
= 5437.33

Cálculo básico de valor futuro

Lo anterior contrasta con el cálculo básico sin ningún doblaje así.

i   = 0.1
pago = 100
n   = 9

Cálculo iterativo

p1 = 0
p2 = p1 (1 + i) + pago
p3 = p2 (1 + i) + pago
p4 = p3 (1 + i) + pago
p5 = p4 (1 + i) + pago
p6 = p5 (1 + i) + pago
p7 = p6 (1 + i) + pago
p8 = p7 (1 + i) + pago
p9 = p8 (1 + i) + pago = 1143.59

Cálculo de suma

balance = pago (1 + i)^0 +
          pago (1 + i)^1 + pago (1 + i)^2 +
          pago (1 + i)^3 + pago (1 + i)^4 +
          pago (1 + i)^5 + pago (1 + i)^6 +
          pago (1 + i)^7
= 1143.59

Derivación de fórmula

enter image description here

balance = ((-1 + (1 + i)^(-1 + n)) pago)/i = 1143.59

0 votos

¡Brillante! ¡Eres un freakonomista! Gracias, esto fue de gran ayuda.

0voto

Aman Puntos 26

Si el objetivo es obtener una solución analítica, puedes calcular el valor futuro de las inversiones realizadas en años pares e impares por separado, y luego sumarlos. Cada uno puede aplicar la fórmula de valoración estándar en términos de intervalos de 2 años en lugar de intervalos de 1 año, ya que la unidad de tiempo es arbitraria. La cantidad de inversión aumenta un 100% cada intervalo, y la tasa de interés efectiva es (1 + 0.01i)^2 - 1. De igual manera, el tiempo se mediría en intervalos de 2 años.

0voto

Bracke Puntos 21

Se me ocurrió una versión de esto que me da la respuesta incorrecta, ¿alguien puede indicarme dónde estoy cometiendo un error?

def inversión(PMT, n, i):
    for x in range(1,n):
        if x==2:
            invertir_par=PMT*2**(x/2)
            FV_par= invertir_par*((1+i)-1)/i
        else: 
            invertir_impar=PMT*2**((x-1)/2)     
            FV_impar=invertir_impar*((1+i)-1)/i
        x+=1
        saldo_inversión=(FV_par+FV_impar)
        return round(saldo_inversión, 2)

Respuesta en código Mathematica

i = 0.1;
pmt = 100;
n = 9;

fvImpar = fvPar = 0;

Para[x = 1, x < n, x += 1,
  Si[Mod[x, 2] == 0,
   invertirPar = pmt*2^(x/2);
   fvPar += invertirPar*(1 + i)^(n - x - 1)
   ,
   invertirImpar = pmt*2^((x - 1)/2);
   fvImpar += invertirImpar*(1 + i)^(n - x - 1)
   ]
  ]

saldo = fvImpar + fvPar

5437.33

0 votos

Hola, no estás calculando correctamente los valores futuros compuestos. Necesitas algo así como FV_even= invest_even*(1 + i)^(n - x - 1). Por ejemplo, el primer pago en x = 1 necesita ser compuesto durante siete años para obtener el valor futuro al principio del año 9. También probar x==2 para verificar si el año es par solo funcionará una vez. Puedes usar un módulo 2 para comprobar si x es impar o par. He añadido una versión de tu programa en Mathematica para mostrarte cómo se puede hacer.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X