Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 838

 
Mihail Marchukajtes:

En general, utilizo este paquete en particular para seleccionar predictores. Está claro que hay desventajas, especialmente la falta de interacción de varios predictores en relación con el objetivo. Pero en general es suficiente para mi optimización hasta ahora... Así que si hay otros paquetes para el preprocesamiento de datos los consideraría con gusto...

Por mi experiencia, puedo recomendar el paquete RandomUniformForest como el que trata de forma más completa y profesional varios aspectos de la importancia de los predictores. Aquí se pueden ver ejemplos

Buena suerte

PD: Por cierto, uno de los pocos que permite reentrenar el modelo con nuevos datos. Lo que ahorra mucho tiempo.

 
Dr. Trader:

Un nuevo recorrido cada semana. En una semana tienes que entrenar el modelo y enviarles las predicciones. Pero la estimación a futuro de su modelo sólo se conocerá después de otras tres semanas, sus predicciones se compararán con las reales para esas 3 semanas.

Creo que se quedan con al menos el 90%.

¿Cómo que "creo que se quedan con al menos el 90%"? ¿Crees que negocian estas previsiones que se les envían? En general, ¿cómo se pueden averiguar las señales para calcular la previsión con antelación? ¿Por interpolación o algo así? Lo tienen escrito en su documento, que es solo una "prueba de trabajo", como en la minería y el ganador se elige al azar, probablemente la mitad de los resultados son casi iguales, luego se tira al azar un filtro que clasifica adicionalmente, bueno es un casino vergonzoso, y el conjunto de datos es probablemente puro sintético, ruidoso con baja preponderancia de la señal, no hay mercado en absoluto. Toda esta basura sobre los fondos de cobertura, etc., es puramente para ganar popularidad para su moneda.

 
Maxim Dmitrievsky:

Entonces, mikhail, ¿te has recuperado de tu frenesí, estás a punto de empezar a evaluar tu ts con sensatez y sin fanatismo? :)

No tenía rabia. Sólo el cálculo en frío, que no ha cambiado en nada desde la última vez. Por no hablar de la teoría del acercamiento, que sigue funcionando. Por un momento...

 
govich:

En concreto, la cantidad que conservan no está escrita oficialmente. Todo tipo de revistas financieras escribieron sobre un beneficio de 1,5 millones en 2016, y si comparas cuánto de eso pagaron a los participantes, no es mucho.

> ¿Crees que negocian estas previsiones que se les envían?
Sí, esa es la estrategia. Por ejemplo, crearé un montón de características, crearé una hoja de cálculo de formación, las enviaré al foro, 10 personas darán sus previsiones y yo operaré según ellas, así de sencillo.
Durante mucho tiempo no tuvieron criptografía propia, pagaban en bitcoins. Acaban de tomar unos miles de dólares en bitcoins cada semana durante un año. Entonces lanzaron su propia criptografía para no tener que lidiar con los bitcoins.

> ¿Cómo se conocen de antemano los signos para los que se puede calcular la previsión? ¿Es una interpolación?
Interpolación, predicción por vecinos más cercanos, clustering, hay muchas opciones, no te dirán la respuesta concreta, sólo puedes adivinar.

 
Vladimir Perervenko:

Por mi experiencia, puedo recomendar el paquete RandomUniformForest como la forma más completa y profesional de tratar los diversos aspectos de la importancia de los predictores. Puede encontrar ejemplos aquí

Buena suerte

PD: Por cierto, uno de los pocos que permite reentrenar el modelo con nuevos datos. Lo que ahorra un mar de tiempo.

Lo he probado. No pude obtener ningún resultado.

> ruf <- randomUniformForest( X = x1,Y = y1,xtest = x2, ytest = y2,mtry = 1, ntree = 300,threads = 2, nodesize = 2)

En 5 minutos genera.
Error en OOB.votes - Y: Matrices multidimensionales no similares

Estructura de las matrices para alimentar:

