Acceder
Análisis de Riesgo Automatizado con Python (Sin Necesidad de Ser un Experto).

En el vertiginoso mundo de las inversiones, la información es el activo más valioso. Pero, ¿cómo transformar datos complejos en conocimiento práctico sin ser un programador experto? Hoy te presento un script de Python que calcula indicadores clave de riesgo y genera gráficos técnicos esenciales, todo accesible a través de Google Colaboratory. ¡No necesitas ser un gurú de la programación para tomar decisiones de inversión más inteligentes!

¿Qué hace este script?

Este script de Python, diseñado para ser accesible para todos, calcula y muestra los siguientes indicadores y gráficos:

  • Indicadores de Riesgo:

    • Beta:
      • Mide la volatilidad de un activo en relación con el mercado.
      • Beta > 1: Mayor volatilidad que el mercado. Beta < 1: Menor volatilidad.
    • Alpha (Jensen):
      • Mide el rendimiento excedente de una inversión en comparación con el rendimiento esperado, ajustado por el riesgo.
      • Alpha positivo: Rendimiento superior al esperado. Alpha negativo: Rendimiento inferior.
    • Ratio de Sharpe:
      • Mide el rendimiento ajustado por el riesgo, considerando la volatilidad total.
      • A mayor ratio, mejor rendimiento ajustado por el riesgo.
    • Ratio de Información:
      • Mide el rendimiento ajustado por el riesgo de un gestor de inversiones en comparación con un índice de referencia.
      • Un ratio de información alto es deseable, ya que indica que un gestor de cartera ha superado constantemente a su índice de referencia.
    • Ratio de Treynor:
      • Mide el rendimiento ajustado por el riesgo sistemático (beta).
      • Similar al Ratio de Sharpe, pero utiliza beta en lugar de la volatilidad total.
    • Correlación con el mercado:
      • Mide el grado en que los movimientos de un activo se relacionan con los movimientos del mercado en general.
      • Una correlación alta indica que el activo tiende a moverse en la misma dirección que el mercado.
    • Asimetría (Skewness):
      • Mide la asimetría de la distribución de rendimientos.
      • Asimetría positiva: Mayor probabilidad de ganancias grandes. Asimetría negativa: Mayor probabilidad de pérdidas grandes.
    • Curtosis (Kurtosis):
      • Mide la concentración de rendimientos en las colas de la distribución.
      • Curtosis alta: Mayor probabilidad de eventos extremos.
    • Máximo Drawdown:
      • Mide la mayor pérdida desde un pico hasta un valle.
      • Indica el riesgo de pérdida máxima potencial.
    • Período de Recuperación:
      • Mide el tiempo que tarda una inversión en recuperarse de su máximo drawdown.
    • Ratio de Sortino:
      • Mide el rendimiento ajustado por el riesgo a la baja, que es un enfoque más preciso del riesgo.
    • Ratio de Ganancia/Pérdida:
      • Mide la relación entre las ganancias y las pérdidas de una inversión.
    • Volatilidad Anualizada:
      • Mide la desviación estándar de los rendimientos anualizados.
  • Gráficos Técnicos:

    • MACD (Media Móvil de Convergencia/Divergencia):
      • Indica cambios en la fuerza, dirección, momento y duración de una tendencia.
    • ATR (Rango Promedio Verdadero):
      • Mide la volatilidad del mercado.
    • BB (Bandas de Bollinger):
      • Indican la volatilidad y posibles puntos de sobrecompra/sobreventa.
    • ADX (Índice Direccional Promedio):
      • Mide la fuerza de una tendencia.
    • RSI (Índice de Fuerza Relativa):
      • Indica condiciones de sobrecompra/sobreventa.

¿Por qué es tan accesible?

  • Accede al script desde [enlace al script].
  • Haz clic en "Abrir con Google Colaboratory" en la parte superior.
  • Ejecuta cada celda secuencialmente con el botón "play" (triángulo negro) situado a la izquierda de cada celda.
  • Sigue las intrucciones que se encuentran en el script de google colab, para subir la cotizaciones.
  • Una vez ejecutadas las celdas de calculo, las celdas de gráficas se ejecutaran automaticamente, y mostraran los resultados.

Ejecutamos el scrip y calculamos indicadores de resistencia para las cotizaciones de Iberdrola S.A. con referencia al índice IBEX 35, en el período '2010-01-04' a '2019-12-23'.
Nos devuelve los siguientes indicadores :


