¿Se puede utilizar el Análisis de componentes principales en precios de acciones / datos no estacionarios?

10

Estoy leyendo un ejemplo dado en el libro Machine Learning for Hackers . Primero elaboraré el ejemplo y luego hablaré sobre mi pregunta.

Ejemplo :

Toma un conjunto de datos durante 10 años de 25 precios de las acciones. Ejecuta PCA en los 25 precios de las acciones. Compara el componente principal con el índice Dow Jones. ¡Observa una similitud muy fuerte entre PC y DJI!

Por lo que entiendo, ¡el ejemplo es más como un juguete para ayudar a los novatos como yo a comprender cuán efectiva es una herramienta PCA!

Sin embargo, al leer de otra fuente , veo que los precios de las acciones no son estacionarios y ejecutar PCA en los precios de las acciones es absurdo. Las fuentes de donde leí ridiculizan totalmente la idea de calcular la covarianza y el PCA para los precios de las acciones.

Preguntas :

  1. ¿Cómo funcionó tan bien el ejemplo? El PCA de los precios de las acciones y DJI estaban muy cerca el uno del otro. Y los datos son datos reales de los precios de las acciones 2002-2011.

  2. ¿Alguien puede señalarme algún recurso agradable para leer datos estacionarios / no estacionarios? Soy un programador. Tengo buenos antecedentes matemáticos. Pero no he hecho matemáticas serias en 3 años. He comenzado a leer nuevamente sobre cosas como caminatas aleatorias, etc.

claudio
fuente

Respuestas:

10

Este artículo sirve para responder en parte la pregunta original y algunas de las preguntas planteadas en los comentarios a la respuesta de @ JonEgil.

i.i.d.i.i.d.i.i.d.. Es por eso que tiene sentido ejecutar PCA en retornos (logarítmicos) en lugar de precios.

i.i.d.

Ptr:=log(Pt)log(Pt1)=logPtPt1r:=PtPt1Pt1hh

Richard Hardy
fuente
1
f(ti)logf(ti+1)f(ti)
1
@amoeba, agregué una explicación rápida y tengo que irme ahora. Espero no haber cometido demasiados errores allí. Volveré mañana si hay más problemas.
Richard Hardy
1
Gracias. Ahora veo que los retornos (retornos logarítmicos) son esencialmente una derivada (primera diferencia) del logaritmo de los precios. Entonces, si la afirmación es que los retornos son iid y los precios de registro son caminatas aleatorias, entonces tiene sentido. Sin embargo, todavía estoy sorprendido por el ejemplo de Dow Jones y agradecería cualquier aclaración adicional.
ameba
6

Ejecuto este tipo de análisis profesionalmente y puedo confirmar que de hecho son útiles. Pero asegúrese de analizar las devoluciones, no los precios. Esto también se destaca por la crítica en Slender Means:

To perform PCA, your data have to have a meaningful covariance matrix 
(or correlation matrix, but the conditions are equivalent). They analyze 
stock prices, which are non-stationary time series variables.

Un caso de uso típico en nuestro análisis es cuantificar el riesgo sistémico en el mercado. Cuanto más co-movimiento en el mercado, menos diversificación tendrá realmente en su cartera. Esto puede, por ejemplo, cuantificarse por la cantidad de varianza descrita por el primer componente principal. Que es idéntico al valor del primer valor propio.

Para los datos financieros, normalmente se examina una ventana móvil con el tiempo. Es útil alguna forma de factor de descomposición que atenúe las observaciones más antiguas. Para datos diarios, de 20 a 60 días, para datos semanales de 1 a 2 años, todo según sus necesidades.

Tenga en cuenta que para los mercados financieros mundiales, con decenas o cientos de miles de precios de activos que cambian continuamente, un típico no puede ejecutar una matriz de covarianza de 100K frente a 100K. En cambio, el caso de uso típico es ejecutar el análisis por país, por sector u otros grupos más significativos. Alternativamente, desglosar el rendimiento por un conjunto de factores subyacentes (valor, tamaño, calidad, crédito ...) y hacer el análisis de PCA / Covarianza sobre estos.

Algunos buenos artículos incluyen la discusión de Attilio Meucci sobre el número efectivo de apuestas: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=1358533

