Está en la página 1de 15

UNIVERSIDAD JUAREZ AUTONOMA DE TABASCO

DIVISION ACADEMCICA DE CIENCIAS BASICAS

ASIGNATURA:
TEORIA DEL RIESGO

PROFESOR:
DAVID JOSAFAT SANTANA COBIAN

ALUMNO:
SANTIAGO DE JESUS CORTAZA CORTAZAR

TAREA TEORIA DE LA RUINA


1. Realizar las actividades del video 39/64.
#Video 39
u<- 18
t<- 20

Fraya<- function(x){1-pgeom(x,3/4)}
f<-function(x){dgeom(x,3/4)}

Psi_t<- matrix(0,u+t-1,t)

aux<-u+t-1
for(alpha in 1:aux){
Psi_t[alpha,1]<- Fraya(alpha)
}
for(j in 2:(t-1)){
aux<-u+t-j
for(i in 1:aux){
auxPsi<-Psi_t[1:(i+1),j-1]
auxf<- f(i:0)
Psi_t[i,j]<-Fraya(i)+ sum(auxPsi*auxf)
}
}

auxPsi<-Psi_t[1:(u+1),t-1]
auxf<- f(u:0)
Psi_t[u,t]<- Fraya(u)+sum(auxPsi*auxf)
Psi_t[u,t]

## [1] 8.174603e-10

Primero tenemos que el capital inicial u=18 y un horizonte t=20. Ahora, suponiendo que la distribución
de Y es geométrica con p=3/4, tenemos entonces que el valor de la función “Fraya” (el cual es el
complemento de Y evaluada en x) está dada por la función de distribución acumulativa y para el valor de
la “f” calculamos las funciones de probabilidad.

La variable “Psi_t” crea una matriz de ceros que se usa para guardar los cálculos de probabilidades de
ruina en un horizonte y monto inicial dados que se hagan en las fases, teniendo esta 37 filas y 20 columnas.
Seguido, se guarda en la variable “aux” el valor del numero de filas de la matriz y en el primer ciclo “for”
se rellena la primera columna con los valores asociados a la probabilidad de ruina con horizonte 1 para
distintos valores de u con la función “Fraya”. En el segundo ciclo “for” se programa el mismo proceso para
los horizontes 2,3,4,…,36 a través de una formula recursiva que usa los valores de la columna anterior a
la que se va a rellenar.

Finalmente, se calcula el valor para u=18 y t=20, por lo que se obtiene el valor llamado a la entrada [u,t]
de la matriz “Psi_t” el cual es 8.174603e-10.
2. Realizar las actividades del video 40/64.
#Video 40
#Probabilidad de ruina con horizonte finito

#Calcular Psi(18,4) Y con distribucion Unif(N); N=4

u <- 18
t <- 4
N <- 4

plot(0:N,0:N/4,type='s')

Fdist <- function(x){(floor(x)/4*(x>=1)*(x<4)+1*(x>=4))}


Fraya <- function(x){1-Fdist(x)}
f <- function(x){1/N*(x-floor(x)==0)*(x>0)*(x<5)}

Psi_t <- matrix(0,u+t-1,t)

aux <- u+t-1


