library(ggplot2)
library(numDeriv)

Ejercicio 8 Necesitas solicitar un préstamo de $250,000.

Mercado Preso te ofrece esa cantidad a cambio de pagarla al final de 5 años y aportar el interés del 9.5% efectiva al final de cada año.

Mientras, Oro Card te ofrece acumular el monto necesario para pagar tu deuda a una tasa del 5% efectiva.

Por otro lado, MU te ofrece prestarte el mismo monto al mismo plazo con ambos pagos anuales determinados por un esquema de amortización. ¿Cuál es la tasa máxima sobre la cual aceptarías tomar el préstamo con MU?

Tenemos los siguientes datos: Mercado Preso: Pagar 9.5% al final de cada año, y pagar al final de 5 años. \[ i = 9.5\% \text{ y } n = 5. \]

monto_interes <- 250000*0.095
print(monto_interes)
## [1] 23750

\[ \text{El monto de aportaciones al interés será de: } $250000 \cdot 0.095 = $23,750 \] Mientras tanto, Oro Card nos va a acumular el monto de $250,000 al 5% al final de 5 años. Necesitamos saber el valor de cada pago al monto.

Tenemos una anualidad vencida de 5 periodos al 5%. Calculamos el monto de la anualidad al tiempo 5 (valor futuro). \[ {{s_{n}}} = k \cdot\frac{(1+i)^n-1}{i} \text{. Sustituyendo, tenemos: } 250,000 = k \cdot \frac{(1.05)^5-1}{0.05} \]

monto_principal <-  250000/((((1.05)^5) - 1) / 0.05)
print(monto_principal)
## [1] 45243.7

\[ \text{. Lo cual, despejando k, tenemos } k = \frac{250,000}{\frac{(1.05)^5-1}{0.05}} \approx $45,243.70 \]

monto_fond <- monto_interes + monto_principal
cat("Tomando el esquema de Mercado Preso y Oro Card, tenemos que las aportaciones serían de", monto_interes, " + ", monto_principal, " = ", monto_fond)
## Tomando el esquema de Mercado Preso y Oro Card, tenemos que las aportaciones serían de 23750  +  45243.7  =  68993.7

Esta será la tabla del fondo de este esquema:

knitr::include_graphics("C:/Users/artyn/OneDrive/Escritorio/ejer_tarea/imagenes/FONDO_AMORTIZACION.png")

Ahora, veamos el esquema que propone MU: Se trata de un esquema de amortización, en la que se tiene un saldo B_t de $250,000. Queremos ver la tasa máxima a la que aceptaríamos este esquema.

Tenemos que
\[ 250000 = K \, a_n \]

Proponiendo \(n = 5\) y \(K = 68{,}993.70\), tenemos:

\[ 250000 = 68{,}993.70 \, a_5 \;\Rightarrow\; \frac{250000}{68{,}993.70} \]

\[ \text{Además, tenemos que } {{a_{5}}} = \frac{1-(1+i')^{-5}}{i'} \text{, donde i' es nuestra nueva tasa.} \] \[ \text{Así, tenemos la ecuación } \frac{1-(1+i')^{-n}}{i'}= \frac{250,000}{68,993.70} \approx 3.62 \Rightarrow \frac{1-(1+i')^{-n}}{i'} - 3.62 = 0 \] Definimos la función para R:

funcion_tasa <- function(i){
  y = (1 - (1+i)^(-5)) / i - 250000/monto_fond 
  return(y)
}

Aplicaremos el método de Newton-Raphson a la ecuación:

#Integración del algoritmo iterativo
newton_raphson <- function(f, x0, tol = 1e-8,n = 1000) {
  k <- numeric(n)
  
  for (i in 1:n) {
    dx <- genD(func = f, x = x0)$D[1]
    x1 <- x0 - (f(x0) / dx)
    k[i] <- x1
    
    if (abs(x1-x0) < tol) {
      root_approx <- x1
      res <- list('Raíz Aproximada' = root_approx, 'Iteraciones' = k[1:i])
      return(res)
    }
    x0 <- x1
  }
  print("Se alcanzó el número máximo de iteraciones")
}

resultado <- newton_raphson(funcion_tasa, x0 = 0.01)
tasa_max <- resultado[['Raíz Aproximada']]
cat("Raíz aproximada (tasa mensual): ", tasa_max)
## Raíz aproximada (tasa mensual):  0.1179099

Así, la tasa máxima es de 11.79% Aproximadamente. Esta será la tabla de amortización de este esquema

knitr::include_graphics("C:/Users/artyn/OneDrive/Escritorio/ejer_tarea/imagenes/TABLA_AMORTIZACION.png")