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

 
mytarmailS:

1. ¿por qué normalizas manualmente? existe scale()

2. ¿por qué es buena la correlación -1 y 1? solo si 1 es bueno -1 es muy malo, si entiendo bien la idea, -1 es correlación inversa

3. ¿Has probado a controlar el error de un modelo entrenado en una ventana deslizante y, si no te conviene, volver a entrenar el modelo y ver qué pasa?

4. Y la idea global de por qué todo funciona tan mal, el mercado no es estacionario, tenemos que elaborar algún otro concepto de formación de características, tal vez pasar completamente al paradigma de las reglas lógicas, creo que deberíamos alejarnos de los números casi por completo, o estudiar el análisis del espectro)))))

1) Nunca he podido escalar(), se escala y se centra en medio de la nada. Lo ideal sería usar el paquete caret para el preprocesamiento, ya que escala/centra todo muy bien, pero usar otro paquete sería demasiado engorroso para un ejemplo tan simple

2) la correlación cercana a cero significa que no hay correlación, este es el peor caso. El beneficio de la prueba en este caso no dice nada sobre el beneficio potencial de los nuevos datos.
-1 es cuando una alta precisión en el entrenamiento dará resultados consistentemente malos en los nuevos datos. Pero al mismo tiempo, un resultado bajo en el entrenamiento significará un mejor resultado en los nuevos datos :) Esto puede ocurrir si el modelo se ajusta fácilmente a los datos y se reentrena, y con un resultado bajo en el entrenamiento simplemente no tiene tiempo suficiente para memorizar los datos y de alguna manera milagrosamente comercia en positivo. Por ejemplo, la precisión en los datos de entrenamiento puede variar de 0,9 a 1 y en este caso 0,9 será "baja" y la precisión en los nuevos datos variará de 0,5 a 0,6 donde 0,6 será "alta". Es decir, el modelo con un peor resultado no es reentrenado, y tiene una mejor lógica de generalización, y como resultado el resultado en los nuevos datos también es mejor.
Aunque todo esto es bonito en palabras, pero en la realidad nunca he visto una correlación negativa estable. Es más cómodo y fácil ir hacia el +1.

3) Aunque entenderé que el modelo no me convenga, pasará algún tiempo, durante el cual perderá tanto que un modelo normal no funcionará entonces. Puede operar con nuevos modelos primero en una cuenta demo - pero puede ser obsoleto para cuando el modelo sea rentable y comience a operar en una cuenta real. No lo he probado. Será mejor que compruebe de antemano que todo el algoritmo de aprendizaje funciona y da modelos rentables de forma consistente y que establezca algo en lo que confíe para operar en la cuenta real.
Si el algoritmo de aprendizaje es bueno, es mejor actualizar un viejo modelo de trabajo con nuevos datos que crear nuevos modelos desde cero.

4) la ingeniería de características es buena. Yo, por ejemplo, uso indicadores de mt5 en lugar de precio desnudo.

 
Dr.Trader:
¿Y con qué precisión predice su buen modelo el color de una vela de arrastre sobre nuevos datos en condiciones reales? Usted opera en el gráfico diario, ¿verdad?
 
mytarmailS:
¿Y con qué precisión predice su buen modelo el color de una vela en los nuevos datos en condiciones reales? Operas en el gráfico diario, ¿verdad?

Tengo H1, el objetivo es el color de la siguiente vela. La precisión de la predicción es sólo del 55%-60%, pero es suficiente. Incluso en una tendencia, el precio no siempre sube, sino que rebota constantemente en las siguientes barras, por lo que estos rebotes estropean notablemente la precisión. Lo principal es que el modelo en sí mismo no fluctúa y una vez que entró en el comercio se sentaría en él hasta el final de la tendencia.

 
Dr.Trader:

Lo principal es que el modelo no se mueva por sí mismo, y una vez que haya entrado en la operación, se mantendrá en ella hasta el final de la tendencia. Lo principal es que el modelo en sí mismo no se tambalee y que, una vez que haya entrado en la operación, se mantenga hasta el final de la tendencia.

¿Hay alguna forma de suavizar el objetivo?
 
mytarmailS:

Esa sensación cuando empiezas a creer que entiendes el mercado...

Esa sensación cuando llega otro bajón (( :)
 

muy interesante video.... sobre la selección de características, los algoritmos e incluso un poco sobre los mercados

https://www.youtube.com/watch?v=R3CMqrrIWOk

 
mytarmailS:

muy interesante video.... sobre la selección de características, los algoritmos e incluso un poco sobre los mercados

https://www.youtube.com/watch?v=R3CMqrrIWOk

Es realmente interesante. Es una pena que no haya mucho sobre los mercados en particular, algo así como "Si empiezo a predecir los precios del petróleo, probablemente me maten" :) (mi cita es inexacta, la escribí de memoria).

La primera media hora de vídeo - aquí Alexey escribió sobre ella en el hilo. Incluso se adjuntó el código R. No puedo encontrarlo ahora, tengo que hojear las primeras docenas de páginas, además había un enlace a su artículo al respecto en el hbr.
Para mí este método de selección de predictores para forex desafortunadamente no ayudó, todos mis predictores eran demasiado poco informativos, creo que este algoritmo es adecuado para datos más estacionarios. O necesitamos más predictores nuevos.

 

Señores, puede alguien darme un ejemplo de una red neuronal que funcione con una entrada con matrices como m1[1000,1000] m2[1000,1000] etc. Pido disculpas por haber sido tonto en todo caso.

Todavía no he trabajado con neuronas, quiero practicar. No entiendo muy bien cómo se configuran los parámetros, estaría muy agradecido.

tal vez alguien ha considerado el método del corrector del predictor

 
Top2n:

en la entrada con matrices, por ejemplo, m1[1000,1000] m2[1000,1000], etc.

¿Quieres alimentar dos matrices, cada una con 1000 ejemplos de entrenamiento, y 1000 entradas para la red? Eso no funcionará, tendrías que combinarlos en uno solo. ¿O te refieres a otra cosa?
 
Dr.Trader:
¿Quieres alimentar dos matrices con 1000 ejemplos de entrenamiento cada una y 1000 entradas para la red? Eso no funcionará, habrá que fusionarlas en una sola. ¿O te refieres a otra cosa?

Cada array[][] es un conjunto de información de calidad única, es decir, para cada entrada, un array[][] separado. Quiero alimentar un montón de matrices, estoy listo por ahora 4, estoy planeando crear más, cada matriz describe el estado del precio, resulta desde diferentes ángulos, así es.

Cada matriz contiene 1000 filas y 1000 columnas, por lo que tengo una tridimensional, así que la dimensión K es la nueva bidimensional.
Razón de la queja: