miércoles, 26 de marzo de 2014

¿El movimiento de EUR/USD es simplemente ruido?

En esta entrada vamos a estudiar si la variación de precios del par EUR/USD presenta algún tipo de patrón que pueda ser predecido, o se asemeja más a un ruido blanco. Supongamos que tenemos el par EUR/USD en barras de 1 hora, precio de apertura, y para el año 2013, como muestra la siguiente figura:


Y calculamos la serie temporal de la variación entre los precios:


¿Se puede sacar algo en claro, o se trata de simplemente ruido? Vamos a verlo. Calculamos si la serie de diferencias está autocorrelada para distintos desplazamientos, y vemos el correspondiente correlograma:

Y nos da la típica distribución correspondiente al ruido blanco, donde no existe autocorrelación.



lunes, 24 de marzo de 2014

La hora como factor predictivo en Forex

En una entrada anterior de este blog estudiamos si el par EUR/USD presentaba algún tipo de ciclo o estacionalid en los valores más comunes, tales como el mes del año, día del mes, día de la semana, u hora del día; pero vimos que en ninguna de estos marcos temporales parecía presentar un ciclo claro que nos pudiese ayudar en nuestro sistema de trading.

Sin embargo, esto colisiona con lo que muchos autores de robots de Forex nos dicen, a saber, que la hora en la que se hace trading tiene un gran valor predictivo. Desde un punto de vista económico, esto podría tener sentido, ya que supuestamente no es lo mismo hacer treding sólo cuando las bolas asiáticas están abiertas, que cuando están abiertas las plazas de Londres y Nueva York.

Veamos lo que nos dicen los datos. Vamos a estudiar cuatro años diferentes para cuatro pares distintos.

El primer caso es el ya visto EUR/USD, pero para cuatro periodos de tiempo (años) distintos:


No parece que existan diferencias apreciables entre el comportamiento del par entre las distintas horas. Veamos ahora el caso del GBP/USD:


El resultado es muy parecido, la hora no tiene capacidad predictiva. Veamos ahora el USD/CHF:

 
Exactamente lo mismo. Y por último, el caso del USD/JPY: 

En definitiva, la hora no tiene ningun valor predictivo sobre el valor del cambio. Y la pregunta es, ¿y por qué ciertos autores lo recomiendad? Pues por el problema de siempre: una variable más introducida en el sistema reduce el sesgo del mismo, por lo que un único backtest mejora sensiblemente, pero también incrementa la varianza, por lo que de media, el sistema es peor predictor.

viernes, 21 de marzo de 2014

Búsqueda de Ciclos en EUR/USD

Cuando se trabaja con series temporales, el primer análisis que siempre se hace es la búsqueda de tendencias y estacionalidad en los datos. Una vez identificadas estas tendencias se pueden crear modelos sencillos que nos permiten hacer predicciones sobre la evolución futura de la serie. El problema es que en las series temporales estocásticas, muy habituales en finanzas, no existen tendencias y estacionalidad bien definidos, y por tanto, se requieren de modelos más complejos para explicar el comportamiento de la serie. Por ejemplo, con el siguiente código R podemos comprobarlo en el par Euro - Dólar:

EURUSD <- read.csv('http://www.quandl.com/api/v1/datasets/QUANDL/EURUSD.csv?&trim_start=2004-01-01&trim_end=2013-12-31&collapse=monthly&sort_order=asc', colClasses=c('Date'='Date'))
Euro <- ts(EURUSD$Rate,  start = c(2004, 1), freq = 12)
layout(1:3)
plot(Euro)                  # Original data
plot(aggregate(Euro))       # Check for a trend in data
boxplot(Euro ~ cycle(Euro)) # Check for a seasonality

Que nos genera la siguiente figura:

Como podemos observar no existe una tendencia clara. A veces el par está alcista, y a veces bajista, y el cambio de tendencia parece aleatorio.

La estacionalidad de una serie temporal está referida a un año completo, pero, ¿existirían cliclos temporarles de menor tamaño? Por ejemplo, ciclos mensuales, semanales o diarios. A continuación vamos a verlo para el mismo par.

El ciclo mensual de EUR/USD para los años 2012 y 2013 es el siguiente:


Aunque existe variabilidad entre unos días y otros, no se observa ningún tipo de ciclo, y sobre todo, los boxplot no indican que podamos distinguir estadísticamente entre unos días y otros.

El ciclo semanal de siete días tiene la siguiente forma:

En este caso el resultado es aun más desesperanzador, porque todos los días de la semana tienen un corportamiento muy parecido.

Y por último, el ciclo diario de 24 horas es el siguiente:

Que al igual que el ciclo semanal, ocurre que, a priori, no son distinguibles las distintas horas de trading.