4 votos

Cómo orthogonalize Fama francés factores?

La Fama francés factores (por ejemplo, tamaño, valor) no son ortogonales entre sí, por ejemplo cuando se desea crear una cartera diversificada de factor de mimmicking carteras (factor de inversiones), la correlación entre los factores que pueden conducir a la no deseados de la concentración de algunos de ellos.

Orthogonalizing los factores de evitar que esto suceda. ¿Alguien sabe cómo actualizar los pesos para las acciones individuales que son subyacentes de los factores, de tal manera que los factores son ortogonales entre sí?

Yo ya había visto este hilo: ¿por Qué no la Fama-French 3 factores ortogonales uno al otro? Pero en realidad no responde a mi pregunta.

3voto

BigCanOfTuna Puntos 210

La Fama-French factores de seguir desde la simple clasificación los procedimientos, por lo que no explícitamente control la correlación. Pero si usted tiene acceso a la base las acciones, usted podría reemplazar este proceso de ordenación por un modelo de optimización que busca una cartera similar a la tradicional Fama-francés de ordenación de la cartera, pero con un la restricción de la correlación entre esta cartera y otros (ver, por ejemplo, en este ejemplo )

Una idea alternativa sería tomar el tiempo de la serie de el factor de carteras y corregir su exposición. Para ejemplo, supongamos que se tienen dos factores de valor y impulso. Aquí es un poco de código R para dar algo de intuición. Yo uso de números aleatorios para los factores.

set.seed(56423)
value <- rnorm(50)
momentum <- rnorm(50)
cor(value, momentum)
## [1] 0.1828126

Así, los factores están correlacionados. La regresión de uno en el otros, a continuación, le dará una pendiente distinto de cero.

model <- lm(value ~ momentum)
## Coefficients:
## (Intercept)   momentum  
##      -0.301      0.153

Pero entonces, la construcción de una cartera de mucho valor, menos este veces cuesta impulso resultará en un valor de la cartera de que no está correlacionada con el impulso más.

round(cor(value - coef(model)["momentum"]*momentum, momentum), 8)
## 0

Si esta ayuda depende de la aplicación y el grado de correlación. Algunas parcelas.

plot(value, value - coef(model)["momentum"]*momentum,
     xlab = "value", ylab = "value 'minus' momentum")

scatter plot 1

plot(value - coef(model)["momentum"]*momentum, momentum,
     xlab = "value 'minus' momentum", ylab = "momentum")

scatter plot 2

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X