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

 
Es que no entiendo el sentido de esto del SB, ¿qué prueba? ) Puedes conseguir la curva que quieras en el OOS si lo mezclas suficientes veces.
 
mytarmailS #:
Mierda, no sé cómo ponerlo en términos sencillos.

Usted elige mejores variantes "a mano" en OOS después de la optimización en la prueba y NO es un fitting....

Y si el algoritmo elige las mejores opciones en el OOS después de la optimización, eso es un ajuste ¿Por qué?

Elegir las mejores variantes/opción del conjunto completo de variantes es optimización... No importa si lo haces a mano o por algoritmo.

Tal vez usted ha trabajado sólo con el probador en MT y piensa algo formulista acerca de la optimización en sí y las formas de su aplicación, es por eso que tenemos algunos malentendidos

Su declaración.

Foro sobre trading, sistemas automatizados de trading y testeo de estrategias de trading

Aprendizaje automático en el trading: teoría, modelos, práctica y algo-trading

mytarmailS, 2023.08.16 13:23

Imagine que usted tiene sólo 1000 variantes de TS, en general.


sus pasos 1 y 2

1) Empiezas a optimizar/buscar una buena TS, esto es traine data (ajuste/búsqueda/optimización).

Digamos que has encontrado 300 variantes en las que la TS gana dinero...

2) Ahora usted está buscando un TC de estas 300 variantes que pasará OOS es datos de prueba. Usted ha encontrado digamos 10 TCs que ganan tanto en el traine y en la prueba ( OOS ).


¿Cuál es el punto 2?

Es la misma continuación del ajuste, sólo que su búsqueda(ajuste/búsqueda/optimización) se ha vuelto un poco más profunda o más compleja, porque ahora no tiene una condición de optimización (pasar la operación), sino dos (pasar la prueba + pasar la operación).

Imaginemos que hay un millón de veces más variantes: 1.000 millones de TC, se encuentran 300 millones de variantes de TC, donde en la muestra entrenada gana dinero - esto es p.1.

En p.1. la optimización se hace sobre alguna función de fitness. Cuanto más alto es el valor, más alta se supone que es la aptitud. Así que la optimización consiste en encontrar el máximo global. Todo esto es p.1.


  • Cuando termina la optimización, puedes buscar entre 300 millones de resultados positivos esos cinco que pasan OOS. Yo no hago eso.
  • O puedes tomar los cinco resultados más cercanos del máximo global y sólo buscar en ellos OOS.
Así que si haces lo primero, es una optimización de la vista

Foro sobre trading, sistemas automatizados de trading y testeo de estrategias de trading.

Aprendizaje automático en el trading: teoría, modelos, práctica y algoritmos de trading

fxsaber, 2023.08.19 01:32 pm

¿Crees que deberías confiar más en el modelo train_optim + test_forward que en (train+test)_optim?

Es decir, es un ajuste en estado puro.


Sin embargo, si haces esto último, no es un ajuste.

 
Maxim Dmitrievsky #:

Exactamente de la misma manera que consigo ambos modelos de trabajo OOS y no, a través del mismo algoritmo. El símbolo es el mismo, no se ha añadido ninguna nueva aleatorización.

He tenido entrenamientos no sobre el mismo símbolo. Obviamente hay series con cualquier característica en la nube de aleatorización.

 

La parte delantera es peor y la trasera es mejor. Y las situaciones inversas son exactamente iguales. Sólo que no he reconstruido mucho por el momento.

 
fxsaber #:

Tu afirmación.

Imaginemos que hay un millón de veces más variantes en total: 1.000 millones de CT, se encuentran 300 millones de variantes de CT, donde en la muestra entrenada gana dinero - este es el punto 1.

En p.1. la optimización se hace sobre alguna función de fitness. Cuanto más alto es el valor, más alta se supone que es la aptitud. Así que la optimización consiste en encontrar el máximo global. Todo esto es el punto 1.


  • Cuando la optimización ha terminado, usted podría buscar entre 300 millones de resultados positivos para los cinco que pasan OOS. Yo no hago eso.
  • O puedes tomar los cinco resultados más cercanos del máximo global y sólo buscar en ellos OOS.
