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

 
Hola! Soy nuevo en el aprendizaje automático y tengo una pregunta, por qué todos intentan predecir la dirección del precio, ya sea por el zigzag o simplemente por el incremento de la siguiente vela, hay mucho caos en el mercado, hay que incluir un pasillo en el que el precio podría "menearse". Me parece más eficaz tomar el resultado de la negociación como objetivo. Por ejemplo, durante el entrenamiento consideramos una curva de beneficios ideal y el objetivo se marcará por no desviarse del ideal en más de un 15% o, alternativamente, tomar el factor de recuperación y no dejarlo caer por debajo de n , tales objetivos serán más flexibles para los datos del mercado. Y lo más interesante es cómo implementar la función de tal forma por ejemplo para el mismo bosque aleatorio?
 
mytarmailS:
Hola¡ Soy nuevo en el aprendizaje automático y tengo una pregunta, por qué todos intentan predecir la dirección del precio, ya sea por el zigzag o simplemente por el incremento de la siguiente vela, hay mucho caos en el mercado, deberían incluir algún corredor en el que el precio pudiera "menearse". Me parece más eficaz tomar el resultado de la negociación como objetivo. Por ejemplo, durante el entrenamiento consideramos una curva de beneficios ideal y el objetivo se marcará por no desviarse del ideal en más de un 15% o, alternativamente, tomar el factor de recuperación y no dejarlo caer por debajo de n , tales objetivos serán más flexibles para los datos del mercado. Y lo más interesante es cómo implementar una función de esta forma, por ejemplo, para el mismo bosque aleatorio?
Hola, ¿podría dibujar este objetivo gráficamente para que quede más claro?
 
 

¡Hola!

El lado izquierdo es sólo un tipo de precio, el lado derecho negro representa la curva de equilibrio ideal (todo lo que se puede ganar), el verde representa un cierto rango (corredor) de la curva de equilibrio ideal que no debemos sobrepasar en nuestro comercio, el gris representa el equilibrio de un tipo de comercio real)

Así que la esencia del objetivo no es predecir los precios y el objetivo en forma de un vector 11100001111100 , y encontrar un estado en el que la línea gris no irá más allá del verde

Yo mismo no entiendo cómo hacerlo, por eso me gustaría discutirlo).

 
mytarmailS:

¡Hola!

El lado izquierdo es sólo un tipo de precio, el lado derecho negro representa la curva de equilibrio ideal (todo lo que se puede ganar), el verde representa un cierto rango (corredor) de la curva de equilibrio ideal que no debemos sobrepasar en nuestro comercio, el gris representa el equilibrio de un tipo de comercio real)

Así que la esencia del objetivo no es predecir los precios y el objetivo en forma de un vector 11100001111100 , y encontrar un estado en el que la línea gris no irá más allá del verde

Puede que esté un poco confundido pero yo mismo no sé cómo hacerlo, por eso me gustaría discutirlo).

El ángulo de inclinación de la línea en el comercio de errores será inferior al ideal. Usted ha representado el comercio en gris, donde lo más probable es que el aumento del lote está haciendo un retorno al ángulo previsto.

Es decir, está operando para predecir la dirección del precio, pero cuando el error se acumula el sistema de alguna manera comienza a trabajar en la dirección más a menudo.

Aquí hemos hablado de tres opciones de objetivos.
1) cierre de una posición en el intervalo de tiempo
2) cierre de un acuerdo cuando se rompe el nivel (tp/click)
3) dirección de la tendencia general, donde el cierre de la operación no está explícitamente definido. Puede ser por tiempo o tp/cl.

En este caso, la variante 3 es la más imprecisa en cuanto al criterio de salida.
 
Alexey Burnakov:
El ángulo de inclinación de la línea en el comercio de errores será inferior al ideal. Ha representado una operación de línea gris en la que al aumentar el lote lo más probable es que vuelva al ángulo previsto.

Es decir, está operando en la predicción de la dirección del precio, pero cuando el error se acumula el sistema de alguna manera comienza a trabajar intensamente en el plus más a menudo.
No lo entiendo )) no hay un lote, no hay un sistema que trabaje duro), es una fecha generada al azar... Solo con la imagen del objetivo debería funcionar mejor que el zigzag en mi humilde opinión por supuesto, pero como implementar esto no lo sé, pensé que tal vez alguien me lo diría
 
mytarmailS:
no lo entiendo )) no hay lote, no hay sistema que funcione mejorado), es una fecha generada al azar... Acabo de imaginar un objetivo que debería funcionar mejor que el zigzag en mi humilde opinión, por supuesto, pero cómo implementarlo no sé, pensé que tal vez alguien me diga

Yo tampoco te entiendo.

Su curva gris es como operar con un lote variable para volver siempre a una línea de alta pendiente.

Es como un martin que siempre tiene un ángulo de la línea de comercio.

En realidad, no es realista operar de esta manera. Con los errores (operaciones perdedoras) su curva real será mucho más cercana a cero.

