Sunteți pe pagina 1din 38

UNIVERSIDAD NACIONAL DE INGENIERÍA

ESCUELA CENTRAL DE POSGRADO


Facultad de Ingenierı́a Económica, Estadı́stica y CCSS
Unidad de Posgrado - FIEECS

Curso: Econometrı́a Financiera


Docente: PhD Rafael Nivı́n

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 1 / 38


Tema 1: Modelo de Regresión Lineal

1 Introducción

2 Minimos Cuadrados Ordinarios

3 Modelo de Regresión Lineal: Supuestos

4 Inferencia Estadı́stica

5 Aplicación: Modelo CAPM

6 Aplicación: Modelo APT

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 2 / 38


Regresión

Probablemente es la herramienta más importante a disposición del


econometrista.
Que es el análisis de regresión?
Se encarga de describir y evaluar la relación entre una variable
particular (usualmente llamada variable dependiente) y una o mas
variables (usualmente llamadas variables independientes).

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 3 / 38


Regresión

Denotemos a la variable dependiente como y mientras que las


variables independientes se denotarán como x1 , x2 , ..., xk cuando
hay k variables independientes.
Note que pueden haber muchas variables x:
I Regresión univariada: cuando solo hay una variable independiente.
I Regresión multivariada: cuando existen 2 o más variables
independientes

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 4 / 38


Regresión Simple: Ejemplo
Supongamos que tenemos los siguientes datos acerca del retorno
en exceso de un portafolio (fondo “ABC”) junto con los retornos
en exceso de un indice de mercado:

Año, t Ret. en exceso del portafolio Ret. en exceso del mercado


= rABC ,t − rft = rm t − rft
1 17.8 13.7
2 39.0 23.2
3 12.8 6.9
4 24.2 16.8
5 17.2 12.3
Tenemos alguna intuición que el beta de este fondo es positivo, y
por lo tanto qusieramos saber si existe una relación entre x e y
dados los datos que tenemos. En primer lugar, podrı́amos elaborar
un gráfico de las dos variables.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 5 / 38


Gráfico: diagrama de dispersión X-Y

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 6 / 38


Buscando una lı́nea que mejor ajuste a los datos

Podemos usar la ecuación general para un lı́nea recta:

y = a + bx

para obtener la lı́nea que mejor se ajuste a los datos.


Sin embargo, esta ecuación (y = a + bx) es completamente
determinı́stica.
Esto no es realista. Por lo tanto, tenemos que agregar a la
ecuación un término de error, u, que represente la incertidumbre.

yt = α + βxt + ut

donde t = 1, 2, 3, 4, 5.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 7 / 38


Por qué incluimos un término de error?

El término de error puede capturar una serie de caracterı́sticas.


No se puede incluir todos los determinantes de yt
Puede haber errores en la medición de yt que no pueden ser
modelados.
influencias aleatorias sobre yt que no puede ser modelado.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 8 / 38


Determinación de los coeficientes de la regresión
Como podemos determinar los valores de α y β:
Debemos elegir α y β de tal forma que la distacia (vertical) entre
el valor observado y el valor estimado es minimizada (de tal forma
que la linea ajuste a los datos lo mejor posible):
y

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 9 / 38


Minimos Cuadrados Ordinarios
El método más común usado para ajustar los datos a una linea es
conocido como MCO (mı́nimos cuadrados ordinarios):
Lo que procederemos a hacer es tomar la distancia entre el valor
estimado y el valor observado en cada punto y la elevaremos al
cuadrado, y minimizaremos la suma total de dichos cuadrados.
Tomando en cuenta las siguientes definiciones:
yt : valor observado.
ŷt : valor ajustado o estimado de la regresión lineal.
ŷt = α̂ + β̂xt
donde α̂ y β̂ son los coeficientes estimados de los parametros α y
β. et : errores estimados de la regresión:
ût = yt − ŷt = yt − α̂ − β̂xt
note que los errores ût representa el valor estimado de los errores
poblacionales ut .
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 10 / 38
MCO: Valor observado y valor estimado
y

yt

ût

ˆyt

xt x

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 11 / 38


Como implementamos MCO

Tenemos que minimizar û12 + û22 + û32 + û42 + û52 , o,


equivalentemente, minimizar 5t=1 ût2 . A este resultado se le
P

conoce como la suma de los residuos al cuadrado.


