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

 
Mihail Marchukajtes:

Esta es la primera opción, y la segunda es construir pequeños modelos sin adaptación durante un periodo de tiempo relativamente corto. Por así decirlo, asaltando el mercado. Entras, con un optimel, te llevas un par de buenos tratos de los plebeyos, y te vas hasta la próxima vez....

Puedes desactivar la memoria a largo plazo en un bot y será como un recién nacido cada día, pero la falta de experiencia a largo plazo es siempre un fiasco y el día de la marmota

 
SanSanych Fomenko:

No necesito pensar, para mí es una fase superada con un archivo bastante amplio de resultados experimentales.

Voy a repetir lo que he escrito muchas veces.

1. Objetivo ZZ.

2. He inventado unos 200 predictores para este objetivo

3. 27 predictores de 200 según el algoritmo de "influencia en el objetivo"

4. Seleccioné predictores de 27 predictores en cada barra y cambié el número de predictores seleccionados de 6-7 a 15 de 27.

5. Ajustando rf. El error de ajuste es ligeramente inferior al 30%.


No hay ciclos infinitos. El 30% es un resultado muy bueno, pero en teoría. No he conseguido construir un Asesor Experto práctico utilizando este resultado, tuve que añadir indicadores de tendencia. Ahora estoy cambiando los indicadores (basura) a GARCH.

Lo que tengo que probar, los enfoques son idénticos porque es un principio, pero ¿qué es rfe?

P.D. Tengo modelos contados en indicadores cuya salida tiene flecha hacia arriba o hacia abajo. El Asesor Experto tiene la función de un "abridor" fiable

 
SanSanych Fomenko:

No necesito pensar: para mí, ya se ha hecho, con un archivo bastante grande de resultados experimentales.

Bueno, no tenemos que hacerlo si no puedes hacerlo.

se diría que somos más listos que tú :)

PS Me acostumbro a aprender de la experiencia de otras personas.

 
Maxim Dmitrievsky:

Puedes simplemente apagar la memoria a largo plazo del bot y renacerá cada día, pero la falta de experiencia a largo plazo es siempre un fiasco y el día de la marmota

La sobreoptimización diaria por la mañana no es buena, en esto estoy de acuerdo. El TC necesita un intervalo algo más prolongado para funcionar. En mi M15 una semana es lo justo. Si considero 40 señales en el entrenamiento donde el intervalo de confianza para el modelo es de unos 20 incluyendo 5 en OOS (viernes) los otros 15 ya están trabajando, normalmente 3-4 ofertas por día, ¡así que es una semana para mí! Es el día de la marmota otra vez, o más bien la semana de la marmota, así que es el trabajo ... No puedo evitarlo :-). Sin embargo, me gusta, y Steve Jobs tenía razón. "No hay mejor trabajo que una afición bien pagada.

 
Maxim Dmitrievsky:

Bueno, no tenemos que hacerlo si no puedes hacerlo.

Se diría que somos más listos que tú :)

P.D. Estoy aprendiendo de las experiencias de otras personas.

No he dicho que no funcione. Lo hice, y mucho: conseguí resolver algunos problemas financieros.

Pero mi Asesor Experto ha sido reentrenado y la fuente de los indicadores que estoy tratando de deshacerse de.

 
Mihail Marchukajtes:

"No hay mejor trabajo que una afición bien pagada".

Saint-Simon planteó esta afirmación 200 años antes que Jobs como base del socialismo utópico.

 
SanSanych Fomenko:

Saint-Simon, 200 años antes que Jobs, basó el socialismo utópico en esta premisa.

Muy posiblemente. No voy a discutir...

 
Mihail Marchukajtes:

Pero no creo que una métrica VI sea suficiente. Hay que intentar calcular la redundancia y tratar de reducir el número de columnas.

Tal vez ya existan funciones que permitan estimar los datos de entrada a la salida además de la información mutua????

Hay muchas bibliotecas (paquetes) en R para muchos casos, incluyendo la selección de predictores (columnas).
https://cran.r-project.org/web/packages/available_packages_by_name.html son bibliotecas oficialmente soportadas, y hay cientos más en githab. Allí puedes buscar por palabras clave lo que necesitas.

