Tema del Trabajo sobre RO semestre 02 2009

Anuncio
1
Trabajo sobre Gestión del Riesgo
Septiembre de 2009
Norman Giraldo Gómez
Escuela de Ingeniería de la Organización. Universidad Nacional de Colombia
e-mail: ndgirald@unalmed.edu.co
Introducción
El objetivo de este trabajo es realizar una
práctica sobre las metodologías LDA y POT
para el cálculo de provisones en riesgo
operativo, utilizando funciones de las
librerías de R. Cada grupo tiene asignado 1
grupo de datos para analizar, según la lista
en la página web del curso (1).
Puntos a Desarrollar
En la memoria activa quedan dos variables
con los datos para analizar: “fecha” y
“perdida”. Los datos de pérdidas están en
pesos. Para simplificar la notación llamamos
v = perdida
3. Análisis POT.
El objetivo es decidir si los datos pueden
analizarse con el modelo POT. En caso tal,
calcular la provisión anual.
1. Instalar y cargar los paquetes
3.1 Análisis exploratorio
Carge las librerías siguientes con las
instrucciones que aparecen a continuación
library(MASS) # para fitdistrb
library(truncgof) # para las pruebas ad y ks
library(actuar) # para aggregateDist
library(fBasics) # para asimetria y curtosis
library(POT) # para ajuste GPD
library(chron) # para función years
2. Leer los datos
Use la instrucción siguiente para leer los 3
archivos de datos, cada uno con extensión
“.dat”.
Por ejemplo, si al grupo le tocó el archivo
BL3,
D = read.table("bl3.dat", header=T,
stringsAsFactors=F)
attach(D)
Presente los resultados de las estadísticas
básicas en una tabla:
length(v)
summary(v)
skewness(v)
kurtosis(v)
# numero de datos
# resumen estadisticas basicas
# asimetria
# curtosis
Qué concluye inicialmente? Cuál tiene
mayor asimetría y curtosis?.
Grafique los 4 diagnósticos: histograma,
boxplot, dotchart y densidad. El objetivo con
estos gráficos es determinar si puede
identificarse un umbral por encima del cual
estarían las pérdidas más extremas. Reporte
gráficas. Y si es el caso, un posible valor
para el umbral.
3.2 Gráfica de la vida media residual
1
www.unalmed.edu.co/~ndgirald (en el vínculo
“gestión del riesgo” ).
El paso clave para aplicar el modelo POT es
determinar el umbral u. La librería POT
2
provee la función mrlplot para la vida
media residual. Reporte la gráfica
x11()
par(mfrow = c(1,1))
mrlplot(v)
La librería POT tiene la función “fitgpd”
para estimar el modelo Pareto Generalizado,
a partir de los datos de pérdidas
operacionales y del umbral escogido.
Programe:
3.3 Análisis de la gráfica.
1) Si la gráfica muestra una tendencia
decreciente se recomienda realizar un
análisis LDA porque los datos no son
extremos.
2) Si la gráfica muestra una tendencia
creciente se recomienda un análisis POT. En
este caso, determine si existe un posible
umbral u, usando la sugerencia del artículo
de Moscadelli: detecte una sección de línea
recta en la gráfica la vida media residual. La
abscisa donde comienza es un posible valor
del umbral.
Si no resulta la sugerencia, escoja como
umbral uno de los percentiles, que se
calculan con:
mle = fitgpd(v, u, "mle")$param
ad = fitgpd(v, u, "mgf", stat = "AD")$param
sigma = mle[1]
xi = mle[2]
si el valor de xi es negativo, usar la
alternativa:
ad = fitgpd(v, u, "mgf", stat = "AD")$param
sigma = ad[1]
xi = ad[2]
Reporte el valor de los parámetros de la
distribución GPD estimados: sigma y xi.
3.5 Examen del ajuste del modelo
quantile(v,probs=c(65,75,85,95,90)/100)
Decida si el modelo GPD resultó adecuado
para los excesos por encima del umbral.
coloque, por ejemplo,
u = quantile(v, probs = 90/100)
1) Use las pruebas gráficas:
determine cuántos datos quedan por encima
del umbral.
nu = sum(v >= u)
(nu)
escoja u tal que el número de datos no sea
menor de 30.
Genere los excedente yi =
instrucción:
Diagrama de cuantiles
x11()
par(mfrow=c(1,1))
x.teo<-rgpd(n=length(y), loc = 0, scale =
mle[1], shape = mle[2])
qqplot(x.teo,y,main="QQ-plot distr. GPD")
abline(0,1)
xi – u con la
y = v[v > u]-u
3.4. Ajuste de la distribución Pareto
Generalizada con los datos de exceso sobre
el umbral.
Decisión: si los puntos aparecen muy
alejados de la línea recta, no se acepta el
modelo GPD para los excedentes. En caso
contrario, sí.
3
La gráfica
acumulada
acumulada
Moscadelli
23,24 ).
de la función de distribución
estimada versus la distribución
empírica. (ver el artículo de
en las Figuras 2-5 de las pags.
x11()
par(mfrow=c(1,1))
ejex = seq(0,max(y),length.out = 100)
plot(ejex, pgpd(ejex, loc = 0, scale = mle[1],
shape = mle[2]), type="l", col="red",
main="ECDF y GPD CDF")
plot(ecdf(y),add=TRUE,verticals= TRUE,
do.points = FALSE)
D1 = D[ which(v > u), ]
attach(D1)
fc = years(fecha)
tf = table(fc)
Reporte la gráfica del número de casos de
RO por año y el promedio anual
barplot(tf)
(mean(tf))
NOTA: si hay un año incompleto es mejor
excluírlo. Modifique el archivo D1 si ése es
el caso.
3.8 Cálculo del Capital en Riesgo, CaR
Decisión : si la línea continua está cercana
de la línea escalonada se acepta la
distribución GPD para los excedentes. En
caso contrario, se rechaza.
Reporte el capital en riesgo
2) Use la prueba KS .
con medida = ES y MS
ks.test(y,"pgpd", list(loc = 0, scale = sigma,
shape = xi), H = NA)
3.9 Haga un resumen de los resultados
como conclusión del trabajo.
Decisión: si el valor p es mayor de 0.05 se
acepta que los datos son GPD. Si es menor
se rechaza. Reporte el resultado de las
pruebas.
4. Análisis LDA
3.6 Cálculo de la medida de severidad
Programe:
mle = fitdistr(x, "lognormal")
mu = mle$estimate[1]
sigma = mle$estimate[2]
Calcule la medida de severidad para un
nivel de confianza de (1-q)100%, con q =
0.05, 0.01. NOTA: para el VaR se requiere
que q sea menor que el cociente n/nu .
Chequee que se cumple esta condición y
reporte las medidas:
CaR = mean(tf)*medida
4.1 Ajustar una distribución LogNormal a
las pérdidas
Reporte los parámetros obtenidos mu y
sigma.
4.2 Examen del ajuste del modelo
VaR = u + sigma*((n*q/nu)^(-xi) - 1)/xi
ES = (VaR + sigma - xi*u)/(1 - xi)
MS = VaR + sigma*(2^xi - 1)/xi
Decida si el modelo Lognormal resultó
adecuado para los datos de pérdidas
operativas.
3.7 Cálculo de las frecuencias promedio
1) Use las pruebas gráficas:
Se toman los datos y fechas por encima del
umbral
Diagrama de cuantiles
4
4.3 Definir
agregadas
x11()
v.teo = rlnorm (n=length (v), meanlog = mu,
sdlog = sigma)
qqplot (v.teo,v,main="QQ-plot distr.
LogNormal")
abline(0,1)
Decisión: si los puntos aparecen muy
alejados de la línea recta, no se acepta el
modelo Lognormal para los datos. En caso
contrario, sí.
La gráfica
acumulada
acumulada
Moscadelli
23,24 ).
de la función de distribución
estimada versus la distribución
empírica. (ver el artículo de
en las Figuras 2-5 de las pags.
xx = seq(mean(v),max(v),length.out=100)
plot(xx, plnorm(xx , meanlog = mu, sdlog =
sigma),type="l",col="red",
main="distribución LogNormal ")
plot(ecdf(v),add=TRUE,verticals= TRUE,
do.points = FALSE)
Decisión : si la línea continua está cercana
de la línea escalonada se acepta la
distribución Lognormal para los datos. En
caso contrario, se rechaza.
el
modelo
de
pérdidas
Se calcula primero el promedio de casos por
año, con las instrucciones
fc = years(fecha)
tf = table(fc)
Reporte la gráfica del número de casos de
RO por año y el promedio anual
barplot(tf)
(mean(tf))
NOTA: si hay un año incompleto proceder a
excluírlo. Modifique el archivo D si ése es el
caso.
Defina el modelo de frecuencias con una
distribución Poisson con parametro igual al
promedio anual
model.freq = expression(data =
rpois(mean(tf)))
Defina el modelo de severidad con una
distribución Lognormal
model.sev = expression(data = rlnorm
( meanlog = mu, sdlog=sigma)
Calcular la
agregadas
distribución
de
pérdidas
2) Use la prueba KS .
ks.test(v, "plnorm", list(meanlog = mu,
sdlog = sigma), H = 10)
Fs = aggregateDist("simulation",
model.freq, model.sev, nb.simul = 1000)
4.4 Cálculo del Capital en Riesgo, CaR
Decisión: si el valor p es mayor de 0.05 se
acepta que los datos son Lognormal. Si es
menor se rechaza. Reporte el resultado de
las pruebas.
Programe y reporte los valores siguientes
VaR(Fs)
CTE(Fs)
Nota importante: en caso de no ajustar una
distribución Lognormal reportamos este
resultado y se prosigue con los cálculos,
indicando que son solamente como ejemplo
de los cálculos a realizar y no son correctos.
La
librería
actuar
solamente
tiene
implementados el VaR y el CTE =
conditional tail expectation = esperanza
condicional residual, que es igual al ES =
expected shortfall .
5
4.5 Haga un resumen de los resultados
como conclusión del trabajo.
5. Presentación
Usar el formato Word de la Revista
Ingeniería y Ciencia, de Eafit, que se puede
descargar en el vínculo “Documentos”, de la
página del profesor. Realizar el trabajo lo
mas resumido posible.
Referencias
Moscadelli, M. (2003) 'The Modelling of
Operational Risk: Experience with the
Anaysis of the data collected by the Basel
Commitee', Reporte Técnico. Banco de Italia.
Descargar