Pero sabemos que ût es la diferencia entre el valor observado y el
valor estimado, yt − ŷt .
Entonces, minimizar (yt − ŷt )2 es equivalente a minimizar
P P 2
ût
con respecto a los coeficientes α̂ y β̂.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 12 / 38


Obteniendo el el Estimador MCO
Sabemos que ŷt = α̂ + β̂xt , entonces denotemos como L a la suma
de los errores al cuadrado:
T
X T
X
L= (yt − ŷt )2 = (yt − α̂ − β̂xt )2
t=1 t=1

Buscamos minimizar L con respecto a los coeficientes α̂ y β̂. Esto


se obtiene diferenciando L con respecto a cada coeficiente e
igualando este resultado a cero. Lo que da como resultado:
xt yt − T ȳx̄
P
β̂ = P 2 2
xt − T x̄

α̂ = ȳ − β̂x̄

A este método de cálculo de los valores óptimos de los coeficientes


se le denomina mı́nimos cuadrados ordinarios (MCO)
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 13 / 38
Estimador MCO: Ejemplo
En el ejemplo del modelo CAPM, con las 5 observaciones
podriamos calcular el valor de los coeficientes aplicando las
formulas de MCO: α̂ = −1, 74 y β̂ = 1, 64. Entonces, el modelo de
regresión lineal estimado serı́a:

ŷt = −1, 74 + 1, 64xt

Pregunta: Si un analista financiero nos informa que espera que el


mercado genere un retorno de 20 % más alto que la tasa libre de
riesgo para el póximo año, que esperariamos para el retorno en el
fondo ABC?
Podriamos obtener el valor esperado de retorno en exceso del
fondo ABC utilizando la regresión lineal estimada y remplazando
xt por 20.
ŷt = −1, 74 + 1, 64 × 20 = 31, 06
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 14 / 38
La función de regresión poblacional (FRP) y la
función de regresión muestral (FRM)

La función de regresión poblacional (FRP) es una descripción del


modelo que creemos que esta generando los datos observados y la
verdadera relación entre las variables (por ejemplo los valores
verdaderos de α y β).
La FRP es: yt = α + βxt + ut
La función de regresión muestral (FRM) es ŷt = α̂ + β̂xt
además sabemos que et = yt − ŷt
Usamos la FRM para inferir los valores más probables de la FRP.
Además, queremos saber que “tan buenos” son nuestros estimados
de α y β.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 15 / 38


Linearidad
Para utilizar el método MCO, necesitamos que nuestro modelo sea
lineal en los parámetros (α y β). No es necesario que el modelo sea
lineal en las variables (y, x)
Lineal en los parámetros significa que los parametros no estan
multiplicados entre si, o divididos, o elevados a alguna potencia,
etc.
Algunos modelos pueden ser transformados para ser lineales a
través de una adecuada substitución o manipulación. Ejemplos:

Yt = e α Xtβ e ut
β
Yt = α + + ut
Xt

Sin embargo, algunos modelos son fundamentalmente no lineales.


por ejemplo:
Yt = α + Xtβ + ut
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 16 / 38
Supuestos básicos del Modelo de Regresión
Lineal
Observamos datos de xt , pero dado que yt también depende de ut ,
debemos especificar como ut es generado.
Usualmente se plantean los siguientes supuestos acerca de los
errores no observables (ut0 s):
Supuesto Interpretación
(1) E(ut ) = 0 Los errores tienen media cero
(2) var(ut ) = σ 2 La varianza de los errores es constante y
finita para todos los valores de xt
(3) cov(ui , uj ) = 0 Los errores son estadisticamente
independientes
(4) cov(ut , xt ) = 0 No hay relación entre las variables x 0 s
y los errores
Un supuesto adicional es necesario si queremos hacer inferencia
sobre los parámetros poblacionales (α y β) a partir de los
parámetros muestrales (α̂ y β̂):
(5) ut tiene una distribución normal
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 17 / 38
Estimadores consistentes, insesgados y eficientes

Los estimadores MCO α̂ y β̂ son consistentes: convergen a sus


verdaderos valores conforme el tamaño de la muestra crece al
infinito.
Los estimadores MCO α̂ y β̂ son insesgados: en promedio los
valores estimados son iguales a sus valores verdaderos (E(α̂) = α y
E(β̂) = β).
Los estimadores MCO de α̂ y β̂ son eficientes: no existe otro
estimador insesgado con una menor varianza.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 18 / 38


