Archivo de la categoría: Política

Modelo de epidemia básico con álgebra lineal y Python

Introducción

En esta entrada voy a platicar de una forma en la que se puede plantear un modelo de epidemia básico usando álgebra lineal. Es un modelo bastante simple, sin embargo a partir de él se pueden verificar varias de las lecciones que hemos estado aprendiendo durante la crisis del coronavirus. A grandes rasgos, haremos algunas suposiciones razonables para plantear una epidemia como un modelo de Markov.

Ya que hagamos esto, estudiaremos dos escenarios posibles: en el que la gente sale de sus casas y en el que la gente se queda en sus casas. Para ello usaremos las librerías NumPy y Matplotlib de Python para hacer las cuentas y generar bonitas gráficas como la siguiente:

Gráfica de evolución de la población con contagio bajo, bajo las suposiciones de nuestro modelo de epidemia básico
Ejemplo del tipo de gráficas que obtendremos en la entrada

En particular, veremos que incluso de este modelo simple se notan contrastes importantes en ambos escenarios. En particular, se puede deducir la importancia de #QuédateEnCasa para retrasar el contagio y no saturar los sistemas de salud.

Advertencia: De ninguna forma esta entrada pretende modelar, específicamente, la evolución del coronavirus. Para ello hay expertos trabajando en el tema, y están usando modelos mucho más sofisticados que el que platicaré. Esta entrada es, en todo caso, una introducción al tema y ayuda a explicar, poco a poco, algunos de los argumentos que se usan en modelación matemática de epidemias.

Suposiciones y modelo tipo Markov

Comenzemos a plantear el modelo de epidemia básico. Pensemos en una enfermedad imaginaria, que se llama “Imagivid” y en un territorio imaginario que se llama “Imagilandia”, donde la población inicial es de 100,000 habitantes sanos, en el día 0.

Vamos a pensar que una persona puede estar en alguno de los siguientes cinco estados:

  • Sano
  • Síntomas leves
  • Síntomas graves
  • Recuperado
  • Fallecido

Para cada día n, consideremos el vector

    \[X(n)=(s(n),l(n),g(n),r(n),f(n))\]

de 5 entradas cuyas entradas son los sanos, de síntomas leves, de síntomas graves, recuperados y fallecidos al día n. Por ejemplo al día 0 dijimos que todos están sanos, así que X(0)=(100000,0,0,0,0).

Haremos las siguientes suposiciones de cómo se pasa de un estado a otro

  • Los únicos fallecidos del periodo de tiempo que tendremos son por Imagivid. Sólo se puede fallecer de ello tras tener síntomas graves. Si alguien tiene síntomas graves, entonces tiene cierta probabilidad g_f de fallecer al día siguiente, g_r de recuperarse y por lo tanto 1-g_r-g_f de quedarse como enfermo grave.
  • Imagivid se contagia de persona a persona, y de un día a otro una persona tiene probabilidad s_l de pasar de estar sana a tener síntomas leves. No se puede pasar directamente a tener síntomas graves, recuperarse o morir. De modo que se queda sana de un día a otro con probabilidad 1-s_l
  • Si una persona tiene síntomas leves, tiene probabilidad l_g de pasar a tener síntomas graves y l_r de pasar a recuperarse. Por lo tanto, tiene probabilidad 1-l_g-l_r de quedarse con síntomas leves.
  • Una persona que se recupera desarrolla inmunidad a Imagivid, así que se queda en ese estado.
  • Una persona que fallece, se queda en ese estado.

En otras palabras, tenemos el siguiente diagrama de cómo se pasa de tener un estado a otro, en donde los números en las flechas muestran la probabilidad de pasar de un estado a otro:

Diagrama de probabilidades de transición entre estados en el modelo de epidemia básico
Diagrama de probabilidades de transición

En lenguaje técnico, estamos modelando a la epidemia como un proceso de Markov. Sin embargo, no es necesario entender toda la teoría de procesos de Markov para entender lo que sigue, pues la idea es bastante intuitiva.