> str(x1)
num [1:20000, 1:9] 0,00148 0,33309 0,46698 0,26331 -0,05916 ...
> str(y1)
num [1:20000, 1] 0 0 0 0 0 1 1 1 ...
> str(x2)
num [1:10000, 1:9] 0,000746 0,162699 0,379051 -0,529729 -0,340744 ...
> str(y2)
num [1:10000, 1] 0 0 1 1 0 0 0 0 0 ...

No está claro - la similitud de lo que con lo que requiere.
Probado sin xtest = x2, ytest = y2 - mismo resultado.
Pasando al siguiente paquete.

 
elibrarius:

Lo he probado. No pude obtener ningún resultado...

> ruf <- randomUniformForest( X = x1,Y = y1,xtest = x2, ytest = y2,mtry = 1, ntree = 300,threads = 2, nodesize = 2)

Después de 5 minutos.
Error en el OOB.

La estructura de las matrices que se introducen:

> str(x1)
num [1:20000, 1:9] 0,00148 0,33309 0,46698 0,26331 -0,05916 ...
> str(y1)
num [1:20000, 1] 0 0 0 0 0 1 1 1 ...
> str(x2)
num [1:10000, 1:9] 0,000746 0,162699 0,379051 -0,529729 -0,340744 ...
> str(y2)
num [1:10000, 1] 0 0 1 1 0 0 0 0 0 ...

No está claro - la similitud de lo que con lo que requiere.
Probado sin xtest = x2, ytest = y2 - mismo resultado.
Pasando al siguiente paquete.

No sé por qué no funcionó, a mí me funciona.

Obtuvo buenos resultados en caret. Hay tres funciones de selección de predictores, que tienen diferente eficiencia y consumen diversos recursos computacionales.


Hay otro paquete muy interesante: CORElearn. Este paquete contiene dos funciones para la selección de predictores y las he utilizado conjuntamente y dan muy buenos resultados en mis predictores. Especialmente curioso es attrEval con un conjunto absolutamente fantástico de métodos de evaluación de selección, entre los que ocupa un lugar especial el grupo Relief, que evalúa no sólo una observación (cadena) sino también las cadenas más cercanas.


Buena suerte.


PS.

No olvide que la selección del predictor debe constar de al menos los siguientes pasos:

  • Selección por: predictores relevantes para el objetivo. Wizard dio aquí un enlace a la teoría de este paso. Se pueden distinguir dos métodos: la estadística y la entropía. Para ambos, había un código aquí
  • selección por paquetes enumerados que NO son relevantes para el futuro modelo
  • Selección que se realiza sobre los resultados del modelo. Muy eficaz en los modelos lineales. Por ejemplo, mediante glm seleccionamos sólo los predictores significativos y luego sólo ellos en la red. El resultado puede ser sorprendente.


Antes de seleccionar los predictores puede ser necesario el preprocesamiento, por ejemplo el centrado. Está bien descrito en el artículode Vladimir Perervenko

 
elibrarius:

Lo he probado. No pude obtener ningún resultado...

> ruf <- randomUniformForest( X = x1,Y = y1,xtest = x2, ytest = y2,mtry = 1, ntree = 300,threads = 2, nodesize = 2)

Después de 5 minutos.
Error en el OOB.

La estructura de las matrices que se introducen:

> str(x1)
num [1:20000, 1:9] 0,00148 0,33309 0,46698 0,26331 -0,05916 ...
> str(y1)
num [1:20000, 1] 0 0 0 0 0 1 1 1 ...
> str(x2)
num [1:10000, 1:9] 0,000746 0,162699 0,379051 -0,529729 -0,340744 ...
> str(y2)
num [1:10000, 1] 0 0 1 1 0 0 0 0 0 ...

No está claro - la similitud de lo que con lo que requiere.
Probado sin xtest = x2, ytest = y2 - mismo resultado.
Pasando al siguiente paquete.

¿Puedes publicar los conjuntos originales?

