Metodología - Índice de Inestabilidad Política

Resumen Ejecutivo

El Índice de Inestabilidad Política cuantifica el riesgo político y la volatilidad institucional en Perú mediante un índice compuesto que combina eventos de noticias clasificados por NLP con indicadores financieros de estrés. El índice se actualiza diariamente y está normalizado para facilitar interpretación (media=0, desviación estándar=1).

Composición
50% Eventos + 50% Financiero
Ponderación igual
Frecuencia
Diaria
~2,500 noticias/mes procesadas

1. Arquitectura del Índice Compuesto

1.1 Fórmula General

El índice combina dos componentes principales con ponderación igual (50-50):

It = 0.5 × Ceventos,t + 0.5 × Cfinanciero,t

Donde cada componente está normalizado (z-score) usando ventana móvil de 60 meses:

Zt = (Xt - μt-60:t) / σt-60:t

Interpretación:

  • I > +1.0: Inestabilidad muy alta (top 16%)
  • 0 < I < +1.0: Inestabilidad moderada
  • -1.0 < I < 0: Estabilidad relativa
  • I < -1.0: Estabilidad excepcional (bottom 16%)

2. Componente de Eventos (50%)

2.1 Clasificación NLP de Noticias

Sistema de clasificación automática que analiza ~2,500 artículos/mes de fuentes peruanas (La República, El Comercio, Gestión, RPP) para detectar eventos de inestabilidad política.

Categorías de eventos y pesos:

CategoríaPesoEjemplos
Corrupción1.0Casos Lava Jato, investigaciones fiscales, arrestos
Protestas0.8Manifestaciones masivas, bloqueos de carreteras, paros
Crisis Gabinete0.7Renuncias ministros, censuras, moción de confianza
Elecciones0.3Campañas electorales, debates, segunda vuelta

2.2 Agregación Diaria

Los eventos clasificados se agregan diariamente usando la suma ponderada:

Scoreeventos,t = Σ (weightcategory × countcategory,t)

Luego se normaliza (z-score) sobre ventana móvil de 60 días para dar el componente final de eventos.

2.3 Modelo NLP: Clasificador Zero-Shot

Usa modelo transformer (BERT multilingual) fine-tuned para clasificación multi-label:

  • Input: título + resumen del artículo (max 512 tokens)
  • Output: probabilidades para cada categoría (threshold = 0.5)
  • Validación: F1-score ~0.75 en set de prueba manual
  • Actualización: reentrenamiento trimestral con nuevos ejemplos

3. Componente Financiero (50%)

3.1 Índice de Estrés Financiero

Combina 3 sub-componentes que capturan presión en mercados financieros:

3.1.1 Volatilidad FX (Tipo de Cambio)

FX_volt = std(PEN/USDt-30:t)

Desviación estándar móvil de 30 días del tipo de cambio. Picos en períodos de incertidumbre política (ej: vacancias presidenciales, protestas masivas).

3.1.2 Credit Spread (Spread Bancario)

Spreadt = Tasa_activat - Tasa_pasivat

Diferencia entre tasas activas (préstamos) y pasivas (depósitos). Se amplía cuando bancos perciben mayor riesgo crediticio debido a inestabilidad económica/política.

3.1.3 Reserves Drawdown (Caída de Reservas)

Drawdownt = max(0, -(RINt - RINt-1) / RINt-1)

Caída mensual en Reservas Internacionales Netas (BCRP). Solo cuenta caídas (drawdowns positivos). Indica intervenciones del banco central para defender el tipo de cambio.

3.2 Agregación del Componente Financiero

Cada sub-componente se normaliza (z-score) independientemente, luego se promedian con pesos iguales:

Cfinanciero,t = (1/3) × [Z(FX_vol) + Z(Spread) + Z(Drawdown)]

Fuentes de datos:

  • FX: PN01246PM - Tipo de cambio interbancario (BCRP)
  • Tasas: PN07807NM (activa) - PN07816NM (pasiva) - Sistema bancario (BCRP)
  • Reservas: PN00027MM - Reservas Internacionales Netas (BCRP)

4. Fuentes de Datos

4.1 Noticias (RSS Feeds)