Con estos números y suposiciones, podemos entender, en valor esperado, cómo será el vector de población

    \[X(n+1)=(s(n+1), l(n+1), g(n+1), r(n+1), f(n+1))\]

si sabemos cómo es el vector

    \[X(n)=(s(n), l(n), g(n), r(n), f(n)).\]

Por ejemplo, podemos esperar que la cantidad de recuperados al día n+1 sea

    \[r(n+1)=l_r \cdot l(n)+ g_r \cdot g(n) + 1 \cdot r(n),\]

pues de los de síntomas leves del día n habrá una proporción l_r de ellos que se recuperen, de los graves del día n habrá una proporción g_r de ellos que se recuperen, y todos los recuperados del día n se quedan recuperados. De esta forma, obtenemos el siguiente sistema de ecuaciones de lo que podemos esperar:

    \begin{align*}s(n+1)&=(1-s_l) \cdot s(n)\\l(n+1)&=s_l \cdot s(n) + (1-l_r-l_g) \cdot l(n)\\g(n+1)&= l_g \cdot l(n) + (1-g_r-g_f) \cdot g(n)\\ r(n+1)&=l_r \cdot l(n) + g_r \cdot g(n) + 1 \cdot r(n)\\ f(n+1)&=g_f \cdot g(n) + 1 \cdot f(n),\end{align*}

Este sistema de ecuaciones se puede escribir de una forma mucho más compacta. Si definimos la matriz

    \[A=\begin{pmatrix} 1-s_l & 0 & 0 & 0 & 0 \\s_l & 1-l_r-l_g & 0 & 0 & 0 \\0 & l_g & 1-g_r-g_f & 0 & 0 \\ 0 & l_r & g_r & 1 & 0\\ 0 & 0 & g_f & 0 & 1 \end{pmatrix},\]

las ecuaciones anteriores se pueden abreviar simplemente a

    \[X(n+1)=AX(n).\]

De esta forma, si queremos entender qué esperar del día n, basta hacer la multiplicación matricial X(n)=A^n X(0).

Un ejemplo concreto en Python

El modelo de epidemia básico que planteamos arriba depende de cinco parámetros:

  • s_l, la probabilidad de pasar de estar sano a tener síntomas leves,
  • l_g, la probabilidad de pasar de tener síntomas leves a graves,
  • l_r, la probabilidad de pasar de tener síntomas leves a recuperarse,
  • g_r, la probabilidad de pasar de tener síntomas graves a recuperarse y
  • g_f, la probabilidad de pasar de tener síntomas graves, a fallecer.

Hagamos un ejemplo concreto, en el que estos parámetros para Imagivid son los siguientes: s_l=0.30, l_g=0.10, l_r=0.20, g_r=0.10 y g_f=0.10. En “la vida real”, para hacer una modelación correcta se tienen que estimar estos parámetros de lo que ya se sepa de la enfermedad.

Si ponemos estos valores, la matriz que obtenemos es la siguiente:

    \[A=\begin{pmatrix} 0.7 & 0 & 0 & 0 & 0 \\0.3 & 0.7 & 0 & 0 & 0 \\0 & 0.1 & 0.8 & 0 & 0 \\ 0 & 0.2 & 0.1 & 1 & 0\\ 0 & 0 & 0.1 & 0 & 1 \end{pmatrix}.\]

Vamos a usar la fórmula que obtuvimos en la sección anterior para entender cómo va evolucionando la epidemia de Imagivid. Para no hacer las cuentas a mano, usaremos Python. Trabajaremos con Python 3 y usaremos Numpy (para las cuentas de matrices) y Matplotlib (para visualizar gráficas). En el siguiente código definimos la población inicial, los parámetros de transición y la matriz de la sección anterior.

import numpy as np
import matplotlib.pyplot as plt
# En cada momento tendremos un vector
# de la distribución de la población
# (sanos, sintomas leves, sintomas graves,
# recuperados, fallecidos)