Para la determinación del VI de cada predictor con propósito funciona bien el paquete vtreat (función designTreatments, buscar por su nombre en este sitio, dará muchos enlaces a este tema con ejemplos).
Hace poco di un ejemplo de cómo utilizar el paquete FSelector para encontrar un buen conjunto de predictores -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Se ofrecen otros paquetes - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta me parece el más fácil de usar (pero quizás no el mejor), sólo hay que ejecutar dicho código y esperar -

#  install.packages("Boruta", dependencies=T) #  эту строчку нужно запустить всего 1 раз чтобы автоматически установить пакет
# library(Boruta) #  эту строчку нужно запустить каждый раз когда вы заново открываете R или RStudio, чтоб загрузить пакет в память
forexFeatures <- read.csv2("Qwe.txt", dec=".")
Boruta(TargetProf ~ . , data = forexFeatures) #запуск  с дефолтными параметрами
Boruta(TargetProf ~ . , data = forexFeatures, doTrace = 1, maxRuns = 1000) #больше  логов на экране, и больше итераций алгоритма, результат должен быть качественней чем дефолтный
El código dará"4 atributos importantes: AD10, Del, Del2, N;", así que puedes tomar sólo estos 4 e intentar enseñar el modelo con ellos.
N (número ordinal) también se considera bueno porque la clase 1 se concentra al principio del archivo con N pequeño. En general, es mejor eliminar primero de la tabla las columnas que sólo contienen información para el usuario y no para los modelos.
forexFeatures <- forexFeatures[,-1]
Boruta(TargetProf ~ . , data = forexFeatures, doTrace = 1, maxRuns = 1000)
# 2 attributes confirmed important: AD10, Del;
 
Dr. Trader:

R tiene muchas bibliotecas (paquetes) para muchos usos, incluyendo la selección de predictores (columnas).
https://cran.r-project.org/web/packages/available_packages_by_name.html son bibliotecas oficialmente soportadas, y hay cientos más en githab. Allí puedes buscar por palabras clave lo que necesitas.

Para la determinación del VI de cada predictor con propósito funciona bien el paquete vtreat (función designTreatments, busque por su nombre en este sitio, dará muchos enlaces a este tema con ejemplos).
Hace poco di un ejemplo de cómo utilizar el paquete FSelector para encontrar un buen conjunto de predictores -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Se ofrecen otros paquetes - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta me parece el más fácil de usar (pero quizás no el mejor), sólo tienes que ejecutar este código y esperar

Mm-hmm. Ya me he descargado un montón de cosas, pero mis conocimientos de R son escasos, por eso las panderetas. Pero gracias por la información. Creo que tengo que establecer un conjunto específico de métricas, que será suficiente para el análisis. A mí también me gustó el VI, viendo los modelos y los resultados de las pruebas que obtuve, pero creo que no es suficiente. Una vez definido un conjunto de métricas, lo único que queda es ampliar el conjunto de insumos, para que haya algo que elegir, y lo más importante es la calidad de los insumos en relación con el resultado. Encontrar buenos insumos para su ST es más de la mitad de la batalla... así que a ....

 
Dr. Trader:

Hay muchas bibliotecas (paquetes) en R para muchos usos, incluyendo la selección de predictores (columnas).
https://cran.r-project.org/web/packages/available_packages_by_name.html son bibliotecas oficialmente soportadas, y hay cientos más en githab. Allí puedes buscar por palabras clave lo que necesitas.

Para la determinación del VI de cada predictor con propósito funciona bien el paquete vtreat (función designTreatments, buscar por su nombre en este sitio, dará muchos enlaces a este tema con ejemplos).
Hace poco di un ejemplo de cómo utilizar el paquete FSelector para encontrar un buen conjunto de predictores -https://www.mql5.com/ru/forum/86386/page643#comment_6472393
Se ofrecen otros paquetes - FSelectorRcpp, CORElearn, VSURF, VarSelRF, Boruta.

Boruta me parece el más fácil de usar (pero quizás no el mejor), sólo tienes que ejecutar este código y esperar

El código dará"4 atributos confirmados importantes: AD10, Del, Del2, N;", por lo que puede tomar sólo estos 4 y tratar de entrenar el modelo con ellos.
N (número ordinal) también se considera bueno porque la clase 1 se concentra al principio del archivo con N pequeño. En general, es mejor eliminar primero de la tabla las columnas que sólo contienen información para el usuario y no para los modelos.

Espera, déjame intentarlo de nuevo. Sólo quería pedir un ejemplo de código para usar....