FuenteURL RSSArtículos/Día
La Repúblicalarepublica.pe/feed/politica~30
El Comercioelcomercio.pe/feed/politica~25
Gestióngestion.pe/feed/politica~20
RPP Noticiasrpp.pe/feed/politica~15

Total: ~90 artículos/día, ~2,700 artículos/mes procesados por el clasificador NLP.

4.2 Datos Financieros (BCRP)

Todas las series financieras provienen del API del Banco Central de Reserva del Perú (BCRP), actualizado diariamente con ~1-2 días de rezago.

  • Frecuencia: Diaria (FX), Mensual (tasas, reservas)
  • Historia: 2000-presente (~25 años de datos)
  • Actualización: Automática vía scripts/update_bcrp.py

5. Validación Histórica

5.1 Eventos Históricos Clave

El índice captura correctamente los períodos de mayor inestabilidad en Perú:

PeríodoEventoPico Índice
Oct 2008Crisis financiera global (Lehman Brothers)+1.55
Mar 2020Inicio pandemia COVID-19+0.40
Nov 2020Crisis política (vacancia Vizcarra)+0.65
Dic 2022 - Ene 2023Protestas post-vacancia Castillo+0.82

Interpretación: Oct 2008 es el pico histórico (+1.55) debido al componente financiero extremo. Las crisis políticas internas (2020, 2022) muestran picos moderados (+0.4 a +0.8) dominados por el componente de eventos.

5.2 Correlación con Variables Macro

El índice correlaciona negativamente con indicadores de confianza y crecimiento:

  • Confianza empresarial (BCRP): r = -0.42 (p < 0.01)
  • PBI YoY: r = -0.28 (p < 0.05) — inestabilidad frena crecimiento
  • Inversión privada: r = -0.35 (p < 0.01) — mayor inestabilidad, menos inversión

⚠️ Limitaciones

  • Sesgo de medios: RSS feeds se concentran en medios limeños. Protestas regionales pueden estar subrepresentadas si no reciben cobertura nacional.
  • Ponderaciones ad-hoc: Pesos de categorías (corrupción=1.0, protestas=0.8, etc.) son subjetivos. Idealmente deberían estimarse de datos históricos.
  • EMBI no disponible: EMBI Perú (JP Morgan) sería mejor proxy de riesgo país que spreads bancarios locales, pero no está en BCRP. Requiere fuente externa.
  • Normalización móvil: Ventana de 60 meses implica que "normalidad" cambia en el tiempo. Períodos largos de inestabilidad pueden re-calibrar la baseline.
  • Clasificación NLP imperfecta: F1 ~0.75 implica ~25% de error en clasificación. Falsos positivos/negativos introducen ruido en el componente de eventos.

🔮 Mejoras Futuras

  • Sentiment analysis: Además de clasificar categorías, extraer sentiment (positivo/negativo) de artículos para capturar tono de la cobertura.
  • EMBI integration: Agregar spread EMBI Perú como proxy directo de riesgo país percibido por inversionistas internacionales.
  • Social media monitoring: Expandir fuentes a Twitter/X, Facebook para capturar protestas/movilizaciones en tiempo más real.
  • Ponderaciones dinámicas: Estimar pesos de categorías mediante regresión inversa (qué categorías predicen mejor crisis económicas/financieras).
  • Forecasting: Usar serie histórica del índice para predecir futuras crisis (ej: nowcast de próxima vacancia presidencial).

Referencias

Baker, S. R., Bloom, N., & Davis, S. J. (2016). "Measuring economic policy uncertainty." The Quarterly Journal of Economics, 131(4), 1593-1636.

Caldara, D., & Iacoviello, M. (2022). "Measuring geopolitical risk." American Economic Review, 112(4), 1194-1225.

Manela, A., & Moreira, A. (2017). "News implied volatility and disaster concerns." Journal of Financial Economics, 123(1), 137-162.

Gentzkow, M., Kelly, B., & Taddy, M. (2019). "Text as data." Journal of Economic Literature, 57(3), 535-574.

Código fuente disponible en el repositorio NEXUS

Ver: src/nlp/classifier.py, src/processing/political_index.py, scripts/build_political_index.py