# Población inicial
x_0=(100000,0,0,0,0)

# Definimos las probabilidades de
# transición

S_L = 0.30
L_G = 0.10
L_R = 0.20
G_R = 0.10
G_F = 0.10

# Definimos la matriz A
A=np.array([[1-S_L,0,0,0,0],[S_L,1-L_G-L_R,0,0,0],[0,L_G,1-G_R-G_F,0,0],[0,L_R,G_R,1,0],[0,0,G_F,0,1]])

Vamos a estudiar la evolución de Imagivid por 60 días. Por ello, vamos a hacer un bucle en Python que calcule cómo son los vectores de población de todos estos 60 días. Para empezar a entender cómo funciona nuestro modelo de epidemia, también pediremos que muestre los valores para los días 1, 2 y 3.

# Encontramos la evolución de la
# epidemia los primeros 60 días
evolution=[x_0]
for j in range(60):
    evolution.append(np.matmul(A,evolution[-1]))
# Mostramos lo que pasa los primeros
# 3 días
for j in range(1,4):
    print(evolution[j])

Los valores que obtenemos son

    \begin{align*}X_1 &= (70000,30000,0,0,0)\\X_2 &= (49000, 42000, 3000, 6000)\\X_3 &= (34300, 44100, 6600, 14700, 300).\end{align*}

Esto nos dice que al primer día hay 70000 sanos y 30000 con síntomas leves. En los primeros dos días no hay fallecidos, pues de acuerdo a nuestro modelo de epidemia un habitante primero debe presentar síntomas leves, luego graves y luego ya tal vez fallece. Al día 3 el modelo predice 300 fallecidos.

Esto son sólo tres días, pero sería bueno poder entender qué sucede en todo el periodo de 60 días. Para ello, vamos a pedir a Python que nos muestre una gráfica de cómo evoluciona la población a través del tiempo. Para ello hacemos lo siguiente

# Hacemos gráfica para mostrar la evolución de todo el tiempo
plt.plot([j[0] for j in evolution], label="Sanos")
plt.plot([j[1] for j in evolution], label="Síntomas leves")
plt.plot([j[2] for j in evolution], label="Síntomas graves")
plt.plot([j[3] for j in evolution], label="Recuperados")
plt.plot([j[4] for j in evolution], label="Fallecidos")
plt.title("Evolución de la población, contagio=0.30")
plt.legend()
plt.show()

Obtenemos la siguiente imagen

Evolución de la población con contagio 0.30

La gráfica tiene sentido es de esperarse que, tras cierta cantidad de tiempo, ya sólo haya habitantes recuperados y fallecidos. Notemos que hay un momento el el que la población con síntomas leves es de aproximadamente 40,000 habitantes y que la población con síntomas graves llega a ser, en algún momento, como de 12,000 habitantes.

¿Qué sucede al final de nuestro periodo de estudio? Si le pedimos a Python que nos de las últimas dos entradas del vector de población al día 60,

#Mostramos recuperados y fallecidos al último día
print(evolution[-1][3])
print(evolution[-1][4])

obtenemos \sim 83,333 recuperados y \sim 16,666 fallecidos al día 60, de modo que en este escenario la epidemia cobró 16,666 vidas de Imagilandia. De hecho una observación muy importante, viendo la gráfica, es que ya se tenía prácticamente esta cantidad de víctimas desde el día 30.

Disminuir la tasa de infección para retrasar la epidemia

Antes de que sucediera la tragedia, las autoridades de Imagilandia estudiaron el modelo de epidemia que acabamos de mencionar y se dieron cuenta de que tenían que tomar una acción inmediata para mejorar la situación. Decidieron que una cosa muy importante para que la situación mejorara era pedirle a la gente que se quedara en sus casas lo más posible, pues con ello se disminuiría la tasa de contagio. Para ello sacaron la campaña #QuédateEnCasa. Las personas hicieron caso.

