Un uso potencial podía imaginar que sería la identificación de los cambios de paradigma / cambio de régimen. Así como un rápido juguete ejemplo, tal vez usted está interesado en la forma en que el oro es a menudo considerado como una protección contra las caídas en el mercado de valores. Dicen que son la construcción de una estrategia de negociación basada en que la intuición, pero quiere que su modelo a ser más flexible mediante la identificación de los diferentes regímenes para que los diferentes enfoques que podrían funcionar mejor. Métodos de agrupamiento podría ayudar en el análisis. Aquí está un ejemplo rápido de cómo se puede visualizar que tipo de cosa.
También me encontré con un par de recursos en la web después de una rápida búsqueda que usted puede encontrar interesantes.
- El análisis dinámico de la agrupación en clústeres en los datos del mercado financiero
- El Análisis de Cluster para la Evaluación de Estrategias de Trading
-
Encuesta de Profundo Aprendizaje de Técnicas para el Comercio (más general de ML, pero sigue siendo una buena lectura)
R código que se usa para hacer la trama:
library(Quandl)
syms = c(SP500="YAHOO/INDEX_GSPC.4", Gold="CHRIS/CME_GC1.6")
nmeans = 3
prices = na.omit(Quandl(syms, type='xts'))
df = as.data.frame(prices)
clusters = kmeans(df, centers=nmeans)$cluster
par(mar=c(2.5,2.5,0.5,0.5), mgp=c(1.5,0.5,0), family='mono', cex=0.7)
x = as.numeric(prices[,1])
y = as.numeric(prices[,2])
plot(x, y, pch=-1, xlab=names(syms)[1], ylab=names(syms)[2])
for (i in 1:nmeans){
xx = df[clusters==i,1]
yy = df[clusters==i,2]
points(xx, yy, pch=19, col=rgb(t(col2rgb(i)/255), alpha=0.2))
f = lm(yy~poly(xx, 3))
lines(x=xx, y=predict.lm(f, data.frame(x=xx)), col=i, lwd=2)
}
grid(lty=1, col=rgb(0,0,0,0.2))