Precisión y los errores estándar
Cualquier conjunto de estimadores de una regresión para α̂ y β̂
son especı́ficos de la muestra usada en su estimación.
Lo que necesitamos es una medida de la fiabilidad o precisión de
los estimadores (α̂ y β̂). Esta precisión esta dada por los errores
estándar. Considerando los supuestos del modelo de regresión
lineal, los errores estándar estan definidos como:
s P 2
xt
SE(α̂) = s
(xt − x̄)2
P
T
s
1
SE(β̂) = s
(xt − x̄)2
P

donde s es un estimado de desviación estándar de los residuos.


Un estimador insesgado de la desviación estándar de los residuos
es: sP
ût2
s=
T −2
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 19 / 38
Algunos comentarios sobre los errores estándar
estimados

Tanto SE(α̂) como SE(β̂) dependen de s 2 (o s). Mientras más


grande la varianza s 2 , entonces mas grande será la dispersión de
los errores alrededor de su valor medio, por lo tanto más disperso
será y sobre su valor medio.
La suma de los cuadrados de la diferencia de x con respecto a su
media aparece en ambas formulas (de los errores estándar).
Mientras mas grande sea esa suma, menor sera la varianza de los
coeficientes.
Mientras el tamaño de la muestra sea más grande, menor será la
varianza de los coeficientes.

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 20 / 38


Inferencia Estadı́stica
Quisieramos hacer inferencia acerca los valores poblacionales a
partir de los parámetros de la regresión.
Ejemplo:
ŷt = 20,3 + 0,5041xt
(14.38) (0.2561)
β̂ = 0,5091 es un estimado particular del parámetro poblacional
desconocido, β. que tan confiable es este valor estimado?.
El grado de confiabilidad de este estimado particular se mide a
través de los errores estándar de los coeficientes.
Entonces podemos utilizar la información de la muestra para hacer
inferencia acerca de la población. Esto se puede realizar a través
de una prueba de hipótesis.
Siempre tendremos dos hipótesis: la hipótesis nula (H0 ) que es el
enunciado a verificar, y la hipótesis alternativa (H1 ) que representa
los demás resultados posibles.
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 21 / 38
Prueba de Hipótesis: Prueba de Significancia
Los pasos a seguir para realizar una prueba de significancia son:
1 Estimar α̂ y β̂, asi como SE(α̂) y SE(β̂).

2 Calcular el t-estadı́stico, utilizando la siguiente formula:



t-estadı́stico = β̂−β
SE(β̂)
donde β ∗ es el valor de β bajo la hipótesis nula.
3 Comparar el t-estadı́stico con una distribución t-student con T-2

grados de libertad.
4 Elegir un nivel de significancia, que representa la región donde se

rechazara o no la hipótesis nula. Generalmente el nivel de


significancia es 5 %.
5 Dado el nivel de significancia, podemos determinar las regiones de

aceptación y rechazo.
6 Use la tabla de la distribución t-student para obtener los valores

crı́ticos.
7 Realizar la prueba: si el t-estadı́stico cae en la región de rechazo

entonces rechazamos la hipótesis nula.


PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 22 / 38
Prueba de Hipótesis: Prueba de Significancia

Región de rechazo para una prueba de significancia no direccional:

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 23 / 38


Prueba de Hipótesis: Prueba de Significancia

Región de rechazo para una prueba de significancia unidireccional


(extremo derecho):

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 24 / 38


Prueba de Hipótesis: Prueba de Significancia

Región de rechazo para una prueba de significancia unidireccional


(extremo izquierdo):

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 25 / 38


RStudio
# 1. Instalando los paquetes necesarios
#Instalar el paquete XLConnect para subir datos de hoja de calculo

>if(!require("XLConnect")){
+ install.packages("XLConnect")
+ library("XLConnect")
+ }

#2. Levantando los datos de la hoja de excel


> wb = loadWorkbook("capm1.xlsx")

#3. Generando datos en R


> data = readWorksheet(wb, sheet = "table", header = TRUE)

#4. Muestra los primeros valores de la serie