Habiendo más personas sanas y enfermas en su propia casa, ahora ni los enfermos pueden contagiar a sanos, ni los sanos estar expuestos a enfermos. Así, una persona sana ahora tiene menor probabilidad de estar enferma al día siguiente. Supongamos que s_l pasa de ser 0.30 a ahora ser 0.05. De esta forma, ahora tenemos una nueva matriz que ayuda a calcular la evolución de la pandemia:

    \[A=\begin{pmatrix} 0.95 & 0 & 0 & 0 & 0 \\0.05 & 0.7 & 0 & 0 & 0 \\0 & 0.1 & 0.8 & 0 & 0 \\ 0 & 0.2 & 0.1 & 1 & 0\\ 0 & 0 & 0.1 & 0 & 1 \end{pmatrix}.\]

Vamos a pedirle de nuevo a Python que haga las cuentas para los primeros 60 días bajo las suposiciones de nuestro modelo de epidemia y que nos muestre una gráfica de la evolución de la población.

# Definimos las probabilidades de transición, que son iguales salvo que ahora la tasa de contagio es menor, y por lo tanto S_L es menor

S_L = 0.05
L_G = 0.10
L_R = 0.20
G_R = 0.10
G_F = 0.10

# Definimos la matriz A
A=np.array([[1-S_L,0,0,0,0],[S_L,1-L_G-L_R,0,0,0],[0,L_G,1-G_R-G_F,0,0],[0,L_R,G_R,1,0],[0,0,G_F,0,1]])

evolution2=[x_0]
for j in range(60):
    evolution2.append(np.matmul(A,evolution2[-1]))

plt.plot([j[0] for j in evolution2], label="Sanos")
plt.plot([j[1] for j in evolution2], label="Síntomas leves")
plt.plot([j[2] for j in evolution2], label="Síntomas graves")
plt.plot([j[3] for j in evolution2], label="Recuperados")
plt.plot([j[4] for j in evolution2], label="Fallecidos")
plt.title("Evolución de la población, contagio=0.05")
plt.legend()
plt.show()

La gráfica que obtenemos es la siguiente:

Evolución de la población con contagio 0.05

Una cosa fantástica en este escenario es que nunca hay muchas personas enfermas simultáneamente. En el peor día, parece haber como 12,000 personas enfermas con síntomas leves, y parece que nunca hay más de 6000 personas con síntomas graves. ¿Qué sucede con la mortalidad? Si le pedimos a Python que nos diga el número de habitantes recuperados y fallecidos al día 60,

print(evolution2[-1][3])
print(evolution2[-1][4])

obtenemos \sim 78,419 recuperados y \sim 15,438 fallecidos. Esto es ligeramente mejor que en la situación anterior, en donde había \sim 16,000 fallecidos. Donde sí hay una diferencia es en lo que sucede al día 30. Si pedimos a Python que nos muestre la cantidad de fallecidos al día 30 en ambos escenarios obtenemos lo siguiente.

print(evolution[30][4])
print(evolution2[30][4])

En el primer escenario, en el que la gente no se queda en casa, al día 30 tenemos \sim 16,493 fallecidos, que es prácticamente ya todos los que habrá. Cuando la gente se queda en casa, al día 30 sólo hay \sim 10,963, una buena parte menos.

Esto parece estar mejor, sin embargo, el tiempo va a seguir pasando, y de todas formas llegaremos al día 60, en donde ambos escenarios son muy parecidos ¿Por qué entonces todo el esfuerzo de pedirle a la gente que se quede en casa, si la diferencia es mínima? Porque el tiempo es oro.

La carrera contra el tiempo

Hay muchas razones por las cuales es conveniente retrasar la epidemia de Imagivid en Imagilandia, aunque el modelo sencillo que mostramos arriba muestre qe a los 60 días parecería que habrá la misma cantidad de fallecidos.