--- Métricas de Riesgo para IBE.MC ---
Beta: 0.8770
Alpha (Jensen): 0.0394%
Ratio de Sharpe: 0.0225
Ratio de Información: 0.0492
Ratio de Treynor: 0.0004
Correlación con el mercado: 0.8336
Asimetría (Skewness): 0.1532
Curtosis (Kurtosis): 7.6316
Máximo Drawdown: -55.5321%
Período de Recuperación: N/A
Ratio de Sortino: 0.0310
Ratio de Ganancia/Pérdida: 1.0749
Volatilidad Anualizada: 23.0160%

--- Resumen de Riesgo ---
Resumen de riesgo para IBE.MC:

- Beta: 0.88 (neutral (similar al mercado))
- Alpha: 0.04% (ligeramente positivo)
- Ratio de Sharpe: 0.02 (bajo)
- Máximo Drawdown: -55.53%
- Volatilidad anualizada: 23.02%

Se muestran  las gráficas siguientes.

DrawDown histórico de IBERDROLA
DrawDown histórico de Iberdrola


Distribución de Retornos de Iberdrola
Distribución de retornos de Iberdrola S.A:



Beta Móvil de Iberdrola (ventana de 30 días)
Beta Móvil de Iberdorla


Comparación de Volatilidad Anializada (ventan de 30 días)
Comparación de Volatilidad Anualizada

Se muestran también las gráficas de 

Gráficas de MACD, ATR, BB, ADX y RSI



Solicitamos de una IA que nos analice estos resultados y nos devuelve el informe siguiente.

ANALISIS DE RESULTADOS (con Perplexity):


El análisis de las métricas de riesgo de Iberdrola (IBE.MC) frente al IBEX 35 entre 2010-2019 revela un perfil de riesgo con características destacables:

Riesgo sistemático y correlación de mercado

  • Beta de 0.88 indica que la acción es ligeramente menos volátil que el mercado (IBEX 35)[1][3]. 
  • Correlación de 83.38% confirma una alta sincronización con los movimientos del índice de referencia, aunque con menor amplitud[1]. 
  • Alpha del 0.04% sugiere una sobreperformance mínima respecto al rendimiento esperado por el CAPM, coincidiendo con el estudio que vincula su rentabilidad al contexto del IBEX 35[1].

Rendimiento ajustado al riesgo

  • Ratio de Sharpe (0.023) y Treynor (0.0004) extremadamente bajos: reflejan una compensación insuficiente por el riesgo asumido, especialmente relevante dado el máximo drawdown del -55.53% (relacionado con la crisis de 2008-2015 donde cotizó <6€/acción)[1][3]. 
  • Volatilidad anualizada del 23% y Curtosis de 7.65: indican alta probabilidad de eventos extremos, compatible con la crisis energética y ajustes de deuda descritos en los informes[1][3].

Perfil asimétrico y capacidad de recuperación

  • Skewness positivo (0.15) muestra sesgo hacia rendimientos ligeramente superiores, aunque limitado por: 
    • Ratio Ganancia/Pérdida de 1.07: equilibrio frágil entre éxitos y pérdidas. 
    • Recuperación de drawdown no alcanzada en el periodo analizado, vinculado a la transformación de deuda a corto plazo mencionada en los estados financieros[1][3].

Contexto estratégico

  • La alta exposición a riesgos geopolíticos (guerra en Ucrania, tensiones en Oriente Medio)[3] y dependencia de precios regulados explican parte de la volatilidad. 
  • La elevada inversión en renovables (81% de capacidad libre de emisiones en 2021)[2] introduce incertidumbre a largo plazo pese a su alineación con tendencias globales. 
  • El ROE <10% y PER elevado (14.9 vs 11.8 de Endesa)[3] limitan el atractivo frente a competidores, aunque se compensa parcialmente con su posición como cuarta eléctrica mundial[3].

Conclusión


Iberdrola muestra un perfil defensivo moderado con riesgo idiosincrático elevado por su estructura financiera (fondo de maniobra negativo, deuda a corto plazo creciente)[1][3]. Su rendimiento está íntimamente ligado al IBEX 35, pero con capacidad limitada para generar alpha en condiciones de estrés de mercado. La combinación de alta curtosis, drawdown histórico severo y ratios de ajuste al riesgo modestos la posicionan como una inversión apta para horizontes largos, donde su apuesta por transición energética podría materializar ventajas competitivas[2][3].

Conclusión:

Este script de Python, accesible a través de Google Colaboratory, democratiza el análisis de riesgo. Ahora, cualquier inversor, independientemente de su nivel de experiencia en programación, puede tomar decisiones informadas.

¿Te ha gustado mi artículo?
Si quieres saber más y estar al día de mis reflexiones, suscríbete a mi blog y sé el primero en recibir las nuevas publicaciones en tu correo electrónico
Accede a Rankia
¡Sé el primero en comentar!