└── Modulo_0_Calculo_Financiero └── CalculoFinancieroPython.ipynb /Modulo_0_Calculo_Financiero/CalculoFinancieroPython.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "nbformat": 4, 3 | "nbformat_minor": 0, 4 | "metadata": { 5 | "colab": { 6 | "provenance": [], 7 | "toc_visible": true 8 | }, 9 | "kernelspec": { 10 | "name": "python3", 11 | "display_name": "Python 3" 12 | }, 13 | "language_info": { 14 | "name": "python" 15 | } 16 | }, 17 | "cells": [ 18 | { 19 | "cell_type": "markdown", 20 | "source": [ 21 | "# **Cálculo Financiero con Python**" 22 | ], 23 | "metadata": { 24 | "id": "Hkvn0xjfUg3f" 25 | } 26 | }, 27 | { 28 | "cell_type": "markdown", 29 | "source": [ 30 | "Autor: Sergio Diaz Paredes\n", 31 | "\n", 32 | "Contacto: [Linkedin](https://www.linkedin.com/in/sergio-diaz-paredes/)" 33 | ], 34 | "metadata": { 35 | "id": "Mr7udzQYVbLe" 36 | } 37 | }, 38 | { 39 | "cell_type": "code", 40 | "source": [ 41 | "pip install numpy_financial" 42 | ], 43 | "metadata": { 44 | "id": "DGd2rXmhvvgX" 45 | }, 46 | "execution_count": null, 47 | "outputs": [] 48 | }, 49 | { 50 | "cell_type": "code", 51 | "source": [ 52 | "import numpy_financial as npf\n", 53 | "import numpy as np" 54 | ], 55 | "metadata": { 56 | "id": "FV2tD7c3vsv3" 57 | }, 58 | "execution_count": 26, 59 | "outputs": [] 60 | }, 61 | { 62 | "cell_type": "markdown", 63 | "source": [ 64 | "# Interés compuesto" 65 | ], 66 | "metadata": { 67 | "id": "ewZ0AibE4Kk3" 68 | } 69 | }, 70 | { 71 | "cell_type": "markdown", 72 | "source": [ 73 | "El **interés compuesto** es un tipo de interés en el que los intereses generados en un período se suman al capital inicial, y en los períodos siguientes se calcula el interés sobre el nuevo saldo total (capital + intereses acumulados). La fórmula general para calcular el monto acumulado es:\n", 74 | "\n", 75 | "$$\n", 76 | "A = P \\times \\left(1 + \\frac{r}{n}\\right)^{n \\times t}\n", 77 | "$$\n", 78 | "\n", 79 | "Donde:\n", 80 | "- $A$ es el monto final.\n", 81 | "- $P$ es el capital inicial.\n", 82 | "- $r$ es la tasa de interés nominal anual.\n", 83 | "- $n$ es el número de períodos de capitalización por año.\n", 84 | "- $t$ es el número de años.\n", 85 | "\n", 86 | "Si el interés se capitaliza una vez por período, la fórmula se simplifica a:\n", 87 | "\n", 88 | "$$\n", 89 | "A = P \\times (1 + r)^t\n", 90 | "$$\n", 91 | "\n", 92 | "### Funciones en `numpy_financial`\n", 93 | "\n", 94 | "1. **`fv(rate, n, pmt, pv)`**: Calcula el **valor futuro** de una inversión con pagos periódicos, considerando el interés compuesto.\n", 95 | " - **`rate`**: Tasa de interés por período.\n", 96 | " - **`n`**: Número total de períodos.\n", 97 | " - **`pmt`**: Pago periódico.\n", 98 | " - **`pv`**: Valor presente o monto inicial.\n", 99 | "\n", 100 | "2. **`pv(rate, n, pmt, fv)`**: Calcula el **valor presente** de una inversión, dada la tasa de interés y los pagos futuros.\n", 101 | " - **`rate`**: Tasa de interés por período.\n", 102 | " - **`n`**: Número total de períodos.\n", 103 | " - **`pmt`**: Pago periódico.\n", 104 | " - **`fv`**: Valor futuro deseado.\n", 105 | "\n", 106 | "Ambas funciones se utilizan para calcular el impacto del interés compuesto en inversiones y préstamos, ya sea para encontrar el monto acumulado o la cantidad que se debe invertir hoy para alcanzar un objetivo futuro." 107 | ], 108 | "metadata": { 109 | "id": "IbX9J_wFaQYd" 110 | } 111 | }, 112 | { 113 | "cell_type": "markdown", 114 | "source": [ 115 | "## Pregunta 1" 116 | ], 117 | "metadata": { 118 | "id": "1gpuI8p6vo-H" 119 | } 120 | }, 121 | { 122 | "cell_type": "markdown", 123 | "source": [ 124 | "Calcule el monto de un capital inicial dé S/. 1 000 colocado\n", 125 | "durante 4 años a una tasa efectiva anual del 18%." 126 | ], 127 | "metadata": { 128 | "id": "jiC-MQPhvoJZ" 129 | } 130 | }, 131 | { 132 | "cell_type": "code", 133 | "execution_count": 27, 134 | "metadata": { 135 | "colab": { 136 | "base_uri": "https://localhost:8080/" 137 | }, 138 | "id": "9eDdqzgatqLC", 139 | "outputId": "4c987858-5461-472f-dd96-7c116a7894b4" 140 | }, 141 | "outputs": [ 142 | { 143 | "output_type": "stream", 144 | "name": "stdout", 145 | "text": [ 146 | "El monto acumulado después de 4 años es: S/. 1938.78\n" 147 | ] 148 | } 149 | ], 150 | "source": [ 151 | "rate = 0.18 # tasa efectiva anual\n", 152 | "nper = 4 # número de años\n", 153 | "pv = -1000 # valor presente (negativo porque es un desembolso inicial)\n", 154 | "\n", 155 | "# Calculamos el monto futuro usando numpy_financial\n", 156 | "FV = npf.fv(rate, nper, 0, pv)\n", 157 | "\n", 158 | "print(f\"El monto acumulado después de {nper} años es: S/. {FV:.2f}\")" 159 | ] 160 | }, 161 | { 162 | "cell_type": "markdown", 163 | "source": [ 164 | "## Pregunta 2" 165 | ], 166 | "metadata": { 167 | "id": "24Qz6aJXwgJM" 168 | } 169 | }, 170 | { 171 | "cell_type": "markdown", 172 | "source": [ 173 | "Calcule el monto de un depósito inicial de S/. 2 000 colocado durante 5 meses en un banco que paga una tasa efectiva mensual del 4%." 174 | ], 175 | "metadata": { 176 | "id": "IPyUxW0TwgJO" 177 | } 178 | }, 179 | { 180 | "cell_type": "code", 181 | "execution_count": 28, 182 | "metadata": { 183 | "colab": { 184 | "base_uri": "https://localhost:8080/" 185 | }, 186 | "outputId": "862cc845-bc26-43cf-a278-24075756c9ec", 187 | "id": "crqjff0XwgJP" 188 | }, 189 | "outputs": [ 190 | { 191 | "output_type": "stream", 192 | "name": "stdout", 193 | "text": [ 194 | "El monto acumulado después de 5 meses es: S/. 2433.31\n" 195 | ] 196 | } 197 | ], 198 | "source": [ 199 | "rate = 0.04 # tasa efectiva mensual\n", 200 | "nper = 5 # número de meses\n", 201 | "pv = -2000 # depósito inicial\n", 202 | "\n", 203 | "# Cálculo del monto futuro\n", 204 | "FV = npf.fv(rate, nper, 0, pv)\n", 205 | "\n", 206 | "print(f\"El monto acumulado después de {nper} meses es: S/. {FV:.2f}\")" 207 | ] 208 | }, 209 | { 210 | "cell_type": "markdown", 211 | "source": [ 212 | "## Pregunta 3" 213 | ], 214 | "metadata": { 215 | "id": "JkH9EonPwg54" 216 | } 217 | }, 218 | { 219 | "cell_type": "markdown", 220 | "source": [ 221 | "Un banco paga por los depósitos que recibe del público una tasa nominal mensual del 3% con capitalización trimestral. ¿Qué monto se habrá\n", 222 | "acumulado con un capital inicial de S/, 3 000 colocado durante 6 meses?" 223 | ], 224 | "metadata": { 225 | "id": "sZO3vXhvwg54" 226 | } 227 | }, 228 | { 229 | "cell_type": "code", 230 | "execution_count": 29, 231 | "metadata": { 232 | "colab": { 233 | "base_uri": "https://localhost:8080/" 234 | }, 235 | "outputId": "73bff116-adbe-4e0b-9688-fc816a6a4898", 236 | "id": "JsevLrr1wg55" 237 | }, 238 | "outputs": [ 239 | { 240 | "output_type": "stream", 241 | "name": "stdout", 242 | "text": [ 243 | "El monto acumulado después de 6 meses es: S/. 3564.30\n" 244 | ] 245 | } 246 | ], 247 | "source": [ 248 | "rate_monthly = 0.03 # tasa nominal mensual\n", 249 | "nper = 2 # número de trimestres (6 meses)\n", 250 | "pv = -3000 # valor presente (capital inicial)\n", 251 | "\n", 252 | "# Convertimos la tasa nominal mensual a tasa efectiva trimestral\n", 253 | "rate_quarterly = rate_monthly*3\n", 254 | "\n", 255 | "# Calculamos el monto futuro usando numpy_financial\n", 256 | "FV = npf.fv(rate_quarterly, nper, 0, pv)\n", 257 | "\n", 258 | "print(f\"El monto acumulado después de 6 meses es: S/. {FV:.2f}\")" 259 | ] 260 | }, 261 | { 262 | "cell_type": "markdown", 263 | "source": [ 264 | "## Pregunta 4" 265 | ], 266 | "metadata": { 267 | "id": "7DGeRtqHwhEc" 268 | } 269 | }, 270 | { 271 | "cell_type": "markdown", 272 | "source": [ 273 | "Consideremos un capital de S/. 1 000 depositado en un banco\n", 274 | "donde gana una tasa efectiva anual del 10%. ¿Qué monto tendrá que pagarse\n", 275 | "si el depósito se cancela al finalizar el primer semestre?" 276 | ], 277 | "metadata": { 278 | "id": "cmZDgFoFwhEd" 279 | } 280 | }, 281 | { 282 | "cell_type": "code", 283 | "execution_count": 30, 284 | "metadata": { 285 | "colab": { 286 | "base_uri": "https://localhost:8080/" 287 | }, 288 | "outputId": "c64a401e-648b-433c-ec50-4d6fa5dfe4ec", 289 | "id": "k59zRiprwhEe" 290 | }, 291 | "outputs": [ 292 | { 293 | "output_type": "stream", 294 | "name": "stdout", 295 | "text": [ 296 | "El monto acumulado después de 6 meses es: S/. 1048.81\n" 297 | ] 298 | } 299 | ], 300 | "source": [ 301 | "PV = -1000 # capital inicial (negativo porque es un desembolso)\n", 302 | "rate = 0.10 # tasa efectiva anual\n", 303 | "nper = 0.5 # medio año (6 meses)\n", 304 | "\n", 305 | "# Cálculo del monto futuro\n", 306 | "FV = npf.fv(rate, nper, 0, PV)\n", 307 | "\n", 308 | "print(f\"El monto acumulado después de 6 meses es: S/. {FV:.2f}\")" 309 | ] 310 | }, 311 | { 312 | "cell_type": "markdown", 313 | "source": [ 314 | "## Pregunta 5" 315 | ], 316 | "metadata": { 317 | "id": "vyQbmYdYwhIi" 318 | } 319 | }, 320 | { 321 | "cell_type": "markdown", 322 | "source": [ 323 | "Una persona solicita a un banco un préstamo de S/. 2 000, el\n", 324 | "mismo que se le abona en su cuenta corriente el 26 de mayo. ¿Qué monto\n", 325 | "deberá pagar el 24 de julio, fecha que cancela el préstamo, si el banco cobra\n", 326 | "una tasa efectiva mensual del 5%?" 327 | ], 328 | "metadata": { 329 | "id": "5SY6zrdpwhIi" 330 | } 331 | }, 332 | { 333 | "cell_type": "code", 334 | "execution_count": 31, 335 | "metadata": { 336 | "colab": { 337 | "base_uri": "https://localhost:8080/" 338 | }, 339 | "outputId": "964c08a2-c54c-4e03-d831-4400811c57d3", 340 | "id": "snQYxhZEwhIj" 341 | }, 342 | "outputs": [ 343 | { 344 | "output_type": "stream", 345 | "name": "stdout", 346 | "text": [ 347 | "El monto a pagar el 24 de julio es: S/. 2201.42\n" 348 | ] 349 | } 350 | ], 351 | "source": [ 352 | "PV = -2000 # préstamo (negativo porque es un desembolso)\n", 353 | "rate = 0.05 # tasa efectiva mensual\n", 354 | "nper = 59/30 # número de meses = (dias/30)\n", 355 | "\n", 356 | "# Cálculo del monto futuro\n", 357 | "FV = npf.fv(rate, nper, 0, PV)\n", 358 | "\n", 359 | "print(f\"El monto a pagar el 24 de julio es: S/. {FV:.2f}\")" 360 | ] 361 | }, 362 | { 363 | "cell_type": "markdown", 364 | "source": [ 365 | "## Pregunta 6" 366 | ], 367 | "metadata": { 368 | "id": "wV4-ppmWwhLi" 369 | } 370 | }, 371 | { 372 | "cell_type": "markdown", 373 | "source": [ 374 | "¿Qué monto deberá pagarse por un sobregiro bancario de S/. 2 000\n", 375 | "vigente desde el 24 al 30 de junio, si el banco cobra una tasa efectiva mensual\n", 376 | "del 5%?" 377 | ], 378 | "metadata": { 379 | "id": "6XotphgqwhLi" 380 | } 381 | }, 382 | { 383 | "cell_type": "code", 384 | "execution_count": 32, 385 | "metadata": { 386 | "colab": { 387 | "base_uri": "https://localhost:8080/" 388 | }, 389 | "outputId": "f5888ab6-32d1-4ee0-8eee-af502dca79b3", 390 | "id": "y-kzGIVuwhLj" 391 | }, 392 | "outputs": [ 393 | { 394 | "output_type": "stream", 395 | "name": "stdout", 396 | "text": [ 397 | "El monto a pagar por el sobregiro es: S/. 2019.61\n" 398 | ] 399 | } 400 | ], 401 | "source": [ 402 | "PV = -2000 # sobregiro (negativo porque es un desembolso)\n", 403 | "rate = 0.05 # tasa efectiva mensual\n", 404 | "t = 6 / 30 # 6 días convertidos a meses\n", 405 | "\n", 406 | "# Cálculo del monto futuro\n", 407 | "FV = npf.fv(rate, t, 0, PV)\n", 408 | "\n", 409 | "print(f\"El monto a pagar por el sobregiro es: S/. {FV:.2f}\")" 410 | ] 411 | }, 412 | { 413 | "cell_type": "markdown", 414 | "source": [ 415 | "## Pregunta 7" 416 | ], 417 | "metadata": { 418 | "id": "78U7LUYbwhOx" 419 | } 420 | }, 421 | { 422 | "cell_type": "markdown", 423 | "source": [ 424 | "Calcular el monto a pagar dentro de 4 meses por un préstamo\n", 425 | "bancario de S/. 8 000 a una tasa nominal anual del 36% capitalizable\n", 426 | "mensuálmente.\n" 427 | ], 428 | "metadata": { 429 | "id": "lWVJlbujwhOy" 430 | } 431 | }, 432 | { 433 | "cell_type": "code", 434 | "execution_count": 33, 435 | "metadata": { 436 | "colab": { 437 | "base_uri": "https://localhost:8080/" 438 | }, 439 | "outputId": "424d06ea-937a-4c9c-98a1-2ab23b5be762", 440 | "id": "ywAlmX0SwhOy" 441 | }, 442 | "outputs": [ 443 | { 444 | "output_type": "stream", 445 | "name": "stdout", 446 | "text": [ 447 | "El monto a pagar después de 4 meses es: S/. 9004.07\n" 448 | ] 449 | } 450 | ], 451 | "source": [ 452 | "PV = -8000 # préstamo (negativo porque es un desembolso)\n", 453 | "r_nominal_annual = 0.36 # tasa nominal anual\n", 454 | "t = 4 # número de meses\n", 455 | "\n", 456 | "# Convertir la tasa nominal anual a tasa efectiva mensual\n", 457 | "r_effective_monthly = (1 + r_nominal_annual / 12) - 1\n", 458 | "\n", 459 | "# Cálculo del monto futuro usando numpy_financial\n", 460 | "FV = npf.fv(r_effective_monthly, t, 0, PV)\n", 461 | "\n", 462 | "print(f\"El monto a pagar después de 4 meses es: S/. {FV:.2f}\")" 463 | ] 464 | }, 465 | { 466 | "cell_type": "markdown", 467 | "source": [ 468 | "## Pregunta 8" 469 | ], 470 | "metadata": { 471 | "id": "NiGgGeJ3whRY" 472 | } 473 | }, 474 | { 475 | "cell_type": "markdown", 476 | "source": [ 477 | "La empresa Audio S.A. compró en el Banco Látex un Certificado\n", 478 | "de Depósito a Plazo (CDP) por el importe de S/. 5 000 a un año de\n", 479 | "vencimiento, ganando una tasa nominal anual del 36% con capitalización\n", 480 | "trimestral, el cual tuvo que redimirlo al fin del octavo mes. ¿Cuál fue el monto\n", 481 | "que originó dicha inversión?" 482 | ], 483 | "metadata": { 484 | "id": "1HkwlUg7whRY" 485 | } 486 | }, 487 | { 488 | "cell_type": "code", 489 | "execution_count": 34, 490 | "metadata": { 491 | "colab": { 492 | "base_uri": "https://localhost:8080/" 493 | }, 494 | "outputId": "cd916623-7376-4f98-a0b2-50d0a486158b", 495 | "id": "76XUaw9-whRY" 496 | }, 497 | "outputs": [ 498 | { 499 | "output_type": "stream", 500 | "name": "stdout", 501 | "text": [ 502 | "El monto acumulado después de 8 meses es: S/. 6291.79\n" 503 | ] 504 | } 505 | ], 506 | "source": [ 507 | "PV = -5000 # capital invertido (negativo porque es un desembolso)\n", 508 | "r_nominal_annual = 0.36 # tasa nominal anual\n", 509 | "months = 8 # duración en meses\n", 510 | "\n", 511 | "# Convertir la tasa nominal anual a tasa efectiva trimestral\n", 512 | "r_effective_quarterly = (1 + r_nominal_annual / 4) - 1\n", 513 | "\n", 514 | "# Número de trimestres transcurridos\n", 515 | "t = months / 3\n", 516 | "\n", 517 | "# Cálculo del monto futuro usando numpy_financial\n", 518 | "FV = npf.fv(r_effective_quarterly, t, 0, PV)\n", 519 | "\n", 520 | "print(f\"El monto acumulado después de 8 meses es: S/. {FV:.2f}\")" 521 | ] 522 | }, 523 | { 524 | "cell_type": "markdown", 525 | "source": [ 526 | "## Pregunta 9" 527 | ], 528 | "metadata": { 529 | "id": "7RgMfSTGwhUP" 530 | } 531 | }, 532 | { 533 | "cell_type": "markdown", 534 | "source": [ 535 | "Calcule el monto de un capital de S/. 1 000 colocado durante tres\n", 536 | "meses. La tasa efectiva mensual pactada es del 3%, 4% y 5% para el primer,\n", 537 | "segundo y tercer mes respectivamente." 538 | ], 539 | "metadata": { 540 | "id": "qxoeKzKKwhUQ" 541 | } 542 | }, 543 | { 544 | "cell_type": "code", 545 | "execution_count": 35, 546 | "metadata": { 547 | "colab": { 548 | "base_uri": "https://localhost:8080/" 549 | }, 550 | "outputId": "4eb53f6a-131a-4bba-e532-70c361de54fa", 551 | "id": "T_YztDqmwhUQ" 552 | }, 553 | "outputs": [ 554 | { 555 | "output_type": "stream", 556 | "name": "stdout", 557 | "text": [ 558 | "El monto acumulado después de 3 meses es: S/. 1124.76\n" 559 | ] 560 | } 561 | ], 562 | "source": [ 563 | "PV = -1000 # capital inicial (negativo porque es un desembolso)\n", 564 | "rates = [0.03, 0.04, 0.05] # tasas efectivas mensuales para cada mes\n", 565 | "\n", 566 | "# Aplicar la fórmula para cada mes\n", 567 | "FV = PV\n", 568 | "for rate in rates:\n", 569 | " FV = npf.fv(rate, 1, 0, FV) # Calculamos el valor futuro mes a mes\n", 570 | "\n", 571 | "print(f\"El monto acumulado después de 3 meses es: S/. {FV:.2f}\")" 572 | ] 573 | }, 574 | { 575 | "cell_type": "markdown", 576 | "source": [ 577 | "## Pregunta 10" 578 | ], 579 | "metadata": { 580 | "id": "TRNfjPS7whXK" 581 | } 582 | }, 583 | { 584 | "cell_type": "markdown", 585 | "source": [ 586 | "Una empresa solicitó a un banco un préstamo de S/. 8 000\n", 587 | "cancelable dentro de 6 meses a una tasa nominal anual del 36% con\n", 588 | "capitalización trimestral. La tasa es variable de acuerdo a las condiciones del\n", 589 | "mercado. En la fecha de vencimiento del contrato de crédito se conocen las\n", 590 | "siguientes variaciones de tasas anuales: 36% durante los dos primeros meses\n", 591 | "y 48% para el resto del período, ambas capitalizabas trimestralmente. ¿Qué\n", 592 | "monto deberá cancelar al vencimiento?" 593 | ], 594 | "metadata": { 595 | "id": "Lsu4bZ6cwhXL" 596 | } 597 | }, 598 | { 599 | "cell_type": "code", 600 | "execution_count": 36, 601 | "metadata": { 602 | "colab": { 603 | "base_uri": "https://localhost:8080/" 604 | }, 605 | "outputId": "b8c0fbb9-683a-4f4e-f09d-2e2155f31d7e", 606 | "id": "-eAzAvwkwhXL" 607 | }, 608 | "outputs": [ 609 | { 610 | "output_type": "stream", 611 | "name": "stdout", 612 | "text": [ 613 | "El monto a cancelar al vencimiento es: S/. 9855.19\n" 614 | ] 615 | } 616 | ], 617 | "source": [ 618 | "PV = -8000 # préstamo (negativo porque es un desembolso)\n", 619 | "rate_36 = 0.09 # tasa efectiva trimestral para los primeros 2 meses (36% nominal)\n", 620 | "rate_48 = 0.12 # tasa efectiva trimestral para los últimos 4 meses (48% nominal)\n", 621 | "\n", 622 | "# Calculamos el monto acumulado durante el primer trimestre (36% nominal)\n", 623 | "FV_36 = npf.fv(rate_36, 2/3, 0, PV)\n", 624 | "\n", 625 | "# Luego, calculamos el monto acumulado durante el segundo trimestre (48% nominal)\n", 626 | "FV_final = npf.fv(rate_48, 4/3, 0, -FV_36)\n", 627 | "\n", 628 | "print(f\"El monto a cancelar al vencimiento es: S/. {FV_final:.2f}\")" 629 | ] 630 | }, 631 | { 632 | "cell_type": "code", 633 | "source": [ 634 | "#Calculando manualmente corroboramos el resultado que difiere del libro\n", 635 | "8000*(1+0.36/4)**(2/3)*(1+0.48/4)**(4/3)" 636 | ], 637 | "metadata": { 638 | "colab": { 639 | "base_uri": "https://localhost:8080/" 640 | }, 641 | "id": "LwEYTm1Qz1jI", 642 | "outputId": "995f6d37-cc71-4cfd-ecdd-ac790412fc97" 643 | }, 644 | "execution_count": 37, 645 | "outputs": [ 646 | { 647 | "output_type": "execute_result", 648 | "data": { 649 | "text/plain": [ 650 | "9855.190324671163" 651 | ] 652 | }, 653 | "metadata": {}, 654 | "execution_count": 37 655 | } 656 | ] 657 | }, 658 | { 659 | "cell_type": "markdown", 660 | "source": [ 661 | "## Pregunta 12" 662 | ], 663 | "metadata": { 664 | "id": "ptIgIBzlwhZ_" 665 | } 666 | }, 667 | { 668 | "cell_type": "markdown", 669 | "source": [ 670 | "El 6 de abril la empresa Pert descontó en el Banco Mercante un\n", 671 | "pagaré cuyo valor nominal fue de S/. 8 000 y su vencimiento el 5 de junio.\n", 672 | "Calcule el importe abonado por el banco a Pert, considerando una tasa nominal\n", 673 | "del 36% anual con capitalización mensual." 674 | ], 675 | "metadata": { 676 | "id": "EVEUAMBxwhZ_" 677 | } 678 | }, 679 | { 680 | "cell_type": "code", 681 | "execution_count": 38, 682 | "metadata": { 683 | "colab": { 684 | "base_uri": "https://localhost:8080/" 685 | }, 686 | "outputId": "4f4a3e89-1a15-4c87-d179-69d129a3b3d3", 687 | "id": "vT4q2yhcwhaA" 688 | }, 689 | "outputs": [ 690 | { 691 | "output_type": "stream", 692 | "name": "stdout", 693 | "text": [ 694 | "El importe abonado por el banco a Pert es: S/. 7540.77\n" 695 | ] 696 | } 697 | ], 698 | "source": [ 699 | "FV = 8000 # Valor nominal del pagaré\n", 700 | "rate_nominal_annual = 0.36 # Tasa nominal anual\n", 701 | "n = 12 # Capitalización mensual\n", 702 | "months = 2 # Período de descuento (de abril 6 a junio 5)\n", 703 | "\n", 704 | "# Calcular la tasa mensual\n", 705 | "rate_monthly = rate_nominal_annual / n\n", 706 | "\n", 707 | "# Calcular el valor presente usando numpy_financial\n", 708 | "PV = npf.pv(rate_monthly, months, 0, FV)\n", 709 | "\n", 710 | "print(f\"El importe abonado por el banco a Pert es: S/. {abs(PV):.2f}\")" 711 | ] 712 | }, 713 | { 714 | "cell_type": "markdown", 715 | "source": [ 716 | "## Pregunta 13" 717 | ], 718 | "metadata": { 719 | "id": "CJOaDgCxwhdH" 720 | } 721 | }, 722 | { 723 | "cell_type": "markdown", 724 | "source": [ 725 | "Faltando 28 días para su vencimiento uña letra de S/. 6 000 es descontada en un banco a una tasa nominal anual del 48% con capitalización mensual. ¿Qué importe recibió el descontante?" 726 | ], 727 | "metadata": { 728 | "id": "Tvnii4iGwhdI" 729 | } 730 | }, 731 | { 732 | "cell_type": "code", 733 | "execution_count": 39, 734 | "metadata": { 735 | "colab": { 736 | "base_uri": "https://localhost:8080/" 737 | }, 738 | "outputId": "03a11682-ed81-49ac-d741-97249e085ba4", 739 | "id": "e97ttiezwhdJ" 740 | }, 741 | "outputs": [ 742 | { 743 | "output_type": "stream", 744 | "name": "stdout", 745 | "text": [ 746 | "El importe recibido por el descontante es: S/. 5784.34\n" 747 | ] 748 | } 749 | ], 750 | "source": [ 751 | "FV = 6000 # Valor nominal de la letra\n", 752 | "rate_nominal_annual = 0.48 # Tasa nominal anual (48%)\n", 753 | "n = 12 # Capitalización mensual\n", 754 | "days = 28 # Días faltantes para el vencimiento\n", 755 | "\n", 756 | "# Calcular el tiempo en años (t) a partir de los días\n", 757 | "t = days / 30\n", 758 | "\n", 759 | "# Calcular la tasa mensual\n", 760 | "rate_monthly = rate_nominal_annual / n\n", 761 | "\n", 762 | "# Calcular el valor presente usando npf.pv\n", 763 | "PV = npf.pv(rate_monthly, t, 0, FV)\n", 764 | "\n", 765 | "# Mostrar el importe recibido por el descontante (valor presente)\n", 766 | "print(f\"El importe recibido por el descontante es: S/. {abs(PV):.2f}\")" 767 | ] 768 | }, 769 | { 770 | "cell_type": "markdown", 771 | "source": [ 772 | "# Anualidades vencidas" 773 | ], 774 | "metadata": { 775 | "id": "zv140czg4Pun" 776 | } 777 | }, 778 | { 779 | "cell_type": "markdown", 780 | "source": [ 781 | "Una **anualidad vencida** es una serie de pagos iguales que se realizan al final de cada período. En este tipo de anualidad, el primer pago se realiza al final del primer período, y los pagos continúan hasta el final del último período.\n", 782 | "\n", 783 | "La fórmula para calcular el **valor presente** ($PV$) de una anualidad vencida es:\n", 784 | "\n", 785 | "$$\n", 786 | "PV = PMT \\times \\frac{1 - (1 + r)^{-n}}{r}\n", 787 | "$$\n", 788 | "\n", 789 | "Donde:\n", 790 | "- $PV$ es el valor presente de la anualidad.\n", 791 | "- $PMT$ es el pago periódico.\n", 792 | "- $r$ es la tasa de interés por período.\n", 793 | "- $n$ es el número total de períodos.\n", 794 | "\n", 795 | "La fórmula para calcular el **valor futuro** ($FV$) de una anualidad vencida es:\n", 796 | "\n", 797 | "$$\n", 798 | "FV = PMT \\times \\frac{(1 + r)^n - 1}{r}\n", 799 | "$$\n", 800 | "\n", 801 | "Donde:\n", 802 | "- $FV$ es el valor futuro de la anualidad.\n", 803 | "- $PMT$ es el pago periódico.\n", 804 | "- $r$ es la tasa de interés por período.\n", 805 | "- $n$ es el número total de períodos.\n", 806 | "\n", 807 | "### Funciones en `numpy_financial`\n", 808 | "\n", 809 | "1. **`pv(rate, n, pmt, fv)`**: Calcula el valor presente de una anualidad vencida, considerando pagos periódicos al final de cada período.\n", 810 | " - **`rate`**: Tasa de interés por período.\n", 811 | " - **`n`**: Número total de períodos.\n", 812 | " - **`pmt`**: Pago periódico.\n", 813 | " - **`fv`**: Valor futuro deseado (opcional, puede ser 0 si no se espera un valor futuro).\n", 814 | "\n", 815 | "2. **`fv(rate, n, pmt, pv)`**: Calcula el valor futuro de una anualidad vencida, considerando pagos periódicos realizados al final de cada período.\n", 816 | " - **`rate`**: Tasa de interés por período.\n", 817 | " - **`n`**: Número total de períodos.\n", 818 | " - **`pmt`**: Pago periódico.\n", 819 | " - **`pv`**: Valor presente de la inversión.\n", 820 | "\n", 821 | "Estas funciones son útiles para calcular el monto que se acumula o el valor presente de una serie de pagos realizados al final de cada período, como en el caso de préstamos o inversiones con pagos periódicos." 822 | ], 823 | "metadata": { 824 | "id": "hhIaKzb6a1EN" 825 | } 826 | }, 827 | { 828 | "cell_type": "markdown", 829 | "source": [ 830 | "## Pregunta 1" 831 | ], 832 | "metadata": { 833 | "id": "RdJ8yfVD4XWP" 834 | } 835 | }, 836 | { 837 | "cell_type": "markdown", 838 | "source": [ 839 | "Si un trabajador ha cotizado a una Administradora de Fondos de\n", 840 | "Pensiones (AFP) el equivalente de $ 360 anual, durante sus últimos cinco años\n", 841 | "de actividad laboral dependiente, ¿qué importe habrá acumulado en ese período\n", 842 | "si percibió una TEA del 10%?" 843 | ], 844 | "metadata": { 845 | "id": "p55E4xSn48tH" 846 | } 847 | }, 848 | { 849 | "cell_type": "code", 850 | "source": [ 851 | "P = 360 # Cotización anual\n", 852 | "rate = 0.10 # Tasa de interés efectiva anual\n", 853 | "years = 5 # Período de cotización (5 años)\n", 854 | "\n", 855 | "# Usamos la fórmula de FV para cada cotización anual\n", 856 | "M = npf.fv(rate, years, -P, 0) # La cotización se toma como negativo para representar un pago\n", 857 | "\n", 858 | "# Mostrar el monto acumulado\n", 859 | "print(f\"El monto acumulado en la AFP es: $ {M:.2f}\")" 860 | ], 861 | "metadata": { 862 | "colab": { 863 | "base_uri": "https://localhost:8080/" 864 | }, 865 | "id": "wFRGFwx94Yx3", 866 | "outputId": "6d6e5857-7a18-4c9a-e855-007849645ded" 867 | }, 868 | "execution_count": 40, 869 | "outputs": [ 870 | { 871 | "output_type": "stream", 872 | "name": "stdout", 873 | "text": [ 874 | "El monto acumulado en la AFP es: $ 2197.84\n" 875 | ] 876 | } 877 | ] 878 | }, 879 | { 880 | "cell_type": "markdown", 881 | "source": [ 882 | "## Pregunta 2" 883 | ], 884 | "metadata": { 885 | "id": "NVtrT5e14ZWs" 886 | } 887 | }, 888 | { 889 | "cell_type": "markdown", 890 | "source": [ 891 | "¿Qué monto se acumulará en una cuenta de ahorros, si a fin de\n", 892 | "mes y durante 4 meses consecutivos se depositó S/. 100 por los cuales se\n", 893 | "percibe una TNA del 24% capitalizable mensualmente?\n" 894 | ], 895 | "metadata": { 896 | "id": "4HyBZ6GF5eeX" 897 | } 898 | }, 899 | { 900 | "cell_type": "code", 901 | "source": [ 902 | "P = 100 # Depósito mensual\n", 903 | "rate_nominal_annual = 0.24 # Tasa nominal anual\n", 904 | "n_months = 4 # Número de meses\n", 905 | "\n", 906 | "# Calcular la tasa de interés mensual\n", 907 | "rate_monthly = rate_nominal_annual / 12\n", 908 | "\n", 909 | "# Usar la fórmula de valor futuro de una anualidad ordinaria\n", 910 | "FV = npf.fv(rate_monthly, n_months, -P, 0)\n", 911 | "\n", 912 | "# Mostrar el monto acumulado\n", 913 | "print(f\"El monto acumulado en la cuenta de ahorros es: S/. {FV:.2f}\")" 914 | ], 915 | "metadata": { 916 | "colab": { 917 | "base_uri": "https://localhost:8080/" 918 | }, 919 | "id": "InTCl4754ZWt", 920 | "outputId": "fae98e21-4605-46e9-c7e0-2c44f8d0dd54" 921 | }, 922 | "execution_count": 41, 923 | "outputs": [ 924 | { 925 | "output_type": "stream", 926 | "name": "stdout", 927 | "text": [ 928 | "El monto acumulado en la cuenta de ahorros es: S/. 412.16\n" 929 | ] 930 | } 931 | ] 932 | }, 933 | { 934 | "cell_type": "markdown", 935 | "source": [ 936 | "## Pregunta 3" 937 | ], 938 | "metadata": { 939 | "id": "IZRtUbac4ZtQ" 940 | } 941 | }, 942 | { 943 | "cell_type": "markdown", 944 | "source": [ 945 | "Calcule el valor presente de los 5 flujos anuales de $ 360 c/u del\n", 946 | "ejemplo 1 aplicando una TEA del 10%." 947 | ], 948 | "metadata": { 949 | "id": "ZbByqtYh5n_m" 950 | } 951 | }, 952 | { 953 | "cell_type": "code", 954 | "source": [ 955 | "P = 360 # Monto de cada flujo anual\n", 956 | "rate = 0.10 # Tasa efectiva anual\n", 957 | "n = 5 # Número de flujos (años)\n", 958 | "\n", 959 | "# Calcular el valor presente de los 5 pagos utilizando npf.pv\n", 960 | "PV = npf.pv(rate, n, -P, 0) # El valor de P es negativo porque es un pago\n", 961 | "\n", 962 | "# Mostrar el valor presente total\n", 963 | "print(f\"El valor presente de los 5 flujos anuales de $360 es: $ {abs(PV):.2f}\")" 964 | ], 965 | "metadata": { 966 | "colab": { 967 | "base_uri": "https://localhost:8080/" 968 | }, 969 | "id": "--XuybXQ4ZtR", 970 | "outputId": "8d872f80-cadf-49c5-cd85-ee16e66b985a" 971 | }, 972 | "execution_count": 42, 973 | "outputs": [ 974 | { 975 | "output_type": "stream", 976 | "name": "stdout", 977 | "text": [ 978 | "El valor presente de los 5 flujos anuales de $360 es: $ 1364.68\n" 979 | ] 980 | } 981 | ] 982 | }, 983 | { 984 | "cell_type": "markdown", 985 | "source": [ 986 | "## Pregunta 4" 987 | ], 988 | "metadata": { 989 | "id": "m-nmpgGF4ZxE" 990 | } 991 | }, 992 | { 993 | "cell_type": "markdown", 994 | "source": [ 995 | "Actualmente, la empresa Sara S.A. decide cancelar las 4 últimas\n", 996 | "cuotas fijas insolutas de un préstamo contraído con una entidad financiera,\n", 997 | "ascendente cada una a S/. 500; las mismas que vencerán dentro de 30, 60, 90\n", 998 | "y 120, días respectivamente.' ¿Qué importe deberá cancelar hoy si la TEM es\n", 999 | "del 5%?\n" 1000 | ], 1001 | "metadata": { 1002 | "id": "x833aBXAT9H9" 1003 | } 1004 | }, 1005 | { 1006 | "cell_type": "code", 1007 | "source": [ 1008 | "cuota = 500 # Valor de cada cuota\n", 1009 | "rate = 0.05 # Tasa efectiva mensual (TEM)\n", 1010 | "n_periodos = [1, 2, 3, 4] # Períodos en meses (30, 60, 90, 120 días)\n", 1011 | "\n", 1012 | "# Calcular el valor presente de cada cuota y sumarlos\n", 1013 | "PV_total = sum([npf.pv(rate, n, 0, -cuota) for n in n_periodos])\n", 1014 | "\n", 1015 | "# Mostrar el resultado\n", 1016 | "print(f\"El importe total que debe cancelar hoy es: S/. {abs(PV_total):.2f}\")\n" 1017 | ], 1018 | "metadata": { 1019 | "colab": { 1020 | "base_uri": "https://localhost:8080/" 1021 | }, 1022 | "id": "1kUTScqB4ZxF", 1023 | "outputId": "97d464d1-d59d-4bd2-c1b6-1eaa2f59c68a" 1024 | }, 1025 | "execution_count": 43, 1026 | "outputs": [ 1027 | { 1028 | "output_type": "stream", 1029 | "name": "stdout", 1030 | "text": [ 1031 | "El importe total que debe cancelar hoy es: S/. 1772.98\n" 1032 | ] 1033 | } 1034 | ] 1035 | }, 1036 | { 1037 | "cell_type": "markdown", 1038 | "source": [ 1039 | "## Pregunta 5" 1040 | ], 1041 | "metadata": { 1042 | "id": "Q70H_w5n4Z0G" 1043 | } 1044 | }, 1045 | { 1046 | "cell_type": "markdown", 1047 | "source": [ 1048 | "Una empresa ha decidido adquirir dentro de 4 meses un grupo electrógeno cuyo precio estima en S/. 5 000. ¿Qué importe constante de fin de mes, debe ahorrar en ese período de tiempo, en un banco que paga una TNA del 36% con capitalización mensual, a fin de disponer ese monto al\n", 1049 | "vencimiento de dicho plazo?" 1050 | ], 1051 | "metadata": { 1052 | "id": "9U-9bZr4UELc" 1053 | } 1054 | }, 1055 | { 1056 | "cell_type": "code", 1057 | "source": [ 1058 | "FV = 5000 # Monto objetivo\n", 1059 | "rate = 0.03 # Tasa efectiva mensual\n", 1060 | "n_periodos = 4 # Número de meses\n", 1061 | "\n", 1062 | "# Calcular el importe constante (P) usando la función npf.pmt\n", 1063 | "P = npf.pmt(rate, n_periodos, 0, -FV)\n", 1064 | "\n", 1065 | "# Mostrar el resultado\n", 1066 | "print(f\"El importe constante que debe ahorrar al final de cada mes es: S/. {P:.2f}\")\n" 1067 | ], 1068 | "metadata": { 1069 | "colab": { 1070 | "base_uri": "https://localhost:8080/" 1071 | }, 1072 | "id": "xeCtCCR64Z0G", 1073 | "outputId": "54cd14a4-7660-4ed6-86e0-5f5b74d5fd2f" 1074 | }, 1075 | "execution_count": 44, 1076 | "outputs": [ 1077 | { 1078 | "output_type": "stream", 1079 | "name": "stdout", 1080 | "text": [ 1081 | "El importe constante que debe ahorrar al final de cada mes es: S/. 1195.14\n" 1082 | ] 1083 | } 1084 | ] 1085 | }, 1086 | { 1087 | "cell_type": "markdown", 1088 | "source": [ 1089 | "## Pregunta 6" 1090 | ], 1091 | "metadata": { 1092 | "id": "89jCfDoB4Z2_" 1093 | } 1094 | }, 1095 | { 1096 | "cell_type": "markdown", 1097 | "source": [ 1098 | " ¿Cuál será la cuota constante a pagar por un préstamo bancario de S/. 8 000, reembolsable en 4 cuotas cada fin de mes? El banco cobra una TNA del 36% con capitalización mensual." 1099 | ], 1100 | "metadata": { 1101 | "id": "utCs_uXxUeZ9" 1102 | } 1103 | }, 1104 | { 1105 | "cell_type": "code", 1106 | "source": [ 1107 | "PV = 8000 # Monto del préstamo\n", 1108 | "rate = 0.03 # Tasa efectiva mensual\n", 1109 | "n_periodos = 4 # Número de cuotas\n", 1110 | "\n", 1111 | "# Calcular la cuota constante\n", 1112 | "P = npf.pmt(rate, n_periodos, -PV, 0) # El monto del préstamo es negativo porque es un ingreso\n", 1113 | "\n", 1114 | "# Mostrar el resultado\n", 1115 | "print(f\"La cuota constante a pagar es: S/. {P:.2f}\")" 1116 | ], 1117 | "metadata": { 1118 | "colab": { 1119 | "base_uri": "https://localhost:8080/" 1120 | }, 1121 | "id": "DhXqiy9f4Z2_", 1122 | "outputId": "7eec7199-73ed-430d-cb22-4f3babe98af3" 1123 | }, 1124 | "execution_count": 45, 1125 | "outputs": [ 1126 | { 1127 | "output_type": "stream", 1128 | "name": "stdout", 1129 | "text": [ 1130 | "La cuota constante a pagar es: S/. 2152.22\n" 1131 | ] 1132 | } 1133 | ] 1134 | }, 1135 | { 1136 | "cell_type": "markdown", 1137 | "source": [ 1138 | "## Pregunta 7" 1139 | ], 1140 | "metadata": { 1141 | "id": "gfJxEutp4Z5-" 1142 | } 1143 | }, 1144 | { 1145 | "cell_type": "markdown", 1146 | "source": [ 1147 | "¿Cuántos depósitos de fin de mes de S/. 500 serán necesarios ahorrar, para acumular un monto de S/. 5 474,86 en un banco que paga una TNA del 24% con capitalización mensual?\n" 1148 | ], 1149 | "metadata": { 1150 | "id": "E5QWjl7nUxEn" 1151 | } 1152 | }, 1153 | { 1154 | "cell_type": "code", 1155 | "source": [ 1156 | "FV = 5474.86 # Monto objetivo\n", 1157 | "P = 500 # Depósito mensual\n", 1158 | "rate = 0.02 # Tasa efectiva mensual\n", 1159 | "\n", 1160 | "# Calcular el número de depósitos (n)\n", 1161 | "n = np.log((FV * rate / P) + 1) / np.log(1 + rate)\n", 1162 | "\n", 1163 | "# Mostrar el resultado redondeado al entero más próximo\n", 1164 | "print(f\"El número de depósitos necesarios es: {np.ceil(n):.0f}\")" 1165 | ], 1166 | "metadata": { 1167 | "colab": { 1168 | "base_uri": "https://localhost:8080/" 1169 | }, 1170 | "id": "atmHDLV_4Z5-", 1171 | "outputId": "b24f453c-8937-4601-d516-0c2ebbd57daf" 1172 | }, 1173 | "execution_count": 46, 1174 | "outputs": [ 1175 | { 1176 | "output_type": "stream", 1177 | "name": "stdout", 1178 | "text": [ 1179 | "El número de depósitos necesarios es: 10\n" 1180 | ] 1181 | } 1182 | ] 1183 | }, 1184 | { 1185 | "cell_type": "markdown", 1186 | "source": [ 1187 | "## Pregunta 8" 1188 | ], 1189 | "metadata": { 1190 | "id": "vPWhKa0M4Z9G" 1191 | } 1192 | }, 1193 | { 1194 | "cell_type": "markdown", 1195 | "source": [ 1196 | "¿Con cuántas cuotas constantes trimestrales vencidas de S/. 500 se\n", 1197 | "podrá amortizar un préstamo de S/. 5 000, por el cual se paga una TET del\n", 1198 | "6,1208%?\n" 1199 | ], 1200 | "metadata": { 1201 | "id": "-hlHhXfgVgG1" 1202 | } 1203 | }, 1204 | { 1205 | "cell_type": "code", 1206 | "source": [ 1207 | "PV = 5000 # Monto del préstamo\n", 1208 | "P = 500 # Cuota constante\n", 1209 | "rate = 0.061208 # Tasa efectiva trimestral\n", 1210 | "\n", 1211 | "# Calcular el número de cuotas necesarias (n)\n", 1212 | "n = np.log(P / (P - PV * rate)) / np.log(1 + rate)\n", 1213 | "\n", 1214 | "# Mostrar el resultado redondeado al entero más próximo\n", 1215 | "print(f\"El número de cuotas necesarias es: {np.ceil(n):.0f}\")" 1216 | ], 1217 | "metadata": { 1218 | "colab": { 1219 | "base_uri": "https://localhost:8080/" 1220 | }, 1221 | "id": "tuFwLeTw4Z9G", 1222 | "outputId": "f63b9136-6b42-4f9c-e44f-41b5737e5541" 1223 | }, 1224 | "execution_count": 47, 1225 | "outputs": [ 1226 | { 1227 | "output_type": "stream", 1228 | "name": "stdout", 1229 | "text": [ 1230 | "El número de cuotas necesarias es: 16\n" 1231 | ] 1232 | } 1233 | ] 1234 | }, 1235 | { 1236 | "cell_type": "markdown", 1237 | "source": [ 1238 | "## Pregunta 9" 1239 | ], 1240 | "metadata": { 1241 | "id": "xkq1jqEQ4aAO" 1242 | } 1243 | }, 1244 | { 1245 | "cell_type": "markdown", 1246 | "source": [ 1247 | "Un artefacto electrodoméstico tiene un precio de contado de `$ 1 500` y al crédito se ofrece con una cuota inicial de `$ 300` y 12 cuotas uniformes de `$ 130` c/u pagaderas cada fin de mes. ¿Cuál es la TEM cargada en el financiamiento?" 1248 | ], 1249 | "metadata": { 1250 | "id": "zQBTwVL6SHin" 1251 | } 1252 | }, 1253 | { 1254 | "cell_type": "code", 1255 | "source": [ 1256 | "precio_contado = 1500 # Precio de contado\n", 1257 | "cuota_inicial = 300 # Cuota inicial\n", 1258 | "cuota = 130 # Cuota uniforme\n", 1259 | "n_cuotas = 12 # Número de cuotas\n", 1260 | "\n", 1261 | "# Valor presente de las cuotas financiadas\n", 1262 | "PV_financiado = precio_contado - cuota_inicial\n", 1263 | "\n", 1264 | "# Calcular la TEM\n", 1265 | "TEM = npf.rate(n_cuotas, -cuota, PV_financiado, 0)\n", 1266 | "\n", 1267 | "# Mostrar el resultado en porcentaje\n", 1268 | "print(f\"La TEM cargada en el financiamiento es: {TEM * 100:.2f}%\")" 1269 | ], 1270 | "metadata": { 1271 | "colab": { 1272 | "base_uri": "https://localhost:8080/" 1273 | }, 1274 | "id": "vKtzU6Rv4aAO", 1275 | "outputId": "5e7e8334-9a9a-4d6e-e243-dc90e9cd6122" 1276 | }, 1277 | "execution_count": 48, 1278 | "outputs": [ 1279 | { 1280 | "output_type": "stream", 1281 | "name": "stdout", 1282 | "text": [ 1283 | "La TEM cargada en el financiamiento es: 4.29%\n" 1284 | ] 1285 | } 1286 | ] 1287 | }, 1288 | { 1289 | "cell_type": "markdown", 1290 | "source": [ 1291 | "# Valos Presente Neto (VAN)" 1292 | ], 1293 | "metadata": { 1294 | "id": "8Bo1rbpiYYy2" 1295 | } 1296 | }, 1297 | { 1298 | "cell_type": "markdown", 1299 | "source": [ 1300 | "El **Valor Actual Neto (VAN)** es una técnica utilizada para evaluar la rentabilidad de un proyecto o inversión. Consiste en descontar todos los flujos de efectivo futuros esperados (ingresos y egresos) a su valor presente, utilizando una tasa de descuento (generalmente la tasa de rendimiento requerida o tasa de interés del mercado).\n", 1301 | "\n", 1302 | "La fórmula general para calcular el VAN es:\n", 1303 | "\n", 1304 | "$$\n", 1305 | "VAN = \\sum_{t=0}^{n} \\frac{C_t}{(1 + r)^t}\n", 1306 | "$$\n", 1307 | "\n", 1308 | "Donde:\n", 1309 | "- $VAN$ es el valor actual neto.\n", 1310 | "- $C_t$ son los flujos de efectivo en el tiempo $t$ (pueden ser positivos o negativos).\n", 1311 | "- $r$ es la tasa de descuento o tasa de interés.\n", 1312 | "- $n$ es el número total de períodos.\n", 1313 | "\n", 1314 | "El VAN se interpreta de la siguiente manera:\n", 1315 | "- **VAN > 0**: El proyecto o inversión es rentable.\n", 1316 | "- **VAN = 0**: El proyecto o inversión no genera ganancia ni pérdida.\n", 1317 | "- **VAN < 0**: El proyecto o inversión no es rentable.\n", 1318 | "\n", 1319 | "### Funciones en `numpy_financial`\n", 1320 | "\n", 1321 | "En **`numpy_financial`**, la función que se utiliza para calcular el VAN es **`npv(rate, values)`**, que se puede utilizar para evaluar el valor presente neto de una serie de flujos de efectivo, descontados a una tasa específica.\n", 1322 | "\n", 1323 | "#### **`npv(rate, values)`**:\n", 1324 | "\n", 1325 | "Esta función calcula el **Valor Actual Neto (VAN)** de una serie de flujos de efectivo, usando una tasa de descuento proporcionada.\n", 1326 | "\n", 1327 | "- **`rate`**: La tasa de descuento o tasa de interés.\n", 1328 | "- **`values`**: Una lista o arreglo de flujos de efectivo, donde el primer valor corresponde al flujo de efectivo en el tiempo 0 (el valor inicial de la inversión), y los demás valores son los flujos en los períodos siguientes." 1329 | ], 1330 | "metadata": { 1331 | "id": "yauQmDZ8a_6W" 1332 | } 1333 | }, 1334 | { 1335 | "cell_type": "markdown", 1336 | "source": [ 1337 | "## Pregunta 1" 1338 | ], 1339 | "metadata": { 1340 | "id": "K04HlAmMYca1" 1341 | } 1342 | }, 1343 | { 1344 | "cell_type": "markdown", 1345 | "source": [ 1346 | "Una empresa evalúa un proyecto que requiere una inversión inicial de `$10,000`. Se espera que genere flujos de efectivo de `$3,000, $4,000, $5,000 y $6,000` durante los próximos cuatro años. Si la tasa de descuento esperada es del 10% anual, se desea calcular el Valor Actual Neto (VAN) del proyecto." 1347 | ], 1348 | "metadata": { 1349 | "id": "mU_r9ujhYh6m" 1350 | } 1351 | }, 1352 | { 1353 | "cell_type": "code", 1354 | "source": [ 1355 | "inversion_inicial = 10000 # Inversión inicial en dólares (negativo porque es un desembolso)\n", 1356 | "flujos = [-inversion_inicial, 3000, 4000, 5000, 6000] # Flujos anuales\n", 1357 | "tasa_descuento = 0.10 # Tasa de descuento anual\n", 1358 | "\n", 1359 | "# Calcular el VAN\n", 1360 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1361 | "\n", 1362 | "# Mostrar el VAN\n", 1363 | "print(f\"El Valor Actual Neto (VAN) del proyecto es: ${VAN:.2f}\")" 1364 | ], 1365 | "metadata": { 1366 | "colab": { 1367 | "base_uri": "https://localhost:8080/" 1368 | }, 1369 | "id": "8TIjNoA2YelN", 1370 | "outputId": "21301251-86b0-4d21-d471-18e89ab07642" 1371 | }, 1372 | "execution_count": 57, 1373 | "outputs": [ 1374 | { 1375 | "output_type": "stream", 1376 | "name": "stdout", 1377 | "text": [ 1378 | "El Valor Actual Neto (VAN) del proyecto es: $3887.71\n" 1379 | ] 1380 | } 1381 | ] 1382 | }, 1383 | { 1384 | "cell_type": "markdown", 1385 | "source": [ 1386 | "## Pregunta 2" 1387 | ], 1388 | "metadata": { 1389 | "id": "eWqGMfQIYfld" 1390 | } 1391 | }, 1392 | { 1393 | "cell_type": "markdown", 1394 | "source": [ 1395 | "Una empresa planea adquirir una maquinaria con un costo inicial de `$20,000`. La maquinaria generará ingresos adicionales de `$7,000, $8,000 y $9,000` durante los próximos tres años. Si la tasa de descuento para proyectos de la empresa es del 12% anual, se desea determinar el VAN de esta inversión." 1396 | ], 1397 | "metadata": { 1398 | "id": "l2f71sOmYq1X" 1399 | } 1400 | }, 1401 | { 1402 | "cell_type": "code", 1403 | "source": [ 1404 | "inversion_inicial = 20000 # Costo inicial de la maquinaria en dólares\n", 1405 | "flujos = [-inversion_inicial, 7000, 8000, 9000] # Flujos anuales\n", 1406 | "tasa_descuento = 0.12 # Tasa de descuento anual\n", 1407 | "\n", 1408 | "# Calcular el VAN\n", 1409 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1410 | "\n", 1411 | "# Mostrar el VAN\n", 1412 | "print(f\"El Valor Actual Neto (VAN) de la inversión es: ${VAN:.2f}\")" 1413 | ], 1414 | "metadata": { 1415 | "id": "49AgNxDeYfle" 1416 | }, 1417 | "execution_count": null, 1418 | "outputs": [] 1419 | }, 1420 | { 1421 | "cell_type": "markdown", 1422 | "source": [ 1423 | "## Pregunta 3" 1424 | ], 1425 | "metadata": { 1426 | "id": "mubu_tcrYfuY" 1427 | } 1428 | }, 1429 | { 1430 | "cell_type": "markdown", 1431 | "source": [ 1432 | "Una tienda está considerando expandir sus operaciones con una inversión inicial de `$30,000`. Se estima que los ingresos adicionales serán de `$10,000, $12,000, $15,000 y $20,000` durante los próximos cuatro años. Si la tasa de descuento es del 8% anual, se debe calcular el VAN de la expansión." 1433 | ], 1434 | "metadata": { 1435 | "id": "lYaK_V3SY7c_" 1436 | } 1437 | }, 1438 | { 1439 | "cell_type": "code", 1440 | "source": [ 1441 | "inversion_inicial = 30000 # Inversión inicial en dólares\n", 1442 | "flujos = [-inversion_inicial, 10000, 12000, 15000, 20000] # Flujos anuales\n", 1443 | "tasa_descuento = 0.08 # Tasa de descuento anual\n", 1444 | "\n", 1445 | "# Calcular el VAN\n", 1446 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1447 | "\n", 1448 | "# Mostrar el VAN\n", 1449 | "print(f\"El Valor Actual Neto (VAN) de la expansión es: ${VAN:.2f}\")" 1450 | ], 1451 | "metadata": { 1452 | "colab": { 1453 | "base_uri": "https://localhost:8080/" 1454 | }, 1455 | "id": "P1m-4hboYfuZ", 1456 | "outputId": "9222549e-5028-4b45-919d-3550e0e1e49b" 1457 | }, 1458 | "execution_count": 58, 1459 | "outputs": [ 1460 | { 1461 | "output_type": "stream", 1462 | "name": "stdout", 1463 | "text": [ 1464 | "El Valor Actual Neto (VAN) de la expansión es: $16155.41\n" 1465 | ] 1466 | } 1467 | ] 1468 | }, 1469 | { 1470 | "cell_type": "markdown", 1471 | "source": [ 1472 | "## Pregunta 4" 1473 | ], 1474 | "metadata": { 1475 | "id": "BhPUM0yOYfx6" 1476 | } 1477 | }, 1478 | { 1479 | "cell_type": "markdown", 1480 | "source": [ 1481 | "Una empresa planea lanzar un nuevo producto al mercado. Para ello, necesita una inversión inicial de `$50,000`. Se espera que el producto genere ingresos netos de `$20,000, $25,000 y $30,000` durante los próximos tres años. La tasa de descuento esperada es del 10% anual. Se desea calcular el VAN del proyecto." 1482 | ], 1483 | "metadata": { 1484 | "id": "nNGKYK_GZBtf" 1485 | } 1486 | }, 1487 | { 1488 | "cell_type": "code", 1489 | "source": [ 1490 | "inversion_inicial = 50000 # Inversión inicial en dólares\n", 1491 | "flujos = [-inversion_inicial, 20000, 25000, 30000] # Flujos anuales\n", 1492 | "tasa_descuento = 0.10 # Tasa de descuento anual\n", 1493 | "\n", 1494 | "# Calcular el VAN\n", 1495 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1496 | "\n", 1497 | "# Mostrar el VAN\n", 1498 | "print(f\"El Valor Actual Neto (VAN) del proyecto es: ${VAN:.2f}\")" 1499 | ], 1500 | "metadata": { 1501 | "colab": { 1502 | "base_uri": "https://localhost:8080/" 1503 | }, 1504 | "id": "Eszfr6U6Yfx7", 1505 | "outputId": "765d537f-35ae-4b09-b3ce-d66d1b5601e5" 1506 | }, 1507 | "execution_count": 59, 1508 | "outputs": [ 1509 | { 1510 | "output_type": "stream", 1511 | "name": "stdout", 1512 | "text": [ 1513 | "El Valor Actual Neto (VAN) del proyecto es: $11382.42\n" 1514 | ] 1515 | } 1516 | ] 1517 | }, 1518 | { 1519 | "cell_type": "markdown", 1520 | "source": [ 1521 | "## Pregunta 5" 1522 | ], 1523 | "metadata": { 1524 | "id": "LWVc8gLyYf7a" 1525 | } 1526 | }, 1527 | { 1528 | "cell_type": "markdown", 1529 | "source": [ 1530 | "Una empresa considera construir un almacén con un costo inicial de `$40,000`. Se proyectan ingresos netos de `$12,000, $15,000, $18,000 y $22,000` en los próximos cuatro años. Si la tasa de descuento es del 9% anual, se debe calcular el VAN del proyecto." 1531 | ], 1532 | "metadata": { 1533 | "id": "snR6JyPhZNOv" 1534 | } 1535 | }, 1536 | { 1537 | "cell_type": "code", 1538 | "source": [ 1539 | "inversion_inicial = 40000 # Inversión inicial en dólares\n", 1540 | "flujos = [-inversion_inicial, 12000, 15000, 18000, 22000] # Flujos anuales\n", 1541 | "tasa_descuento = 0.09 # Tasa de descuento anual\n", 1542 | "\n", 1543 | "# Calcular el VAN\n", 1544 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1545 | "\n", 1546 | "# Mostrar el VAN\n", 1547 | "print(f\"El Valor Actual Neto (VAN) del proyecto es: ${VAN:.2f}\")" 1548 | ], 1549 | "metadata": { 1550 | "colab": { 1551 | "base_uri": "https://localhost:8080/" 1552 | }, 1553 | "id": "omvWMCAtYf7a", 1554 | "outputId": "f064cd2e-f0a8-4560-a22d-5b99354797c9" 1555 | }, 1556 | "execution_count": 60, 1557 | "outputs": [ 1558 | { 1559 | "output_type": "stream", 1560 | "name": "stdout", 1561 | "text": [ 1562 | "El Valor Actual Neto (VAN) del proyecto es: $13119.03\n" 1563 | ] 1564 | } 1565 | ] 1566 | }, 1567 | { 1568 | "cell_type": "markdown", 1569 | "source": [ 1570 | "## Pregunta 6" 1571 | ], 1572 | "metadata": { 1573 | "id": "FMhfZVzpYgcq" 1574 | } 1575 | }, 1576 | { 1577 | "cell_type": "markdown", 1578 | "source": [ 1579 | "Una empresa de logística planea renovar su flota de transporte con una inversión inicial de `$60,000`. Esta inversión generará ahorros anuales de `$18,000, $20,000, $25,000 y $30,000` en los próximos cuatro años. La tasa de descuento esperada es del 10% anual. Se busca calcular el VAN de la inversión." 1580 | ], 1581 | "metadata": { 1582 | "id": "44Msq7B7ZUq3" 1583 | } 1584 | }, 1585 | { 1586 | "cell_type": "code", 1587 | "source": [ 1588 | "inversion_inicial = 60000 # Inversión inicial en dólares\n", 1589 | "flujos = [-inversion_inicial, 18000, 20000, 25000, 30000] # Ahorros anuales\n", 1590 | "tasa_descuento = 0.10 # Tasa de descuento anual\n", 1591 | "\n", 1592 | "# Calcular el VAN\n", 1593 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1594 | "\n", 1595 | "# Mostrar el VAN\n", 1596 | "print(f\"El Valor Actual Neto (VAN) de la inversión es: ${VAN:.2f}\")" 1597 | ], 1598 | "metadata": { 1599 | "colab": { 1600 | "base_uri": "https://localhost:8080/" 1601 | }, 1602 | "id": "1tJDeLV9Ygcr", 1603 | "outputId": "27ebf570-344f-48aa-eefb-c1d29810065f" 1604 | }, 1605 | "execution_count": 61, 1606 | "outputs": [ 1607 | { 1608 | "output_type": "stream", 1609 | "name": "stdout", 1610 | "text": [ 1611 | "El Valor Actual Neto (VAN) de la inversión es: $12165.84\n" 1612 | ] 1613 | } 1614 | ] 1615 | }, 1616 | { 1617 | "cell_type": "markdown", 1618 | "source": [ 1619 | "## Pregunta 7" 1620 | ], 1621 | "metadata": { 1622 | "id": "I7xk49fpZdQJ" 1623 | } 1624 | }, 1625 | { 1626 | "cell_type": "markdown", 1627 | "source": [ 1628 | "Una empresa desea automatizar un proceso de producción. Esto requiere una inversión inicial de `$25,000` y se espera que genere ingresos adicionales de `$8,000, $10,000, $12,000 y $15,000` en los próximos cuatro años. Si la tasa de descuento es del 11% anual, se debe calcular el VAN del proyecto." 1629 | ], 1630 | "metadata": { 1631 | "id": "fd3JPDqLZdQJ" 1632 | } 1633 | }, 1634 | { 1635 | "cell_type": "code", 1636 | "source": [ 1637 | "inversion_inicial = 25000 # Inversión inicial en dólares\n", 1638 | "flujos = [-inversion_inicial, 8000, 10000, 12000, 15000] # Flujos anuales\n", 1639 | "tasa_descuento = 0.11 # Tasa de descuento anual\n", 1640 | "\n", 1641 | "# Calcular el VAN\n", 1642 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1643 | "\n", 1644 | "# Mostrar el VAN\n", 1645 | "print(f\"El Valor Actual Neto (VAN) del proyecto es: ${VAN:.2f}\")" 1646 | ], 1647 | "metadata": { 1648 | "colab": { 1649 | "base_uri": "https://localhost:8080/" 1650 | }, 1651 | "outputId": "feea0232-de59-4531-8630-af9c73d1c74b", 1652 | "id": "rzpV9qQpZdQK" 1653 | }, 1654 | "execution_count": 62, 1655 | "outputs": [ 1656 | { 1657 | "output_type": "stream", 1658 | "name": "stdout", 1659 | "text": [ 1660 | "El Valor Actual Neto (VAN) del proyecto es: $8978.69\n" 1661 | ] 1662 | } 1663 | ] 1664 | }, 1665 | { 1666 | "cell_type": "markdown", 1667 | "source": [ 1668 | "## Pregunta 8" 1669 | ], 1670 | "metadata": { 1671 | "id": "itgDCrdBZdQK" 1672 | } 1673 | }, 1674 | { 1675 | "cell_type": "markdown", 1676 | "source": [ 1677 | "Una empresa está considerando instalar paneles solares con un costo inicial de `$50,000`. Se estima que los ahorros en consumo eléctrico serán de `$12,000, $15,000, $18,000, $20,000 y $22,000` durante los próximos cinco años. Si la tasa de descuento es del 8% anual, calcule el VAN del proyecto." 1678 | ], 1679 | "metadata": { 1680 | "id": "OVpRoCHqZdQK" 1681 | } 1682 | }, 1683 | { 1684 | "cell_type": "code", 1685 | "source": [ 1686 | "inversion_inicial = 50000 # Costo inicial en dólares\n", 1687 | "flujos = [-inversion_inicial, 12000, 15000, 18000, 20000, 22000] # Ahorros anuales\n", 1688 | "tasa_descuento = 0.08 # Tasa de descuento anual\n", 1689 | "\n", 1690 | "# Calcular el VAN\n", 1691 | "VAN = npf.npv(tasa_descuento, flujos)\n", 1692 | "\n", 1693 | "# Mostrar el VAN\n", 1694 | "print(f\"El Valor Actual Neto (VAN) del proyecto es: ${VAN:.2f}\")" 1695 | ], 1696 | "metadata": { 1697 | "colab": { 1698 | "base_uri": "https://localhost:8080/" 1699 | }, 1700 | "outputId": "a2f189ab-cfbf-4954-def1-80ac9b08c949", 1701 | "id": "p_8-rO3sZdQK" 1702 | }, 1703 | "execution_count": 63, 1704 | "outputs": [ 1705 | { 1706 | "output_type": "stream", 1707 | "name": "stdout", 1708 | "text": [ 1709 | "El Valor Actual Neto (VAN) del proyecto es: $17933.60\n" 1710 | ] 1711 | } 1712 | ] 1713 | }, 1714 | { 1715 | "cell_type": "markdown", 1716 | "source": [ 1717 | "# Tasa Interna de Retorno (TIR)" 1718 | ], 1719 | "metadata": { 1720 | "id": "WrjH8L8bWKoG" 1721 | } 1722 | }, 1723 | { 1724 | "cell_type": "markdown", 1725 | "source": [ 1726 | "La **Tasa Interna de Retorno (TIR)** es la tasa de descuento que hace que el valor presente neto (VAN) de todos los flujos de efectivo de un proyecto o inversión sea igual a cero. En otras palabras, es la tasa a la cual la suma de los flujos de efectivo descontados es igual a la inversión inicial.\n", 1727 | "\n", 1728 | "La fórmula general de la TIR es la misma que la del VAN, pero en este caso, se resuelve para la tasa $ r $ que hace que el VAN sea igual a cero:\n", 1729 | "\n", 1730 | "$$\n", 1731 | "0 = \\sum_{t=0}^{n} \\frac{C_t}{(1 + r)^t}\n", 1732 | "$$\n", 1733 | "\n", 1734 | "Donde:\n", 1735 | "- $C_t$ son los flujos de efectivo en el tiempo $t$ (pueden ser positivos o negativos).\n", 1736 | "- $r$ es la TIR.\n", 1737 | "- $n$ es el número total de períodos.\n", 1738 | "\n", 1739 | "### Funciones en `numpy_financial`\n", 1740 | "\n", 1741 | "En **`numpy_financial`**, la función utilizada para calcular la TIR es **`irr(values)`**, que devuelve la tasa interna de retorno de una serie de flujos de efectivo.\n", 1742 | "\n", 1743 | "#### **`irr(values)`**:\n", 1744 | "\n", 1745 | "Esta función calcula la **Tasa Interna de Retorno (TIR)** a partir de una serie de flujos de efectivo.\n", 1746 | "\n", 1747 | "- **`values`**: Una lista o arreglo de flujos de efectivo, donde el primer valor corresponde al flujo de efectivo en el tiempo 0 (la inversión inicial), y los demás valores son los flujos en los períodos siguientes.\n", 1748 | "\n", 1749 | "La TIR es útil para evaluar proyectos, ya que si la TIR es mayor que la tasa de descuento o la tasa mínima aceptable, el proyecto o inversión se considera rentable." 1750 | ], 1751 | "metadata": { 1752 | "id": "hB0ILCBObU3x" 1753 | } 1754 | }, 1755 | { 1756 | "cell_type": "markdown", 1757 | "source": [ 1758 | "## Pregunta 1" 1759 | ], 1760 | "metadata": { 1761 | "id": "iq_z0B4MWUxF" 1762 | } 1763 | }, 1764 | { 1765 | "cell_type": "markdown", 1766 | "source": [ 1767 | "Una concesionaria de automóviles ofrece un modelo cuyo precio de contado es `$20,000`. Si se adquiere al crédito, se paga una cuota inicial de `$5,000` y el saldo se financia en 24 cuotas mensuales iguales de `$800` cada una. Se desea calcular la Tasa Interna de Retorno (TIR), es decir, la Tasa Efectiva Mensual (TEM) implícita en este financiamiento." 1768 | ], 1769 | "metadata": { 1770 | "id": "G0JIMkF6WuPO" 1771 | } 1772 | }, 1773 | { 1774 | "cell_type": "code", 1775 | "source": [ 1776 | "precio_contado = 20000 # Precio de contado en dólares\n", 1777 | "cuota_inicial = 5000 # Cuota inicial en dólares\n", 1778 | "cuota = 800 # Monto de las cuotas mensuales en dólares\n", 1779 | "n_cuotas = 24 # Número de cuotas\n", 1780 | "\n", 1781 | "# Flujos de efectivo\n", 1782 | "# Primer flujo es el monto financiado (negativo), seguido de 24 cuotas positivas.\n", 1783 | "flujos = [- (precio_contado - cuota_inicial)] + [cuota] * n_cuotas\n", 1784 | "\n", 1785 | "# Calcular la TIR\n", 1786 | "TEM = npf.irr(flujos)\n", 1787 | "\n", 1788 | "# Mostrar la TIR como porcentaje\n", 1789 | "print(f\"La TIR o TEM implícita en el financiamiento es: {TEM * 100:.2f}%\")" 1790 | ], 1791 | "metadata": { 1792 | "colab": { 1793 | "base_uri": "https://localhost:8080/" 1794 | }, 1795 | "id": "vzb_Z_64WW1m", 1796 | "outputId": "39ffc99e-5f68-4009-bfdf-261c2204afe7" 1797 | }, 1798 | "execution_count": 51, 1799 | "outputs": [ 1800 | { 1801 | "output_type": "stream", 1802 | "name": "stdout", 1803 | "text": [ 1804 | "La TIR o TEM implícita en el financiamiento es: 2.08%\n" 1805 | ] 1806 | } 1807 | ] 1808 | }, 1809 | { 1810 | "cell_type": "markdown", 1811 | "source": [ 1812 | "## Pregunta 2" 1813 | ], 1814 | "metadata": { 1815 | "id": "kOv1hlXnWYYI" 1816 | } 1817 | }, 1818 | { 1819 | "cell_type": "markdown", 1820 | "source": [ 1821 | "Una empresa evalúa un proyecto que requiere una inversión inicial de `$10,000`. Este proyecto generará flujos de efectivo de `$3,000, $4,000, $5,000 y $6,000` al final de cada uno de los próximos cuatro años. Se desea calcular la Tasa Interna de Retorno (TIR) del proyecto para determinar si es" 1822 | ], 1823 | "metadata": { 1824 | "id": "KrNkcozEXAT1" 1825 | } 1826 | }, 1827 | { 1828 | "cell_type": "code", 1829 | "source": [ 1830 | "inversion_inicial = 10000 # Inversión inicial en dólares (negativo porque es un desembolso)\n", 1831 | "flujos = [-inversion_inicial, 3000, 4000, 5000, 6000] # Flujos anuales\n", 1832 | "\n", 1833 | "# Calcular la TIR\n", 1834 | "TIR_anual = npf.irr(flujos)\n", 1835 | "\n", 1836 | "# Mostrar la TIR como porcentaje\n", 1837 | "print(f\"La TIR del proyecto es: {TIR_anual * 100:.2f}%\")" 1838 | ], 1839 | "metadata": { 1840 | "colab": { 1841 | "base_uri": "https://localhost:8080/" 1842 | }, 1843 | "id": "pEl2NqyqWYYJ", 1844 | "outputId": "727254fc-d9d7-41ac-c65f-95b31b26448f" 1845 | }, 1846 | "execution_count": 52, 1847 | "outputs": [ 1848 | { 1849 | "output_type": "stream", 1850 | "name": "stdout", 1851 | "text": [ 1852 | "La TIR del proyecto es: 24.89%\n" 1853 | ] 1854 | } 1855 | ] 1856 | }, 1857 | { 1858 | "cell_type": "markdown", 1859 | "source": [ 1860 | "## Pregunta 3" 1861 | ], 1862 | "metadata": { 1863 | "id": "nz1iyPsxWYie" 1864 | } 1865 | }, 1866 | { 1867 | "cell_type": "markdown", 1868 | "source": [ 1869 | "Un estudiante desea adquirir una computadora cuyo precio de contado es `$1,200`. El vendedor ofrece un plan de financiamiento con una cuota inicial de `$300` y 10 pagos mensuales de `$100` cada uno. Se desea calcular la Tasa Interna de Retorno (TIR) o Tasa Efectiva Mensual (TEM) implícita en este esquema." 1870 | ], 1871 | "metadata": { 1872 | "id": "lR3l9iT0XQ39" 1873 | } 1874 | }, 1875 | { 1876 | "cell_type": "code", 1877 | "source": [ 1878 | "precio_contado = 1200 # Precio de contado en dólares\n", 1879 | "cuota_inicial = 300 # Cuota inicial en dólares\n", 1880 | "cuota = 100 # Pago mensual en dólares\n", 1881 | "n_cuotas = 10 # Número de cuotas\n", 1882 | "\n", 1883 | "# Flujos de efectivo\n", 1884 | "flujos = [- (precio_contado - cuota_inicial)] + [cuota] * n_cuotas\n", 1885 | "\n", 1886 | "# Calcular la TIR\n", 1887 | "TEM = npf.irr(flujos)\n", 1888 | "\n", 1889 | "# Mostrar la TIR como porcentaje\n", 1890 | "print(f\"La TIR o TEM implícita en el financiamiento es: {TEM * 100:.2f}%\")" 1891 | ], 1892 | "metadata": { 1893 | "colab": { 1894 | "base_uri": "https://localhost:8080/" 1895 | }, 1896 | "id": "d8oVwXraWYif", 1897 | "outputId": "d2a7c51f-0ba3-4d80-eadf-265e7a912f44" 1898 | }, 1899 | "execution_count": 53, 1900 | "outputs": [ 1901 | { 1902 | "output_type": "stream", 1903 | "name": "stdout", 1904 | "text": [ 1905 | "La TIR o TEM implícita en el financiamiento es: 1.96%\n" 1906 | ] 1907 | } 1908 | ] 1909 | }, 1910 | { 1911 | "cell_type": "markdown", 1912 | "source": [ 1913 | "## Pregunta 4" 1914 | ], 1915 | "metadata": { 1916 | "id": "QchedRHLWYmX" 1917 | } 1918 | }, 1919 | { 1920 | "cell_type": "markdown", 1921 | "source": [ 1922 | "Un emprendedor planea iniciar un negocio que requiere una inversión inicial de `$15,000`. Se proyectan flujos de efectivo de `$5,000, $6,000, $7,000 y $8,000` durante los próximos cuatro años. Se desea calcular la TIR del negocio para determinar su viabilidad financiera." 1923 | ], 1924 | "metadata": { 1925 | "id": "fzHefE8jXatP" 1926 | } 1927 | }, 1928 | { 1929 | "cell_type": "code", 1930 | "source": [ 1931 | "inversion_inicial = 15000 # Inversión inicial en dólares (negativo porque es un desembolso)\n", 1932 | "flujos = [-inversion_inicial, 5000, 6000, 7000, 8000] # Flujos de efectivo proyectados\n", 1933 | "\n", 1934 | "# Calcular la TIR\n", 1935 | "TIR_anual = npf.irr(flujos)\n", 1936 | "\n", 1937 | "# Mostrar la TIR como porcentaje\n", 1938 | "print(f\"La TIR del negocio es: {TIR_anual * 100:.2f}%\")" 1939 | ], 1940 | "metadata": { 1941 | "colab": { 1942 | "base_uri": "https://localhost:8080/" 1943 | }, 1944 | "id": "BC6cRQiAWYmX", 1945 | "outputId": "461e9e03-5b1c-4916-87ac-24eff4ecc9fc" 1946 | }, 1947 | "execution_count": 54, 1948 | "outputs": [ 1949 | { 1950 | "output_type": "stream", 1951 | "name": "stdout", 1952 | "text": [ 1953 | "La TIR del negocio es: 23.96%\n" 1954 | ] 1955 | } 1956 | ] 1957 | }, 1958 | { 1959 | "cell_type": "markdown", 1960 | "source": [ 1961 | "## Pregunta 5" 1962 | ], 1963 | "metadata": { 1964 | "id": "jYNmzvQYWYrE" 1965 | } 1966 | }, 1967 | { 1968 | "cell_type": "markdown", 1969 | "source": [ 1970 | "Una persona decide financiar una motocicleta cuyo precio de contado es $8,000. Se paga una cuota inicial de $2,000, y el saldo restante se financia con 12 pagos mensuales de $600 cada uno. Se desea determinar la TIR (Tasa Efectiva Mensual) implícita en este financiamiento." 1971 | ], 1972 | "metadata": { 1973 | "id": "eQuPt3xtXkHw" 1974 | } 1975 | }, 1976 | { 1977 | "cell_type": "code", 1978 | "source": [ 1979 | "precio_contado = 8000 # Precio de contado en dólares\n", 1980 | "cuota_inicial = 2000 # Cuota inicial en dólares\n", 1981 | "cuota = 600 # Pago mensual en dólares\n", 1982 | "n_cuotas = 12 # Número de cuotas\n", 1983 | "\n", 1984 | "# Flujos de efectivo\n", 1985 | "flujos = [- (precio_contado - cuota_inicial)] + [cuota] * n_cuotas\n", 1986 | "\n", 1987 | "# Calcular la TIR\n", 1988 | "TEM = npf.irr(flujos)\n", 1989 | "\n", 1990 | "# Mostrar la TIR como porcentaje\n", 1991 | "print(f\"La TIR o TEM implícita en el financiamiento es: {TEM * 100:.2f}%\")" 1992 | ], 1993 | "metadata": { 1994 | "colab": { 1995 | "base_uri": "https://localhost:8080/" 1996 | }, 1997 | "id": "uPEAyJllWYrE", 1998 | "outputId": "5dc48f9e-d69f-4e51-90f3-7769096f60eb" 1999 | }, 2000 | "execution_count": 55, 2001 | "outputs": [ 2002 | { 2003 | "output_type": "stream", 2004 | "name": "stdout", 2005 | "text": [ 2006 | "La TIR o TEM implícita en el financiamiento es: 2.92%\n" 2007 | ] 2008 | } 2009 | ] 2010 | }, 2011 | { 2012 | "cell_type": "markdown", 2013 | "source": [ 2014 | "## Pregunta 6" 2015 | ], 2016 | "metadata": { 2017 | "id": "E7UqgYNLWYua" 2018 | } 2019 | }, 2020 | { 2021 | "cell_type": "markdown", 2022 | "source": [ 2023 | "Una empresa desea implementar mejoras en su línea de producción con una inversión inicial de `$50,000`. Se espera que los ahorros generados sean de `$15,000, $20,000, $25,000 y $30,000` en los próximos cuatro años. Se busca calcular la TIR para analizar si la inversión es viable." 2024 | ], 2025 | "metadata": { 2026 | "id": "heNE2EjbX_iO" 2027 | } 2028 | }, 2029 | { 2030 | "cell_type": "code", 2031 | "source": [ 2032 | "inversion_inicial = 50000 # Inversión inicial en dólares (negativo porque es un desembolso)\n", 2033 | "flujos = [-inversion_inicial, 15000, 20000, 25000, 30000] # Ahorros generados anualmente\n", 2034 | "\n", 2035 | "# Calcular la TIR\n", 2036 | "TIR_anual = npf.irr(flujos)\n", 2037 | "\n", 2038 | "# Mostrar la TIR como porcentaje\n", 2039 | "print(f\"La TIR del proyecto es: {TIR_anual * 100:.2f}%\")" 2040 | ], 2041 | "metadata": { 2042 | "colab": { 2043 | "base_uri": "https://localhost:8080/" 2044 | }, 2045 | "id": "1FvwN59yWYua", 2046 | "outputId": "46529f51-6c56-4008-9fb6-d795edf04c14" 2047 | }, 2048 | "execution_count": 56, 2049 | "outputs": [ 2050 | { 2051 | "output_type": "stream", 2052 | "name": "stdout", 2053 | "text": [ 2054 | "La TIR del proyecto es: 24.89%\n" 2055 | ] 2056 | } 2057 | ] 2058 | } 2059 | ] 2060 | } 2061 | --------------------------------------------------------------------------------