Primero, es importante retrasar los contagios pues existe la posibilidad de que los científicos de Imagilandia entiendan mejor a Imagivid y, por ejemplo, desarrollen una vacuna o un tratamiento. ¿Qué sucedería si los científicos encuentran una cura al día 30? En el primer escenario sólo se salvan unas \sim 150 vidas, pero en el segundo escenario se salvan unas \sim 4,500, osea, unas \sim 4350 más. En otras palabras, en el primer escenario el desarrollo científico llega demasiado tarde.

Segundo, también es importante retrasar la epidemia pues permite tener el número de casos simultáneos bajo control. Esto ya lo discutimos un poco arriba, pero pidamos a Python una gráfica más, para poder discutirlo de manera más clara. Supondremos, además, que Imagilandia cuenta con solamente 6000 camas de hospital en donde se pueden tratar los casos severos de Imagivid, y le pediremos a Python que ponga esto como una línea horizontal.

plt.plot([j[1] for j in evolution2], color="green", linestyle=":", label="Leves, Contagio=0.05")
plt.plot([j[2] for j in evolution2], color="green", label="Severos, Contagio=0.05")
plt.plot([j[1] for j in evolution], color="red", linestyle=":", label="Severos, Contagio=0.30")
plt.plot([j[2] for j in evolution], color="red", label="Severos, Contagio=0.30")
plt.hlines(6000,0,60, color="black", label="Capacidad sistema salud")
plt.title("Enfermos a través del tiempo")
plt.legend()
plt.plot()

Obtenemos la siguiente gráfica:

Comparación de enfermos leves y graves. Rojo es con alto contagio y verde con bajo.

Cuando la gente sí se queda en sus casas y la tasa de contagio es baja (en verde), siempre hay suficiente espacio en el sistema de salud para tratar a a los enfermos graves.

Cuando la gente no se queda en sus casas y la tasa de contagio es alta (en rojo), notemos que los casos severos sobrepasan al sistema de salud. Aproximadamente entre los días 3 y 15 se tienen muchos enfermos graves que no podrán ser atendidos correctamente. Por ejemplo, al día 9 hay aproximadamente \sim 6000 enfermos graves por encima de la capacidad del sistema de salud. Sin atención médica, probablemente en vez de que sólo fallezcan el 10\% de ellos (según nuestro modelo), fallecerán casi todos, dando 5400 víctimas más que no hemos contado.

De esta forma, siguiendo los consejos de quedarse en casa, la población de Imagilandia puede salvar, potencialmente, \sim 4350 personas por la vacuna y \sim 5400 personas por evitar saturar el sistema de salud, osea, salvar unas \sim 9750 vidas. Para ello es necesario que las autoridades hagan el llamado a quedarse, y que la población de Imagilandia haga caso. De aquí la importancia del #QuédateEnCasa.

Más contenido

Todo el código de Python del modelo lo corrí en una libreta de Jupyter. Puedes ver una versión en PDF de todo el código a continuación.

Si quieres el archivo de Jupyter para jugar con el modelo, puedes obtenerlo en el GitHub del proyecto: https://github.com/leomtz/linear-epidemid.

El modelo de epidemia que presentamos es una aplicación muy sencilla de álgebra lineal. En este blog hemos estado subiendo material de un curso de álgebra lineal que se imparte en la UNAM, y que ahora estamos impartiendo a distancia por la contingencia. A continuación ponemos el enlace a este curso y a otro material que te puede interesar.

Una explicación breve sobre delitos graves y modificaciones de la ley

Recientemente la Cámara de Diputados y la Cámara de Senadores en México están discutiendo acerca de actualizar la lista de delitos graves en la Constitución. Van más detalles para entender el fenómeno completo.

Como contexto, cuando a una persona se le acusa de un crimen, típicamente puede llevar su juicio “en libertad” si paga una “fianza” (un monto de dinero específico).

