#!/usr/bin/env python
# coding: utf-8
# # El número $e$. El número de las finanzas
# *Esta notebook fue creada originalmente como un blog post por [Raúl E. López Briega](http://relopezbriega.com.ar/) en [Matemáticas, análisis de datos y python](http://relopezbriega.github.io). El contenido esta bajo la licencia BSD.*
#
# ## Introducción
#
# El artículo de hoy se lo voy a dedicar a uno los números más fascinantes de las [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas), el número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e). Este número es de suma importancia, ya que lo podemos encontrar en una gran variedad de fenómenos, desde Física y Biología, hasta Finanzas, Arte y Música. Así como el famoso [$\pi$](https://es.wikipedia.org/wiki/N%C3%BAmero_%CF%80), gobierna el círculo, [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) gobierna el [Cálculo](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/) y los [Logaritmos](https://es.wikipedia.org/wiki/Logaritmo).
#
# ## ¿Qué es el número $e$?
#
# El número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) es una de las más importantes *constantes matemáticas*, pertenece al grupo de los [números irracionales](http://es.wikipedia.org/wiki/N%C3%BAmero_irracional), es decir, que el mismo no puede ser expresado como una [fracción](http://es.wikipedia.org/wiki/Fracci%C3%B3n) de dos [números enteros](http://es.wikipedia.org/wiki/Enteros) y su expansión decimal es infinita. Asimismo, también es un [número trascendental](http://es.wikipedia.org/wiki/N%C3%BAmero_trascendente), lo que quiere decir que tampoco puede ser expresado algebraicamente. Sus primeros dígitos son:
#
# $$e = 2.7182818284590452353602874713527\dots$$
#
# Otra cosa que hace a [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) sumamente interesante, es que es la base del [Logaritmo natural](https://es.wikipedia.org/wiki/Logaritmo_natural), es decir que si $\ln(x) = y$, entonces $e^y = x$. También podemos encontrar a [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), en la [función exponencial](https://es.wikipedia.org/wiki/Funci%C3%B3n_exponencial), $e^x$, la cual es la inversa de la función del [Logaritmo natural](https://es.wikipedia.org/wiki/Logaritmo_natural), y tiene la particularidad de que la [derivada](https://es.wikipedia.org/wiki/Derivada) de $e^x$, es la misma función $e^x$. Esta característica, es lo que que hace a [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) fundamental para el [Cálculo](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/).
#
# ## Historia del número $e$
#
# Para poder entender más en profundidad la naturaleza del número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), debemos recorrer un poco de su historia, que a diferencia de $\pi$, que tiene una historia milenaria, es relativamente reciente.
#
# ### Invención del Logaritmo
#
# La historia del número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) comienza en el siglo XVII, cuando [John Napier](https://es.wikipedia.org/wiki/John_Napier) inventó el concepto de [Logaritmo](https://es.wikipedia.org/wiki/Logaritmo). Pocas veces en la historia de la ciencia, un concepto matemático fue recibido con tanto entusiasmo por la comunidad científica, como fue el caso del [Logaritmo](https://es.wikipedia.org/wiki/Logaritmo). La idea básica detrás de este concepto abstracto es la siguiente: Si uno pudiera escribir cualquier número positivo como la potencia de otro número fijo (llamado base), entonces la multiplicación y la división de números pasaría a ser equivalente a sumar o restar sus potencias; lo que simplificaría y facilitaría los cálculos. Para entenderlo mejor, veamos un ejemplo, supongamos que tenemos la siguiente tabla de potencias de 2.
#
# | $n$ | -3 | -2 | -1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
# |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
# |$2^n$ | 1/8 | 1/4 | 1/2 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048 | 4096 |
#
# Ahora si quisiéramos saber el resultado de multiplicar 32 por 64; simplemente deberíamos buscar las potencias de estos dos números en la tabla anterior, 5 para 32 y 6 para 64, luego sumamos estos dos números, los que nos da como resultado 11 y por último si vamos a buscar el resultado de elevar 2 a la 11 potencia en la misma tabla, encontramos el resultado de nuestra multiplicación, que es 2048. Utilizando una simple tabla de [Logaritmos](https://es.wikipedia.org/wiki/Logaritmo), se podían resolver multiplicaciones y divisiones complejas en segundos, algo muy útil en el siglo XVII, dónde no existían las calculadoras!.
#
# Si bien [John Napier](https://es.wikipedia.org/wiki/John_Napier) desarrollo el concepto de [Logaritmo](https://es.wikipedia.org/wiki/Logaritmo), el mismo difiere un poco del concepto moderno que tenemos hoy en día; y tampoco fue el responsable de notar el poder [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) como base de los mismos. Tendríamos que esperar algunos años más hasta que [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) se apoderara por completo de los [Logaritmos](https://es.wikipedia.org/wiki/Logaritmo), como la base más natural para ellos. Veamos el camino que hubo que recorrer.
#
# ### El área de la hipérbola
#
# Un problema muy común en [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas), es el de encontrar el [área](https://es.wikipedia.org/wiki/%C3%81rea) de una figura plana, este proceso se conoce con el nombre de *cuadratura* o [integración](https://es.wikipedia.org/wiki/Integraci%C3%B3n). Desde que los matemáticos comenzaron a trabajar en estos problemas, una de las figuras que más ha resistido obstinadamente todos los intentos de cuadratura era la [hipérbola](https://es.wikipedia.org/wiki/Hip%C3%A9rbola), la cual esta definida por la función $f(x) = \frac{1}{x}$.
#
# Un matemático que se interesó por un tema muy cercano a este, también en el siglo XVII, fue [Pierre de Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat). [Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat) se interesó en la *cuadratura* de curvas cuya función general tiene la forma $f(x) = x^n$, dónde $n$ es un [número entero](http://es.wikipedia.org/wiki/Enteros). Estas curvas son llamadas generalmente parábolas. Utilizando el [método de exhaución](https://es.wikipedia.org/wiki/M%C3%A9todo_exhaustivo), el cuál explique en mi [artículo anterior](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/), [Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat) fue capaz de llegar a una fórmula general para encontrar el área de esta familia de curvas. La fórmula a la que arribó fue la siguiente:
#
# $$A = \frac{a^{n + 1}}{n + 1}$$
#
# Como podemos ver, esta no es ni más ni menos que la regla de [integración](https://es.wikipedia.org/wiki/Integraci%C3%B3n) para funciones de grado $n$.
#
# $$\int x^{n} \ dx = \frac{x^{n + 1}}{n + 1}$$
#
# Debemos recordar, sin embargo, que el trabajo de [Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat) fue hecho alrededor de 1640, aproximadamente unos 30 años antes de que [Newton](https://es.wikipedia.org/wiki/Isaac_Newton) y [Leibniz](https://es.wikipedia.org/wiki/Gottfried_Leibniz) establecieran esta fórmula como parte del [cálculo integral](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/). A pesar de que [Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat) pudo probar que su fórmula podía ser aplicada tanto para los casos de $n$ siendo un [entero](http://es.wikipedia.org/wiki/Enteros) positivo como negativo; hubo un caso que se le siguió escapando, el caso de $n = -1$, es decir el caso del [área](https://es.wikipedia.org/wiki/%C3%81rea) de la [hipérbola](https://es.wikipedia.org/wiki/Hip%C3%A9rbola), $f(x) = \frac{1}{x}$; ya que este caso hace al denominador de su formula ($n + 1$) igual a 0. A pesar de todos sus esfuerzos, [Fermat](https://es.wikipedia.org/wiki/Pierre_de_Fermat) nunca pudo llegar a resolver este caso.
#
# La luz recién llegaría en el año 1661, cuando [Christiaan Huygens](https://es.wikipedia.org/wiki/Christiaan_Huygens) se diera cuenta de que para el caso de $n = -1$, todos los rectángulos utilizados en la aproximación del [área](https://es.wikipedia.org/wiki/%C3%81rea) bajo la [hipérbola](https://es.wikipedia.org/wiki/Hip%C3%A9rbola), tenían la misma [área](https://es.wikipedia.org/wiki/%C3%81rea), es decir que a medida que la distancia crece geométricamente desde 0, las [área](https://es.wikipedia.org/wiki/%C3%81rea) se incrementan en la misma proporción. Lo que implica que la relación entre el [área](https://es.wikipedia.org/wiki/%C3%81rea) y la distancia, es [logarítmica](https://es.wikipedia.org/wiki/Logaritmo)!. Por tanto para resolver el problema del [área](https://es.wikipedia.org/wiki/%C3%81rea) de la [hipérbola](https://es.wikipedia.org/wiki/Hip%C3%A9rbola), $y = \frac{1}{x}$, simplemente deberíamos aplicar la función [logarítmica](https://es.wikipedia.org/wiki/Logaritmo) sobre $x$; el único problema restante, era encontrar la *base* de esa función [logarítmica](https://es.wikipedia.org/wiki/Logaritmo), que como ya se pueden ir imaginando, no es ni nada más ni nada menos que el número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e).
#
#
#
# Es decir, que entonces para resolver el [área](https://es.wikipedia.org/wiki/%C3%81rea) bajo la [hipérbola](https://es.wikipedia.org/wiki/Hip%C3%A9rbola), debemos calcular el [Logaritmo natural](https://es.wikipedia.org/wiki/Logaritmo_natural) de $x$. Lo que llevado a la notación actual del [cálculo integral](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/) equivale a decir que:
#
# $$\int \left(\frac{1}{x}\right) \ dx = \ln (x)$$
#
# Desde este momento en adelante, [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) comenzaría a convertirse en el amo y señor de los [Logaritmos](https://es.wikipedia.org/wiki/Logaritmo). Pero no se iba a quedar solo con eso, ya que aún quedaban por descubrirse otras importantes propiedades de este misterioso número.
#
# ### Euler
#
# Sin dudas, uno de los más grandes matemáticos de todos los tiempos fue [Leonhard Euler](https://es.wikipedia.org/wiki/Leonhard_Euler). Prácticamente no dejó una rama de las [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas) sin tocar, dejando su marca en campos tan diversos como el [análisis matemático](https://es.wikipedia.org/wiki/An%C3%A1lisis_matem%C3%A1tico), la [teoría de números](https://es.wikipedia.org/wiki/Teor%C3%ADa_de_n%C3%BAmeros), la [mecánica](https://es.wikipedia.org/wiki/Mec%C3%A1nica) y la [hidrodinámica](https://es.wikipedia.org/wiki/Hidrodin%C3%A1mica), la [cartografía](https://es.wikipedia.org/wiki/Cartograf%C3%ADa), la [topología](https://es.wikipedia.org/wiki/Topolog%C3%ADa), la [óptica](https://es.wikipedia.org/wiki/%C3%93ptica) y la [astronomía](https://es.wikipedia.org/wiki/Astronom%C3%ADa). A él también le debemos muchos de los símbolos matemáticos que usamos hoy en día, como ser, $i, \ f(x), \ \pi$ y el mismo símbolo del número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e). La más influyente de sus numerosas obras fue su *Introductio in analysin infinitorum*, una obra en dos volúmenes publicados en 1748 y considerada como la base de [análisis matemático](https://es.wikipedia.org/wiki/An%C3%A1lisis_matem%C3%A1tico) moderno. En esta obra, [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler) convierte a la *[función](https://es.wikipedia.org/wiki/Funci%C3%B3n_matem%C3%A1tica)* en el concepto central del [análisis](https://es.wikipedia.org/wiki/An%C3%A1lisis_matem%C3%A1tico). Su definición de *[función](https://es.wikipedia.org/wiki/Funci%C3%B3n_matem%C3%A1tica)* es la que se suele utilizar hoy en día tanto en [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas) aplicadas, como en [Física](https://es.wikipedia.org/wiki/F%C3%ADsica).
#
# En el *Introductio*, [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler), hace notar por primera vez, el rol central que tiene el número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), y más precisamente la [función exponencial](https://es.wikipedia.org/wiki/Funci%C3%B3n_exponencial) $e^x$, y su función inversa, la [función logarítmica](https://es.wikipedia.org/wiki/Logaritmo) $\ln x$ para el [Cálculo](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/). [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler) puso a éstas dos últimas funciones en iguales condiciones, al darles definiciones independientes a cada una de ellas. Como ser:
#
# $$e^x = \lim_{n \to \infty} \left(1 + \frac{x}{n}\right)^n
# \\
# \\
# \\
# \ln x = \lim_{n \to \infty} n(x^{1/n} - 1)$$
#
# Finalmente, a [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler) también le debemos una de las [ecuaciones](https://es.wikipedia.org/wiki/Ecuaci%C3%B3n) más famosas e increíbles de todas las [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas). La ecuación:
#
# $$e^{i\pi} + 1 = 0$$
#
# En una sola fórmula, [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler) logró conectar a las cinco más importantes *constantes* de las [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas), y también tres de las más importantes *operaciones* matemáticas (adición, [multiplicación](https://es.wikipedia.org/wiki/Multiplicaci%C3%B3n) y [exponenciación](https://es.wikipedia.org/wiki/Exponenciaci%C3%B3n)). Las cinco *constantes* simbolizan las cuatro principales ramas de las [Matemáticas](https://es.wikipedia.org/wiki/Matem%C3%A1ticas) clásicas: la [Aritmética](https://es.wikipedia.org/wiki/Aritm%C3%A9tica), representada por el 0 y el 1; el [Álgebra](https://es.wikipedia.org/wiki/%C3%81lgebra) por $i$; la [Geometría](https://es.wikipedia.org/wiki/Geometr%C3%ADa), por $\pi$; y el [Análisis](https://es.wikipedia.org/wiki/An%C3%A1lisis_matem%C3%A1tico), representado por [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e).
#
# A partir de la obra de [Euler](https://es.wikipedia.org/wiki/Leonhard_Euler), el número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), se convirtió también en amo y señor del [Cálculo](http://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/); gobernando así, tanto a los [Logaritmos](https://es.wikipedia.org/wiki/Logaritmo) como al [Análisis](https://es.wikipedia.org/wiki/An%C3%A1lisis_matem%C3%A1tico).
#
# ## Calculando a $e$
#
# Existen muchas maneras de calcular al número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), por ejemplo una forma de calcularlo es aplicando el siguiente [límite](https://es.wikipedia.org/wiki/L%C3%ADmite_matem%C3%A1tico):
#
# $$e = \lim_{n \to \infty} \left(1 + \frac{1}{n}\right)^n$$
#
# A medida que $n$ se va haciendo cada vez más grande, vamos ganando precisión en el cálculo de los decimales de [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e).
# In[1]:
#
get_ipython().run_line_magic('matplotlib', 'inline')
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
def f(n):
return (1 + 1.0 / n)**n
n = np.array([1, 5, 10, 100, 1000, 10000, 100000, 1000000, 100000000 ])
y = f(n)
tabla = pd.DataFrame(list(zip(n, y)), columns=['n', 'e'])
tabla
# In[2]:
#
# Graficando (1 + 1/n)**n
n = np.arange(1, 100000)
plt.figure(figsize=(8,6))
plt.title(r"Graficando $(1 + 1/n)^n$")
plt.xlabel('n')
plt.ylabel(r"$(1 + 1/n)^n$")
plt.plot(n, f(n))
plt.axhline(y=np.e, color = 'r', label='$e$')
plt.xlim([0, 100])
plt.legend()
plt.show()
# Como podemos ver, tanto del ejemplo numérico como del gráfico, esta definición de [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), tarda bastante en *[converger](https://es.wikipedia.org/wiki/Serie_convergente)* hacia el valor exacto. Necesitamos un valor bastante grande de $n$ para ganar precisión.
#
# Otra definición de [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) que podemos utilizar para calcularlo y que *[converge](https://es.wikipedia.org/wiki/Serie_convergente)* mucho más rápido, es su definición como una serie infinita de [factoriales](https://es.wikipedia.org/wiki/Factorial).
#
# $$e = \frac{1}{0!} + \frac{1}{1!} + \frac{1}{2!}+ \frac{1}{3!}+ \frac{1}{4!}+ \frac{1}{5!}+ \frac{1}{6!}+ \frac{1}{7!} + \dots$$
#
# Por último, también podríamos expresar a [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e), utilizando [fracciones continuas](https://es.wikipedia.org/wiki/Fracci%C3%B3n_continua), del siguiente modo:
#
#
#
# Al igual que ocurre con el número $\pi$ se conocen millones de dígitos del número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e). Por ejemplo, para generar la imagen de la cabecera del artículo, yo utilicé 390 decimales de [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e).
#
# ## $e$ en las finanzas
#
# Como comenté a lo largo de todo el artículo, nos podemos topar con el número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) en infinidad de situaciones; pero una de las áreas donde más lo podemos encontrar es en la finanzas, ya que [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) se encuentra escondido en la definición de una de las formulas más fundamentales del [Cálculo financiero](https://es.wikipedia.org/wiki/Matem%C3%A1tica_financiera), la fórmula del [interés compuesto](https://es.wikipedia.org/wiki/Inter%C3%A9s_compuesto). Por ejemplo, si repasamos la formula del [valor futuro](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero):
#
# $$FV = PV \left(1 + \frac{r}{n}\right)^n$$
#
# donde $FV$ es el [valor futuro](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero); $PV$ es el [valor presente](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero) de nuestra inversión; $r$ es la tasa de interés anual, expresada como valor decimal; y $n$ es el número de períodos.
#
# Y si miramos detenidamente a esta [ecuación](https://es.wikipedia.org/wiki/Ecuaci%C3%B3n), podemos ver cierta similitud con la definición de [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) que dimos más arriba.
#
# $$e = \lim_{n \to \infty} \left(1 + \frac{1}{n}\right)^n$$
#
# Es más, si tomáramos el caso hipotético en el que el [valor presente](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero) sea igual a 1, es decir $PV = 1$ y la tasa de interés sea del 100 %, $r = 1$. Podemos ver que la fórmula del [valor futuro](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero) se convierte en la definición del número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e)!.
#
# Por esta razón, al número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) lo vamos a encontrar en infinidad de situaciones en el [Cálculo financiero](https://es.wikipedia.org/wiki/Matem%C3%A1tica_financiera). Por ejemplo, la definición de la fórmula de la [capitalización continua](https://es.wikipedia.org/wiki/Capitalizaci%C3%B3n_continua) utiliza al número [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) explícitamente:
#
# $$FV = PV \cdot e^{rt}$$
#
# donde $FV$ es el [valor futuro](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero); $PV$ es el [valor presente](https://es.wikipedia.org/wiki/Valor_tiempo_del_dinero) de nuestra inversión; $r$ es la tasa de interés efectiva y $t$ es el tiempo de capitalización.
#
# Éstos son sólo algunos casos, a medida que nos adentramos más en la complejidades del [Cálculo financiero](https://es.wikipedia.org/wiki/Matem%C3%A1tica_financiera) vamos a ver que [$e$](https://es.wikipedia.org/wiki/N%C3%BAmero_e) continua apareciendo una y otra vez; pero eso va a quedar para próximos artículos!
# Aquí concluye el artículo, espero les haya gustado y hayan sentido cierta fascinación por este místico número que encontramos por todas partes!
#
# Saludos!
#
# *Este post fue escrito utilizando Jupyter notebook. Pueden descargar este [notebook](https://github.com/relopezbriega/relopezbriega.github.io/blob/master/downloads/numbere.ipynb) o ver su versión estática en [nbviewer](http://nbviewer.ipython.org/github/relopezbriega/relopezbriega.github.io/blob/master/downloads/numbere.ipynb).*