> head(data)
Date SANDP FORD GE MICROSOFT ORACLE USTB3M
1 2002-01-01 1130.20 12.57 25.70 27.33 16.64 1.73
2 2002-02-01 1106.73 12.23 26.75 25.02 16.03 1.75
3 2002-03-01 1147.39 13.55 25.99 25.87 12.34 1.77
4 2002-04-01 1076.92 13.15 21.92 22.41 9.68 1.78
5 2002-05-01 1067.14 14.59Unidad
PhD Rafael Nivı́n 21.64de Postgrado
21.84 7.64
FIEECS 1.77 2019 26 / 38
#5 agregando el retorno mensual y retorno en exceso

> data$rsandp=100*c(NA,diff(log(data$SANDP)))
> data$rford=100*c(NA,diff(log(data$FORD)))
> data$ersandp=data$rsandp-data$USTB3M/12
> data$erford=data$rford-data$USTB3M/12

#6 grafico del retorno en exceso


> plot(data$Date,data$erford, type="l",lwd=2, col="blue",
xlab="fecha", ylab="excess return", main="Excess return: Ford vs S&P")
> lines(data$Date,data$ersandp, type="l",lwd=2, col="red")
> legend("topleft", legend=c("Ford", "S&P"),
col=c("blue", "red"),lty=1,lwd=2)

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 27 / 38


PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 28 / 38
#7 Modelo de Regresión lineal: CAPM

> capm = lm(erford ˜ ersandp,data=data)


> summary(capm)

Call:
lm(formula = erford ˜ ersandp, data = data)

Residuals:
Min 1Q Median 3Q Max
-48.758 -7.248 -1.305 5.755 63.299

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.3199 1.0864 -0.294 0.769
ersandp 2.0262 0.2377 8.523 2.98e-14 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 12.62 on 133 degrees of freedom


(1 observation deleted due to missingness)
Multiple R-squared: 0.3532, Adjusted R-squared: 0.3484
F-statistic: 72.64 on 1 and 133 DF, p-value: 2.981e-14

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 29 / 38


#8 Prueba de Hipotesis Simple

> hm = rbind(c(0,1))
> rhs = c(1)
> linearHypothesis(capm,hm,rhs)

Linear hypothesis test

Hypothesis:
ersandp = 1

Model 1: restricted model


Model 2: erford ˜ ersandp

Res.Df RSS Df Sum of Sq F Pr(>F)


1 134 24144
2 133 21178 1 2966.8 18.632 3.072e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 30 / 38


#9 Prueba de Hipotesis Conjunta

> hm = rbind(c(1,0),c(0,1))
> rhs = c(0,2)
> linearHypothesis(capm,hm,rhs)

Linear hypothesis test

Hypothesis:
(Intercept) = 0
ersandp = 2

Model 1: restricted model


Model 2: erford ˜ ersandp

Res.Df RSS Df Sum of Sq F Pr(>F)


1 135 21193
2 133 21178 2 15.479 0.0486 0.9526

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 31 / 38


PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 32 / 38
RStudio: Modelo APT

#1. Levantando los datos de la hoja de excel


> wb = loadWorkbook("macro1.xlsx")
> data = readWorksheet(wb, sheet = "data", header = TRUE)

#2. Generando series requeridas


data$dspread=c(NA,diff(data$BAA.AAA.SPREAD))
data$dcredit=c(NA,diff(data$CONSUMER.CREDIT))
data$dprod=c(NA,diff(data$Industrial.production))
data$rmsoft=100*c(NA,diff(log(data$Microsoft)))
data$rsandp=100*c(NA,diff(log(data$SANDP)))
data$dmoney=c(NA,diff(data$M1MONEY.SUPPLY))
data$inflation=100*c(NA,diff(log(data$CPI)))
data$term=data$USTB10Y-data$USTB3M

data$dinflation=c(NA,diff(data$inflation))
data$mustb3m=data$USTB3M/12
data$rterm=c(NA,diff(data$term))
data$ersandp=data$rsandp-data$mustb3m
data$ermsoft=data$rmsoft-data$mustb3m
head(data)
PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 33 / 38
#3 Modelo de Regresión lineal: APT