“Delito grave” se puede entender como una expresión coloquial, o como una expresión legal. Como expresión coloquial hay muchas cosas que como sociedad creemos que son graves. Como figura legal, que algo sea “delito grave” quiere decir que la forma en la que se trata al acusado es distinta. Muy concretamente, bajo una acusación de “delito grave” al acusado se le exige llevar a cabo su juicio en prisión, mientras se determina su culpabilidad. A esto se le llama “prisión preventiva”. A partir de aquí sólo usaré el término en su forma legal.

Al realizarse un cambio de ley para cambiar qué delitos entran o no a la lista de delitos graves se necesitan poner principalmente dos cosas en la balanza:

  • Por un lado, no se pueden poner demasiados delitos en la lista pues esto atenta en derechos humanos al negar la presunción de inocencia en más situaciones. Aquí se tienen que escuchar a las organizaciones de derechos humanos
  • Por otro lado, se tienen que agregar delitos en los que el daño potencial que el acusado pudiera hacer sobrepasan por mucho el hecho de tener a un inocente detenido. Aquí se tienen que escuchar a las víctimas de los delitos y ponderar el daño total hecho.

Estas no son preguntas legales fáciles. La iniciativa que ahora está rondando en el Senado y el Congreso busca encontrar un balance correcto entre qué agregar y qué no. Algo que me gustaría dejar claro es que ni el Senado ni el Congreso están quitando delitos graves de la Constitución, sino que están decidiendo entre cuales agregar y cuáles no.

Los de la imagen a la izquierda son los que ya están, y seguirán estando. Los de la derecha son los que parece ser que ambas cámaras aprueban. Algo que circulan actualmente las noticias es que el Senado quiere poner también los siguientes:

  • Abuso contra menores
  • Feminicidio
  • Robo a casa habitación
  • Robo a transporte de carga
  • Desaparición forzada
  • Delitos en materia de armas de fuego y explosivos

Yo estoy de acuerdo con que se incluya abuso a menores y desaparición forzada. Estoy de acuerdo con que se agregue feminicidio, pero no se si legalmente ya entra en la prisión preventiva del homicidio. Con robo a casa y a transporte, no me queda claro que la balanza sea suficiente como para privar de libertad sin sentencia. Finalmente, el último ¡ya es! No entiendo por qué lo ponen en la lista.

Update: Ya me contaron que acerca del último punto parece ser que lo que está a discusión es “portar armas exclusivas para los militares”.

Para los interesados, pueden consultar la nota de Animal Político y la Constitución:

http://www.ordenjuridico.gob.mx/Constitucion/articulos/19.pdf

Mapa de ductos de PEMEX

En esta entrada les comparto un precioso mapa interactivo de los ductos que surten los hidrocarburos del país. Fue hecho por CartoCrítica, una iniciativa civil de información. La hicieron con datos públicos, pero fue hecha con dificultades debido a que los datos estaban esparcidos por ahí y las instancias de gobierno no les dieron los datos en un formato de fácil acceso. Es un proyecto en curso, pero ya tiene muchísima información disponible.

Este es el enlace: http://www.cartocritica.org.mx/2017/ductos/

Mapa de ductos de petróleo. Ve a CartoCrítica para la versión interactiva.

Como datos curiosos:

  • La longitud total de ductos es de 68,843 km, como 1.7 veces darle la vuelta a la tierra
  • La mayoría de ellos no fueron construidos con medidas de vigilancia o seguridad
  • Son hasta de 1.25 metros de diámetro
  • Antes de este esfuerzo, no había forma de consultar esta red de manera sencilla por “razones de seguridad”, cuando en realidad su ubicación debe ser transparente debido a los estudios ambientales que se tienen que hacer para su construcción
  • El uso de ductos es “relativamente reciente”. Antes la mayor parte de la distribución se hacía por pipas y por allá de los ~2000 se impulsó construir más ductos para volver la distribución más ágil y barata.

En ese momento la idea de construirlos fue buena, pero en retrospectiva deja cosas que desear a la implementación debido a la facilidad de huachicoleo, y otros problemas que han traido (ambientales, por ejemplo).