Es necesario especificar que no se trata de una regresión, ya que su objetivo no es un factor. Añadir parámetros

ruf <- randomUniformForest( X = x1,Y = y1,xtest = x2, ytest = y2,mtry = 3, ntree = 300,threads = 2, nodesize = 2, regression = FALSE)

o

ruf <- randomUniformForest( X = x1, Y = y1 %>% as.factor, xtest = x2, ytest = y2 %>% as.factor, mtry = 3,

ntree = 300, threads = 2, nodesize = 2)

Buena suerte

 
SanSanych Fomenko:

Hay otro paquete muy interesante: CORElearn. Hay dos funciones en ese paquete para la selección de predictores, las he utilizado por parejas, dan muy buenos resultados en mis predictores. Especialmente curioso es attrEval con un conjunto absolutamente fantástico de métodos de evaluación de selección, entre los que ocupa un lugar especial el grupo Relief, que evalúa no sólo una observación (cadena) sino también las cadenas más cercanas.


De acuerdo. En principio, este es probablemente el paquete más serio para la RF. Debes prestar atención al desarrollador Marko Robnik-Sikonja.

Buena suerte

 
Vladimir Perervenko:

¿Puedes publicar los conjuntos originales?

Es necesario especificar que no se trata de una regresión, ya que su objetivo no es un factor. Añadir parámetros

ruf <- randomUniformForest( X = x1,Y = y1,xtest = x2, ytest = y2,mtry = 3, ntree = 300,threads = 2, nodesize = 2, regression = FALSE)

o

ruf <- randomUniformForest( X = x1, Y = y1 %>% as.factor, xtest = x2, ytest = y2 %>% as.factor, mtry = 3,

ntree = 300, threads = 2, nodesize = 2)

Buena suerte

Eso ayudó. Gracias.
 
Dr. Trader:

En concreto, la cantidad que se guardan para sí mismos no está escrita oficialmente. Todo tipo de revistas financieras escribieron sobre 1,5 millones de beneficios en 2016, y si se compara cuánto pagaban a los participantes, no es mucho.

> ¿Crees que negocian estas previsiones que se les envían?
Sí, esa es toda la estrategia. Por ejemplo, crearé un montón de características, crearé una hoja de cálculo de formación, las enviaré al foro, 10 personas darán sus previsiones y yo operaré según ellas - todo es sencillo.
Durante mucho tiempo no tuvieron criptografía propia, pagaban en bitcoins. Acaban de tomar unos miles de dólares en bitcoins cada semana durante un año. Entonces lanzaron su propia criptografía para no tener que lidiar con los bitcoins.

> ¿Cómo se conocen de antemano los signos para los que se puede calcular la previsión? ¿Es una interpolación?
Si no conoce la respuesta exacta, sólo puede adivinarla.

1.5m$ son centavos, como para Entire Kantor, escuché que en ese momento cuando colocaron su cripto en el intercambio, algunos participantes (que estaba en la parte superior) tomaron cada si no millones $, entonces cientos de miles $, usted podría obtener el primer lugar y 4000NMR por $ 200 por moneda = 800.000k$ SÓLO una vez, pero esta bola se agotó rápidamente y NMR se estrelló y dio monedas menos, pero probablemente alguien tuvo suerte.

IMHO creo que al principio pueden haber tratado de negociar las previsiones, e incluso los lugares que había eran más o menos predecibles, probablemente el 90% del dinero que se pagó a sí mismos, la mayoría de los primeros cien eran probablemente sus tíos, el dinero no se filtró a quién sabe quién. Pero ahora es un puro casino con "pruebas de trabajo" y mucha aleatoriedad, ese es el rumor al menos.


PD: antes de su moneda, pagaban 6k$ a la semana (¿pero a quién?), es decir, 288k$ al año sale justo ese "honesto" ~20% de 1,5m de beneficios a los quants))) Pero claramente, todas estas cifras, pueden ser fabricadas.