Tampoco está claro cómo se realiza el objetivo. Este tipo de serie temporal sólo es posible cuando el comercio vuelve siempre en el plus después de la acumulación de minusvalías. Difícilmente se puede plasmar esto en la formación, al menos no de la forma habitual.

 

No es un sistema, es sólo una ilustración ))) No hay comercio allí.

Lo siento, debo ser malo para expresar mis pensamientos.

aquí está el código

PRECIO <- cumsum(rnorm(200))+1000

par(mfrow=c(1,2))

plot(PRICE,t="l",,lwd=2)

PD <- c(0,diff(PRICE))

BAL <- PD

for(i en 1:longitud(PD)){

if(BAL[i] < 0) BAL[i] <- BAL[i]/-1

}

BAL <- cumsum(BAL)

lowBAL <- BAL - 50

plot(BAL,t="l",lwd=3)

plot(lowBAL,t="b",col="green")

realBAL <- BAL+rnorm(200,sd=20)

lines(realBAL,t="l",col="grey")


Empecemos de nuevo, hay una función de objetivo estándar, es un vector que denota la dirección del movimiento, se puede describir por un zigzag o simplemente el próximo cierre de la vela, el vector se suele convertir en 1110000111 o -1-1-11111

Puedo hacerlo así, pero creo que esos enfoques son defectuosos

Propongo hacerlo así: que el algoritmo durante el entrenamiento imite el trading (gráfico gris) y lo compare con la rentabilidad ideal que podría esperarse (gráfico negro) es decir, que el algoritmo no intente predecir el siguiente precio y sólo intente no sobrepasar la línea verde. Eso es todo lo que he intentado mostrar en el gráfico.

Pregunta: ¿Es posible realizarlo, porque todos los algoritmos que he visto (neural, RF...) quieren el vector objetivo de 11100011

 
mytarmailS:

No es un sistema, es sólo una ilustración ))) No hay comercio allí.

Lo siento, debo ser malo para expresar mis pensamientos.

aquí está el código

PRECIO <- cumsum(rnorm(200))+1000

par(mfrow=c(1,2))

plot(PRICE,t="l",,lwd=2)

PD <- c(0,diff(PRICE))

BAL <- PD

for(i en 1:longitud(PD)){

if(BAL[i] < 0) BAL[i] <- BAL[i]/-1

}

BAL <- cumsum(BAL)

lowBAL <- BAL - 50

plot(BAL,t="l",lwd=3)

plot(lowBAL,t="b",col="green")

realBAL <- BAL+rnorm(200,sd=20)

lines(realBAL,t="l",col="grey")


Empecemos de nuevo, hay una función de objetivo estándar, es un vector que denota la dirección del movimiento, se puede describir por un zigzag o simplemente el próximo cierre de la vela, el vector se suele transformar en 1110000111 o -1-1-11111

Puedo hacerlo así, pero creo que esos enfoques son defectuosos

Propongo hacerlo así: que el algoritmo durante el entrenamiento imite el trading (gráfico gris) y lo compare con la rentabilidad ideal que podría esperarse (gráfico negro) es decir, que el algoritmo no intente predecir el siguiente precio y sólo intente no sobrepasar la línea verde. Eso es todo lo que he intentado mostrar en el gráfico.

La pregunta : ¿es posible realizarlo, ya que todos los algoritmos que he visto (neural, RF...) quieren un vector objetivo de 11100011 en forma de vector objetivo?

Gracias. Te entendí de inmediato. Es que no es posible implementarlo por defecto.

Tomemos el bosque aleatorio. Supongo que está familiarizado con este método de aprendizaje automático.

Esta cosa sólo puede funcionar de una manera. Si tenemos una variable de salida binaria, el bosque de decisión para cada una de las entradas simplemente buscará estúpidamente una región de valores en la que el sesgo de una de las clases de salida sea estadísticamente mayor. Y esto se hace iterativamente para todas las variables.

Si quiere que la máquina tenga en cuenta la desviación de la precisión comercial real con respecto a la ideal, debe asegurarse de que el bosque de decisión se elija en consecuencia, y no en función de la asimetría de las clases. Para ello es necesario tener en cuenta la variación dinámica de la desviación del comercio ideal, que tampoco es realizable por la norma. Para ello, la máquina necesita alimentarse dinámicamente con datos sobre la operación perfecta. Para ello es necesario reescribir el método. Las herramientas estándar simplemente no pueden hacerlo.

Hay funciones de gradiente. En el caso de un bosque estándar, el gradiente se establece a su manera. Si hay que optimizar la desviación del comercio respecto al ideal, será un gradiente completamente diferente. De alguna manera no creo que pueda escribirlo personalmente de rodillas.

 
Gracias por la aclaración, ahora te entiendo perfectamente, ¿pueden ayudar aquí los algos genéticos? en lugar de RF, tengo bastantes ideas interesantes para implementar un objetivo, me gustaría probarlas.