Tarea: ¿Quiénes fueron los Secretarios de Energía en el sexenio 2000-2006?

México, economía, finanzas y AMLO

Introducción

En mis publicaciones he insistido en la importancia de compartir el conocimiento, así que hoy invertí más tiempo para contarles de temas económicos y de mercados financieros que hace algunos años traduje para KhanAcademy, así como cosas que aprendí cuando me preparé para el examen general de matemáticas financieras durante el doctorado (¿o finanzas matemáticas? Ya no recuerdo). Hoy hablaré de algunos indicadores financieros: inversión extranjera, fortaleza del peso y la BMV. Esta es la versión de blog de una publicación que originalmente puse en Facebook separada en cuatro posts.

Como últimamente, será a través de temas de política actual. El plan es plantear los datos del contexto mexicano actual, ofrecer los comentarios que tengo desde mi intuición matemática y financiera, y dar enlaces a fuentes. Igual si digo algo raro, agradecería a mis amigos actuarios y economistas que lo hagan notar y compartan cómo entender mejor el tema.

Para los tres indicadores que veré se tiene el siguiente fenómeno: primero incertidumbre y molestias. Algunos días después se nota un manejo responsable de las decisiones. Finalmente, se recupera estabilidad, y se queda una tendencia positiva. Siento que esto nos va a pasar muchas veces más en este sexenio en varias áreas.

Inversión extranjera

Intro:Hay países con dinero de sobra y países que necesitan dinero para sus proyectos. Los que tienen de sobra eligen cómo “invertir” su dinero y esto depende de la confianza que tengan en el país destino. Para medir esta confianza se puede ver el porcentaje de la deuda mexicana que tienen los extranjeros.

Datos:

  • Los indicadores muestran una baja de inversión extranjera cuando se canceló el NAIM
  • Después vino la propuesta de recompra y que se manejaría responsablemente teniendo en cuenta los intereses locales y de los inversionistasVieron que el Presupuesto Federal tiene responsabilidad fiscal
  • Tras esto, los indicadores muestran una recuperación de la confianza y tendencia a la alta

Mis comentarios: La cancelación del NAIM fue abrupta (encuesta rara) y financieramente difícil (incertidumbre). No me gustó que se alteraran los mercados. Dada la cancelación del NAIM (que pudiéramos discutir ad nauseam, pero no es el punto ahora), me alegra que la contrapropuesta haya sido un presupuesto fiscal responsable y austero. Me alegra que varios inversionistas depositen su confianza en el nuevo proyecto aeroportuario, con las condiciones que puso el gobierno. Tras la cancelación era fundamental recuperar esta confianza.

Adicionalmente, en la reunión que hubo con el sector financiero hace unos días se establecieron varios estímulos para fomentar la inversión (interna y externa) y fortalecer la bolsa. Y más aún, en la reunión diplomática se pidió a embajadores y cónsules promover la inversión extranjera (entre otras cosas).

Fuentes: 

Fortaleza del peso

Intro: Ahora, acerca del peso. Si sólo comparamos el peso contra el dólar, puede que haya efectos del cierre gubernamental en EU que no estemos viendo. Por eso para complementar los datos me fijo en los euros también. Tomo como periodo el último mes y uso XE para los cálculos.

Datos:

  • Pesos por dólar. Alto: 20.48, precio actual: 19.16. Tendencia a la baja
  • Pesos por euro. Alto: 23.15, precio actual: 22.08. Tendencia a la baja

Mis comentarios: Acuérdense que el precio de una divisa está dado por muchos factores. Sin embargo, también sirve como subindicador para hablar acerca de la confianza hacia el país que la emite. Personalmente, pronto voy a comprar pesos con los euros que tengo, jajaja. De manera más importante, me alegra esta tendencia. En Olimpiadas de Matemáticas, por ejemplo, es muy importante pues los precios de boletos de avión se pueden disparar de un momento a otro de acuerdo al tipo de cambio.