for (alpha in 1:aux) {
Psi_t[alpha,1] <- Fraya(alpha)
}
for (j in 2:(t-1)) {
aux <- u+t-j
for (i in 1:aux) {
auxPsi <- Psi_t[1:(1+i),j-1]
auxf <- f(i:0)
Psi_t[i,j] <- Fraya(i)+sum(auxPsi*auxf)

auxPsi <- Psi_t[1:(u+1),t-1]


auxf <- f(u:0)
Psi_t[u,t] <- Fraya(u)+sum(auxPsi*auxf)
Psi_t[u,t]

## [1] 0

###Aproximacion a la probabilidad de ruina###

u <- 18
t <- 4
N <- 4
m <- 500000 #numero de simulaciones
Ruinas <- 0

for (i in 1:m) {
Y <- sample(1:4,4,replace = T)
U <- u
for (i in 1:t) {
U[i+1] <- U[i]+1-Y[i]

Ruinas <- Ruinas+1*(sum(U <=0)>0)

Aproximacion <- Ruinas/m


Aproximacion

## [1] 0
3. Replicar el código del video 41/64. Pasarlo a un PDF junto con los resultados obtenidos.
#Video 41

#Probabilidad de ruina con horizonte finito


#Ejemplo distribucion binomial

u <- 7
t <- 3

Fraya <- function(x){1-pbinom(x,10,1/15)}


f <- function(x){dbinom(x,10,1/15)}

Psi_t<- matrix(0,u+t-1,t)
aux<-u+t-1
for(alpha in 1:aux){
Psi_t[alpha,1]<- Fraya(alpha)
}
for(j in 2:(t-1)){
aux<-u+t-j
for(i in 1:aux){
auxPsi<-Psi_t[1:(i+1),j-1]
auxf<- f(i:0)
Psi_t[i,j]<-Fraya(i)+ sum(auxPsi*auxf)
}
}

auxPsi<-Psi_t[1:(u+1),t-1]
auxf<- f(u:0)
Psi_t[u,t]<- Fraya(u)+sum(auxPsi*auxf)
Psi_t[u,t]

## [1] 1.605835e-05

###Aproximacion a la probabilidad de ruina###


u<-7
t<-3
m<-500000 #numero de simulaciones
Ruinas<-0
for (i in 1:m) {
Y<-rbinom(t,10,1/15)
U<-u
for (i in 1:t) {
U[i+1]<-U[i]+1-Y[i]
}
Ruinas<-Ruinas+1*(sum(U<=0)>0)
}
Aproximacion<-Ruinas/m
Aproximacion

## [1] 8e-06
#Ejemplo
#Y=0,1,2,3,7,10,20
#P(Y=0)=0.5
#P(Y=1)=0.2
#P(Y=2)=0.1
#P(Y=3)=0.07
#P(Y=7)=0.07
#P(Y=10)=0.03
#P(Y=20)=0.03

f <- function(x){0.5*(x==0)+0.2*(x==1)+0.1*(x==2)+0.07*(x==3)+0.07*(x==7)+0.03*(x==
10)+0.03*(x==20)}
Fdist <- function(x){
if(x<0){Res<-0}else{
Res<-0
for (i in 0:floor(x)) {
Res <- Res+f(i)

}
}
Res
}

Fraya <- function(x){1-Fdist(x)}


u <- 3
t <- 10

Psi_t<- matrix(0,u+t-1,t)
aux<-u+t-1
for(alpha in 1:aux){
Psi_t[alpha,1]<- Fraya(alpha)
}
for(j in 2:(t-1)){
aux<-u+t-j
for(i in 1:aux){
auxPsi<-Psi_t[1:(i+1),j-1]
auxf<- f(i:0)
Psi_t[i,j]<-Fraya(i)+ sum(auxPsi*auxf)
}
}

auxPsi<-Psi_t[1:(u+1),t-1]
auxf<- f(u:0)
Psi_t[u,t]<- Fraya(u)+sum(auxPsi*auxf)
Psi_t[u,t]

## [1] 0.7522665

###Aproximacion a la probabilidad de ruina###


u<-3
t<-10
m<-100000 #numero de simulaciones
Ruinas<-0
for (i in 1:m) {
Y<-sample(c(0,1,2,3,7,10,20),t,replace = T,prob = c(0.5,0.2,0.1,0.07,0.07,0.03,0.
03))
U<-u
for (i in 1:t) {
U[i+1]<-U[i]+1-Y[i]

Ruinas<-Ruinas+1*(sum(U<=0)>0)

Aproximacion<-Ruinas/m
Aproximacion

## [1] 0.75216

EsperanzaY <- sum(c(0,1,2,3,7,10,20)*c(0.5,0.2,0.1,0.07,0.07,0.03,0.03))


EsperanzaY

## [1] 2
4. Replicar el código del video 44/64. Pasarlo a un PDF junto con los resultados obtenidos.

#Probabilidad con horizonte finito

u<-7
p<-3/4
Fraya<-function(x){1-pgeom(x,p)}
psi0<-(1-p)/p
Psi<-numeric(u)
aux<-1-Fraya(0)
Psi[1]<-(psi0-Fraya(0))/aux
for (i in 2:u) {
a<-i-1
Psi[i]<-(psi0+sum(Psi[1:a]*Fraya(a:1))-sum(Fraya(0:a)))/aux
}
Psi

En la función “Psi” estan las probabilidades de ruina para 𝑢 = 1,2, . . . ,7

Psiexacta<-function(u){((1-p)/p)^(u+1)}
Psiexacta(7)

Psiexacta(6)

5. Replicar el código del video 45/64. Pasarlo a un PDF junto con los resultados obtenidos.

Con m=100

# Implementación de la fórmula para calcular la

# probabilidad de ruina en horizonte infinito

u<-7

p<-0.52

Fraya<-function(x){1-pgeom(x,p)}
mu<-(1-p)/p

psi0<-mu

Psi<-numeric(u)

aux<-1-Fraya(0)

Psi[1]<-(psi0-Fraya(0))/aux

for (i in 2:u) {

a<-i-1

Psi[i]<-(psi0+sum(Psi[1:a]*Fraya(a:1))-sum(Fraya(0:a)))/aux

Psi

Psiexacta<-function(u){((1-p)/p)^(u+1)}

EXACTO<-Psiexacta(u)

m<-100

cerosyunos<-numeric(m)

for (i in 1:m) {

K<-rgeom(1,1-mu)

if(K==0){sumacompuesta<-0}else{

sumacompuesta<-sum(rgeom(K,p))

cerosyunos[i]<-1*(sumacompuesta>=u)

AproxiPsi<-mean(cerosyunos)

AproxiPsi
abs(AproxiPsi-EXACTO)

Con m=1000

# Implementación de la fórmula para calcular la

# probabilidad de ruina en horizonte infinito

u<-7

p<-0.52

Fraya<-function(x){1-pgeom(x,p)}

mu<-(1-p)/p

psi0<-mu

Psi<-numeric(u)

aux<-1-Fraya(0)

Psi[1]<-(psi0-Fraya(0))/aux

for (i in 2:u) {

a<-i-1

Psi[i]<-(psi0+sum(Psi[1:a]*Fraya(a:1))-sum(Fraya(0:a)))/aux

Psi
Psiexacta<-function(u){((1-p)/p)^(u+1)}

EXACTO<-Psiexacta(u)

m<-1000

cerosyunos<-numeric(m)

for (i in 1:m) {

K<-rgeom(1,1-mu)

if(K==0){sumacompuesta<-0}else{

sumacompuesta<-sum(rgeom(K,p))

cerosyunos[i]<-1*(sumacompuesta>=u)

AproxiPsi<-mean(cerosyunos)

AproxiPsi

abs(AproxiPsi-EXACTO)

Con m=10000

# Implementación de la fórmula para calcular la

# probabilidad de ruina en horizonte infinito


u<-7

p<-0.52

Fraya<-function(x){1-pgeom(x,p)}

mu<-(1-p)/p

psi0<-mu

Psi<-numeric(u)

aux<-1-Fraya(0)

Psi[1]<-(psi0-Fraya(0))/aux

for (i in 2:u) {

a<-i-1

Psi[i]<-(psi0+sum(Psi[1:a]*Fraya(a:1))-sum(Fraya(0:a)))/aux

Psi

Psiexacta<-function(u){((1-p)/p)^(u+1)}

EXACTO<-Psiexacta(u)

m<-10000

cerosyunos<-numeric(m)

for (i in 1:m) {

K<-rgeom(1,1-mu)

if(K==0){sumacompuesta<-0}else{

sumacompuesta<-sum(rgeom(K,p))

}
cerosyunos[i]<-1*(sumacompuesta>=u)

AproxiPsi<-mean(cerosyunos)

AproxiPsi

abs(AproxiPsi-EXACTO)

Con m=100000

# Implementación de la fórmula para calcular la

# probabilidad de ruina en horizonte infinito

u<-7

p<-0.52

Fraya<-function(x){1-pgeom(x,p)}

mu<-(1-p)/p

psi0<-mu

Psi<-numeric(u)

aux<-1-Fraya(0)

Psi[1]<-(psi0-Fraya(0))/aux

for (i in 2:u) {

a<-i-1

Psi[i]<-(psi0+sum(Psi[1:a]*Fraya(a:1))-sum(Fraya(0:a)))/aux

Psi
Psiexacta<-function(u){((1-p)/p)^(u+1)}

EXACTO<-Psiexacta(u)

m<-100000

cerosyunos<-numeric(m)

for (i in 1:m) {

K<-rgeom(1,1-mu)

if(K==0){sumacompuesta<-0}else{

sumacompuesta<-sum(rgeom(K,p))

cerosyunos[i]<-1*(sumacompuesta>=u)

AproxiPsi<-mean(cerosyunos)

AproxiPsi

abs(AproxiPsi-EXACTO)
6. Sobre el video 57/64, calcular la Var(U(t)) y la función generadora de momentos de U(t).

Tenemos la siguiente formula:


𝑁(𝑡)

𝑈(𝑡) = 𝑢 + 𝑐𝑡 − ∑ 𝑌𝑗
𝑗=1

Recordar que el número de siniestros y el monto de reclamación son independientes.

a) Varianza

Sea U(t) el proceso en t>0, entonces:

𝑉𝑎𝑟(𝑈(𝑡)) = 𝐸(𝑆(𝑡)2) − 𝐸2(𝑆(𝑡))

𝑁(𝑡)
= 𝐸 (𝐸 ((∑ 𝑌𝑗)2 𝑁(𝑡)))) − 𝜇2𝐸2(𝑁(𝑡))
𝑗= 1

∞ 𝑘
=∑ 𝐸((∑ 𝑌𝑗)2 𝑁(𝑡) = 𝑘) 𝑃(𝑁(𝑡) = 𝑘) − 𝜇2 𝐸2(𝑁(𝑡))
𝑘=0 𝑗=0

∞ 𝑘
=∑ ((∑ 𝐸(𝑌2) + ∑ 𝐸(𝑌 𝑌 ))𝑃(𝑁(𝑡) = 𝑘) − 𝜇2 𝐸2 (𝑁(𝑡))
𝑗 𝑗 𝑖
𝑘=0 𝑗=1 𝑖≠𝑖

= ∑(𝑘(𝜎2 + 𝜇2) + 𝑘(𝑘 −)𝜇2)𝑃(𝑁(𝑡) = 𝑘) − 𝜇2 𝐸2(𝑁(𝑡))


𝑘=0

= (𝜎 2 + 𝜇2 )𝐸(𝑁(𝑡) + 𝜇2𝐸(𝑁(𝑡)2) − 𝜇2 𝐸(𝑁(𝑡)) − 𝜇2𝐸(𝑁(𝑡))

Por lo tanto,

𝑉𝑎𝑟(𝑈(𝑡) = 𝜇2𝑉𝑎𝑟(𝑁(𝑡)) + 𝜎 2𝐸(𝑁(𝑡))

b) Función generadora de momentos

Para cada 𝑟 ≥ 0, el capital U(t) tiene función generadora de momentos:

𝑀𝑢(𝑡) (𝑟) = 𝐸(𝑒𝑟𝑈(𝑡) )

= 𝐸(𝑒𝑟(𝑢 + 𝑐𝑡) − 𝑟𝑆(𝑡))

= 𝑒𝑟(𝑢+𝑐𝑡)𝑀𝑠(𝑡)(−𝑟)

7. Realizar las actividades del video 58/64.

También podría gustarte