Así que si haces lo primero, es una optimización de la forma

Así que es puro ajuste.


Si haces lo segundo, no es ajuste.

Entendido. Pido disculpas.

 
fxsaber #:

He recibido formación sobre más de una característica. Obviamente, en la nube de aleatorización hay filas con cualquier característica.

No veo ningún problema. Todas estas TS son aleatorias porque operan en un mercado no estacionario. Pero algunas variantes pueden aportar beneficios en alguna perspectiva.

 
Maxim Dmitrievsky #:

Sí, el resaltado

Tienes que correr muchas veces, muchos caracteres.


He mostrado un ejemplo de mi sobre muestreador arriba. Es sólo al azar tira de muestras para la formación de la misma fila y los resultados son siempre diferentes en OOS.

En el símbolo real no tengo tal efecto. Elijo cualquier 40% del intervalo de optimización y después de eso los resultados son muy similares en OOS.

Este es el símbolo que elegí para la aleatorización y di sus gráficos de entrenamiento.

Exactamente las mismas caídas bruscas en el OOS.

No los veo siempre.

 
fxsaber #:

En el símbolo real no observo tal efecto. Elijo cualquier 40% del intervalo de optimización y después de eso los resultados son muy similares en OOS.

Este es el símbolo que elegí para la aleatorización y di sus gráficos de entrenamiento.

No los veo siempre.

Aún así significa que hay más alfa en los ticks. Encontré una manera de buscar rápidamente en ellos (a través de MO habría sido muy largo). Voy a rodar los resultados más tarde cuando haya terminado.

 

Miré varios tipos de simulaciones de series temporales y sus características, creé una serie sintética a partir de sinusoides y ruido (tomé sinusoides para mayor claridad).

La conclusión es... Esta simulación aún no se entiende bien...


La primera fila es original (arriba a la izquierda), todas las demás filas son simulaciones construidas a partir de las características de la primera fila.

otra ejecución


par(mar=c(2,2,2,2),mfrow=c(3,2))

n <- 1:1000
#  original series
s <- sin(n/50+1) + sin(n/20+15)/2 + rnorm(n,sd = 0.1) 
s |> plot(t="l", main = "original series (2 sin + noise)")

s |> rnorm(mean = mean(s),sd = sd(s)) |> cumsum() |> plot(t="l",main = "random generation")
library(forecast)
s |> ets() |> simulate() |> plot(t="l",main = "Exponential smoothing state space model")
s |> ar() |> simulate() |> plot(t="l",main = "Fit Autoregressive Models to Time Series")
s |> nnetar() |> simulate() |> plot(t="l",main = "Neural Network Time Series Forecasts")
s |> Arima() |> simulate() |> cumsum() |> plot(t="l",main = "ARIMA model to univariate time series")
 
Maxim Dmitrievsky #:

Bueno, no veo cuál es el problema.

En primer lugar, no había ningún problema. Es decir, no había ningún problema que resolver. Sólo compartir resultados intermedios y discutir diferentes interpretaciones.


Yo mismo estoy bastante mosqueado con mi suposición.

Foro sobre trading, sistemas automatizados de trading y prueba de estrategias de trading

Aprendizaje automático en el trading: teoría, modelos, práctica y algo-trading

fxsaber, 2023.08.19 00:50

Si dopilivayut, para Monte Carlo, probablemente la mejor opción para generar un símbolo aleatorio con las características deseadas stat.

Pensé que por tal aleatorización de la historia de garrapatas reales perfectamente escalable también obtendré un símbolo, que será perfectamente escalable con el ajuste adecuado. Pero obtuve un fracaso completo, que, al menos, me hizo preguntarme, ¿qué había en la historia real que escaló perfectamente?