Fuentes:

Mercado bursátil

Intro: Tienes un país. Quieres empresas que compitan entre ellas, con la esperanza de que el libre mercado lleve condiciones favorables a todos (debatible, pero supongámoslo por el momento). Estas empresas empiezan siendo chiquitas, pero luego quieren dar brincos grandes. Es difícil hacer estos brincos sin “prestamistas” o accionistas i.e. personas que pongan de su dinero por un “cachito” (una acción) de la empresa. Si quieren emitir acciones, hacen una cosa que se llama IPO y se hace a través de una “bolsa” (como la BMV o BIVA). Esta compra-venta de acciones se conoce como el “mercado bursátil”.

Una de las formas de medir “qué tal está” el mercado bursátil es con el precio del IPC BMV. Mientras mayor sea, habla de que “los inversionistas piensan que es mejor”.

Datos:

  • Con la entrada de la administración nueva el indicador dio un golpe repentino hacia abajo, que varios atribuyeron al anuncio de reducir comisiones bancarias
  • En el último mes. Min: 43,672. Actual: 43,648
  • En 2018, un total de cero empresas hicieron IPO
  • México sólo tiene 141 empresas cotizando en la bolsa
  • La nueva administración acaba de proponer incentivos para reducir el costo de un IPO

Mis comentarios: Hay dos temas diferentes por tratar aquí. Uno es el del IPC BMV. Aquí sí hay un golpe fuerte que todavía se tiene que recuperar. La tendencia va a la alta, pero nada que ver con el bajón que dio. Siento yo (pero aquí necesito apoyo de especialistas), que el mercado bursátil tiene que ver más con la inversión nacional que con la extranjera. Habiendo entrado un gobierno de izquierda, cuando usualmente quienes ponen el capital son de derecha, me parecería razonable que el precio bajara. ¿Esto tiene sentido?

Fuentes:

Apéndice

La economía, el mercado y las finanzas son áreas del conocimiento humano que tienen profesionales e investigación, así que tiene su dificultad estar en su frontera del conocimiento. Sin embargo, la teoría fundamental es accesible para una gran cantidad de personas.

Para aquellos que gusten aprender más del tema de una forma agradable, les recomiendo mucho los videos de Khan Academy en el tema. Entre otras cosas, uno acaba entediendo miles de cosas que típicamente parecen sacadas de bolas de cristal como

  • ¿Qué es el dinero?
  • ¿Por qué tener empresas?
  • ¿Cómo obtienen dinero las empresas?
  • ¿Por qué hay diferentes tasas de interés?

La página es en inglés: 

https://www.khanacademy.org/economics-finance-domain
La versión en español que ayudé a traducir está aquí: 

https://es.khanacademy.org/economics-finance-domain

Titular engañoso: PF detecta corrupción en NAIM

Quiero poner otro ejemplo en el que el titular es engañoso, pero ahora “hacia el otro lado”, pues también es necesario tener los hechos correctos aunque no cuadren con tu opinión. Consideremos “Policía Federal detecta corrupción por 17 mmdp en NAIM”, de ayer en El Universal. Por muy bien que hace parecer la decisión de cancelarlo, también es información a medias.

El titular da la impresión de que ya es algo casi certero. Pero no es así. El Gobierno de México afirmó hoy que esta información es incorrecta. Hay una investigación de la Policía Federal que sugiere corrupción, pero hasta ahora no hay pruebas concretas o una denuncia por parte de ellos en la PGR con respecto a este caso de corrupción de construcción específico.

Es cierto que, cuando nos vamos a nivel subjetivo y confianza, mi punto de vista está a favor del gobierno actual (lo cual tal vez sea obvio a estas alturas, jejeje). Pero, más importante, el mensaje que quiero dejar en estos días es que hay que estar a las vivas en el nivel objetivo y no dejarse llevar sólo por titulares. Primero los datos bien y “el lo que falta” le completamos con lo que creemos.