> apt = lm(ermsoft ˜ ersandp+dprod+dcredit+dinflation+dmoney+dspread+rterm,data=data


> summary(apt)

Residuals:
Min 1Q Median 3Q Max
-66.985 -3.643 1.105 6.661 26.587

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.514e-01 9.048e-01 -0.167 0.8672
ersandp 1.360e+00 1.566e-01 8.687 <2e-16 ***
dprod -1.426e+00 1.324e+00 -1.076 0.2825
dcredit -4.053e-05 7.640e-05 -0.530 0.5961
dinflation 2.960e+00 2.166e+00 1.366 0.1728
dmoney -1.109e-02 3.518e-02 -0.315 0.7528
dspread 5.367e+00 6.914e+00 0.776 0.4382
rterm 4.316e+00 2.515e+00 1.716 0.0872 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 12.66 on 316 degrees of freedom


(2 observations deleted due to missingness)
Multiple R-squared: 0.2068, Adjusted R-squared: 0.1892
F-statistic: 11.77 on 7 and 316 DF, p-value: 2.537e-13

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 34 / 38


#4 Hipotesis conjunta
> hm = rbind(c(0,0,1,0,0,0,0,0),c(0,0,0,1,0,0,0,0),c(0,0,0,0,1,0,0,0),
c(0,0,0,0,0,1,0,0),c(0,0,0,0,0,0,1,0))
> rhs = c(0,0,0,0,0)
> linearHypothesis(apt,hm,rhs)
Linear hypothesis test

Hypothesis:
dprod = 0
dcredit = 0
dinflation = 0
dmoney = 0
dspread = 0

Model 1: restricted model


Model 2: ermsoft ˜ ersandp + dprod + dcredit + dinflation + dmoney + dspread +
rterm

Res.Df RSS Df Sum of Sq F Pr(>F)


1 321 51321
2 316 50638 5 683.4 0.8529 0.5131

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 35 / 38


#5 heterocedaticidad
> library(lmtest)
> library(sandwich)
> bptest(apt)

studentized Breusch-Pagan test


data: apt
BP = 0.99906, df = 7, p-value = 0.9948

> coeftest(apt, vcov = vcovHC(apt, "HC1"))

t test of coefficients:

Estimate Std. Error t value Pr(>|t|)


(Intercept) -1.5141e-01 7.9890e-01 -0.1895 0.84981
ersandp 1.3604e+00 1.4403e-01 9.4458 < 2e-16 ***
dprod -1.4258e+00 8.5231e-01 -1.6729 0.09535 .
dcredit -4.0532e-05 5.3688e-05 -0.7550 0.45084
dinflation 2.9599e+00 1.7640e+00 1.6780 0.09434 .
dmoney -1.1087e-02 2.7081e-02 -0.4094 0.68253
dspread 5.3666e+00 4.5730e+00 1.1735 0.24146
rterm 4.3158e+00 2.1230e+00 2.0329 0.04290 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 36 / 38


Breusch-Godfrey test:

ut = ρ1 ut−1 + ρ2 ut−2 + ... + ρr ut−r + vt

H0 : ρ1 = ρ2 = ... = ρr = 0

Ha : ρ1 6= 0 or ... or ρr 6= 0

#6 Autocorrelación
> bgtest(apt)

Breusch-Godfrey test for serial correlation of order up to 1

data: apt
LM test = 2.3624, df = 1, p-value = 0.1243

> bgtest(apt,order=10)

Breusch-Godfrey test for serial correlation of order up to 10

data: apt
LM test = 22.623, df = 10, p-value = 0.01223

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 37 / 38


Multicolinealidad:
> myvars <- c("ersandp","dprod","dcredit","dinflation","dmoney","dspread","rterm")
> newdata <- data[myvars]
> round(cor(newdata[3:326,]),digits=5)

ersandp dprod dcredit dinflation dmoney dspread rterm


ersandp 1.00000 -0.02533 0.03635 -0.00379 0.02407 -0.17582 -0.02204
dprod -0.02533 1.00000 0.14107 -0.12427 -0.13006 -0.05557 -0.00238
dcredit 0.03635 0.14107 1.00000 0.04516 -0.01172 0.01526 0.00968
dinflation -0.00379 -0.12427 0.04516 1.00000 -0.09797 -0.22484 -0.05419
dmoney 0.02407 -0.13006 -0.01172 -0.09797 1.00000 0.21358 -0.08622
dspread -0.17582 -0.05557 0.01526 -0.22484 0.21358 1.00000 0.00157
rterm -0.02204 -0.00238 0.00968 -0.05419 -0.08622 0.00157 1.00000

Normalidad de los errores:


> jarque.bera.test(apt$residuals)

Jarque Bera Test

data: apt$residuals
X-squared = 1845.4, df = 2, p-value < 2.2e-16

PhD Rafael Nivı́n Unidad de Postgrado FIEECS 2019 38 / 38

S-ar putea să vă placă și