, y también Ledoit y Wolf's Honey, reduje la matriz de covarianza de muestra http://www.math.umn.edu/~bemis/MFM/2014/spring/References/lw_shrinkage.pdf

Para una introducción financiera a la estacionariedad, por qué no comenzar con Investopedia. No es riguroso, pero transmite las ideas principales.

¡Buena suerte!

EDITAR: Aquí hay un ejemplo de 3 acciones que muestra Apple, Google y Dow Jones con retornos diarios hasta 2015. El triángulo superior muestra la correlación del rendimiento, el triángulo inferior muestra la correlación de los precios.

Correlación de retorno del triángulo superior, correlación de precio del triángulo inferior

Como se puede ver, Apple tiene una mayor correlación de precios con Dow (abajo a la izquierda 0.76) que la correlación de retorno (arriba a la derecha 0.66). ¿Qué podemos aprender de eso? No mucho. Google tiene una correlación de precios negativa tanto con Apple (-0.28) como con Dow (-0.27). Nuevamente, no hay mucho que aprender de eso. Sin embargo, las correlaciones de retorno nos dicen que Apple y Google tienen una correlación bastante alta con el Dow (0.66 y 0.53 respectivamente). Eso nos dice algo sobre el co-movimiento (cambio de precio) de los activos en una cartera. Esa es información útil.

El punto principal es que, aunque la correlación de precios puede calcularse con la misma facilidad, no es interesante. ¿Por qué? Porque el precio de una acción no es interesante en sí mismo. El cambio de precio , sin embargo, es muy interesante.

Jon Egil
fuente
¿Puede ampliar más sobre la parte principal de la pregunta sobre la diferencia entre usar precios y devoluciones? Entiendo que cuando se usan precios, la matriz de correlación estará influenciada por las no estacionarias; por ejemplo, si todos los precios crecen linealmente, todas las correlaciones serán muy positivas. Primero, ¿por qué es malo? En particular, dado que Dow Jones es esencialmente un precio promedio y también crecerá (como lo hará PC1). En segundo lugar, ¿cómo se supone que ayuda el uso de devoluciones? Los "retornos" de AFAIK son relaciones registradas de puntos vecinos; ¿Por qué es significativo y cómo se relaciona con Dow Jones?
ameba
Gracias por su respuesta informativa. Pero no responde mi pregunta. Quiero entender por qué el análisis de precios funciona muy bien para el conjunto de datos del libro. Y la ameba ha planteado muchas preguntas válidas.
claudio
1
@claudius: El hecho de que PCA en precios ofrezca algo similar a Dow Jones, que es el precio promedio, no es sorprendente en absoluto. Me pregunto por qué PCA en devoluciones produce un mejor ajuste. Quizás Jon pueda aclarar.
ameba
1
No he mirado el código real que se ejecuta en ML para los piratas informáticos, pero cada vez que alguien dice que analiza los precios, 99 veces de cada 100 lo que realmente analizan son las devoluciones de registros. Por ejemplo, hoy el Dow ha bajado 162 puntos, mientras que Apple ha bajado 0,88 dólares. Los números no solo son muy diferentes, sino que incluso están en una escala diferente, puntos de índice versus dinero. Pero en términos de PCT, 0.91% y 0.75% son comparables y los números con los que desea trabajar. Para algunos análisis, uno puede reducir la tendencia de los datos restando la media. En las series de tiempo financieras a corto plazo, esto a menudo se ignora, asumiendo que no hay tendencia.
Jon Egil
1
@amoeba, para responder (en parte) a las preguntas planteadas en los comentarios, los retornos son aproximadamente iid mientras que los precios son aproximadamente caminatas aleatorias. Los componentes principales tienen sus buenas propiedades bajo el supuesto de observaciones iid. Es por eso que tiene sentido ejecutar PCA en los retornos en lugar de los precios. Ruey S. Tsay ha abogado por ejecutar PCA en residuos de modelos econométricos de series de tiempo financieras, ya que normalmente se supone que los residuos son iid, creo que podría incluirse en algún lugar en su libro de texto "Análisis de series de tiempo multivariante con R y aplicaciones financieras".
Richard Hardy