2 votos

La estrategia de Didier Sornette para explotar las correlaciones de rendimiento

En su libro "Why Stock Markets Crash", Didier Sornette analiza una estrategia de negociación que explota las correlaciones de rendimiento.

Considere la posibilidad de un retorno $r$ que se produjo en el momento $t$ y un retorno $r'$ que ocurrieron en un momento posterior $t'$ , donde $t$ y $t'$ son múltiplos de alguna unidad de tiempo (digamos 5 minutos). $r$ y $r'$ puede descomponerse en una contribución media y una parte variable. Nos interesa cuantificar la correlación $C(t, t')$ entre la parte variable incierta que se define como la media del producto de la parte variable parte variable $r$ y de $r'$ normalizado por la varianza (volatilidad) de los rendimientos, de modo que $C(t, t' = t) = 1$ (correlación perfecta entre $r$ y a sí mismo).

Un simple cálculo matemático muestra que el mejor predictor lineal $m_t$ para la devolución en el momento $t$ , conociendo la historia pasada $r_{t-1}, \> r_{t-2}, \ldots ,r_i, \ldots,$ viene dada por

$$m_t\equiv\frac{1}{B(t, t)}\sum_{i<t} B(i, t)r_i,$$

donde cada $B(i, t)$ es un factor que puede expresarse en términos de coeficiente de correlación $C(t', t)$ y se suele denominar coeficiente $(i, t)$ de la matriz de correlación inversa. Esta fórmula expresa que cada rendimiento pasado $r_i$ impactos en el rendimiento futuro $r_t$ en proporción a su valor con un coeficiente $B(i, t)/B(t, t)$ que es distinto de cero sólo si existe una correlación distinta de cero entre el tiempo $i$ y el tiempo $t$ . Con esta fórmula, se tiene el mejor predictor lineal en el sentido de que minimizará los errores de varianza. Armado con esta predicción, tiene una poderosa estrategia de negociación: comprar si $m_t \> > 0$ (aumento del precio esperado en el futuro) y vender si $m_t < 0$ (se espera disminución futura de los precios).

Estoy tratando de resolver para $m_t$ dado el siguiente conjunto de datos...

+----------+-----------------+
| t        | r               |
+----------+-----------------+
| 15:50:00 | 0.003705090715  |
| 15:51:00 | 0.003873999746  |
| 15:52:00 | 0.002158853672  |
| 15:53:00 | 0.001246754886  |
| 15:54:00 | 0.005646756563  |
| 15:55:00 | -0.001073638262 |
| 15:56:00 | -0.001804395665 |
| 15:57:00 | 0.002322446782  |
| 15:58:00 | 0.001803468933  |
| 15:59:00 | -0.001686730014 |
| 16:00:00 | 0.0008781111203 |
+----------+-----------------+

Primero creo una matriz para los desfases temporales $r_{t}, r_{t-1}, r_{t-2}, r_{t-3}, r_{t-4}$ , llamado $\color{blue}{\mathbf M}$ ... $$ \begin{bmatrix} \color{blue}{0.00087811} & \color{blue}{-0.00168673} & \color{blue}{0.00180347} & \color{blue}{0.00232245} & -0.0018044 \\ -0.00168673 & 0.00180347 & 0.00232245 & -0.0018044 & -0.00107364 \\ 0.00180347 & 0.00232245 & -0.0018044 & -0.00107364 & 0.00564676 \\ 0.00232245 & -0.0018044 & -0.00107364 & 0.00564676 & 0.00124675 \\ -0.0018044 & -0.00107364 & 0.00564676 & 0.00124675 & 0.00215885 \\ \end{bmatrix} $$ Con $\color{blue}{\mathbf M}$ Puedo crear una matriz de correlación, llamada $\color{green}{\mathbf C}$ ... $$ \begin{bmatrix} 1. & \color{green}{-0.15885375} & -0.88120533 & 0.52518141 & 0.32904361 \\ -0.15885375 & 1. & \color{green}{-0.27689212} & -0.87324435 & 0.43345156 \\ -0.88120533 & -0.27689212 & 1. & \color{green}{-0.16496963} & -0.38678436 \\ 0.52518141 & -0.87324435 & -0.16496963 & 1. & \color{green}{-0.18292072} \\ 0.32904361 & 0.43345156 & -0.38678436 & -0.18292072 & 1. \\ \end{bmatrix} $$ y su inversa, llamada $\color{red}{\mathbf I}$ ... $$ \begin{bmatrix} \color{red}{678.1834365} & -47.5405215 & 305.9166473 & -205.4095813 & -138.3472675 \\ -47.5405215 & 557.4221492 & 89.6736779 & 245.3640449 & -138.7710611 \\ 305.9166473 & 89.6736779 & 111.2290498 & -89.4926475 & 61.0341470 \\ -205.4095813 & 245.3640449 & -89.4926475 & 323.4950056 & -2.4011426 \\ -138.3472675 & -138.7710611 & 61.0341470 & -2.4011426 & 120.3071511 \\ \end{bmatrix} $$ A continuación resuelvo para... $$ \sum_{i<t} \color{green}{B(i, t)}\color{blue}{r_i}, $$ de la siguiente manera... $$ \color{green}{\mathbf{C}[0][1]} \left( \color{blue}{\mathbf{M}[0][0]} \right) + \color{green}{\mathbf{C}[1][2]} \left( \color{blue}{\mathbf{M}[0][1]} \right) + \color{green}{\mathbf{C}[2][3]} \left( \color{blue}{\mathbf{M}[0][2]} \right) + \color{green}{\mathbf{C}[3][4]} \left( \color{blue}{\mathbf{M}[0][3]} \right) = -0.000394790246734 $$ Finalmente multiplico por $\frac{1}{B(t,t)}$ que Creo que es igual a $\color{red}{\mathbf{I}[0][0]}$ ... $$ \begin{align} m_t & = -0.000394790246734\left( \frac{1}{B(t,t)} \right) \\ & = -0.000394790246734\left( \color{red}{\mathbf{I}[0][0]} \right) \\ & = -0.000394790246734\left( 678.1834365 \right) \\ & = -0.267740206251 \\ \end{align} $$ ¿Resolví para $m_t$ ¿correctamente?

3voto

Nakedible Puntos 108

No entiendo por qué t es cero en B(t,t) y 1,2,3,4 en B(i,t). ¿Y por qué interpretaste el valor B(i,t) como el inverso de C, pero no B(t,t)? Creo que B(i,t) es la primera columna de I. Una inversa se define por Matrix^-1. Pero, B(*) es un valor. Por lo tanto, usted debe dividir por B(t,t). Aquí, lo multiplicas.

1voto

Vitaly Kushner Puntos 883

¿Por qué no haces una regresión por mínimos cuadrados? Es probable que no sea estable, ¿no?

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