Discusión sobre el artículo "Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte II) Optimización y previsión"

 

Artículo publicado Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte II) Optimización y previsión:

A base de las herramientas universales para el trabajo con las redes de Kohonen, se construye un sistema del análisis y la selección de los parámetros óptimos del EA, así como se considera la previsión de las series temporales. En la primera parte, corregimos y mejoramos las clases de redes neuronales disponibles públicamente, completándolas con algoritmos necesarios. Ahora ha llegado el momento para aplicarlas en la práctica.

Es la simulación en el período de 01.07.2018 a 01.12.2018.

Unity-Forecast: previsión de los movimientos de la plata por el clúster Forex y el oro en el Simulador visual de MetaTrader 5

Unity-Forecast: previsión de los movimientos de la plata por el clúster Forex y el oro en el Simulador visual de MetaTrader 5

A veces, la previsión alcanza un 60%. Podemos concluir que básicamente el método funciona, aunque requiere una selección fundamental del objeto de la previsión, preparación de los datos de entrada y un ajuste duradero y meticuloso.

Autor: Stanislav Korotky

 
Gracias por el material de calidad e interesante. Dos artículos en uno, de hecho.
 
He mirado el artículo - la segunda parte es bastante original, pero no hay nada útil en la primera parte sobre el análisis de los resultados de optimización. Aunque el tema del análisis de los resultados de la optimización es muy importante para seleccionar los parámetros que garanticen un trabajo estable del Asesor Experto. Una hipótesis bastante conocida aquí es la suposición de que si se elige un máximo local de rentabilidad, alrededor del cual la rentabilidad disminuye suavemente con desviaciones en los valores de los parámetros de entrada, es decir, alrededor del cual la función gradiente disminuye suavemente, entonces, incluso cuando las condiciones del mercado cambian, el rendimiento real resultante del Asesor Experto se deteriorará suavemente en relación con los valores de referencia y esperados determinados durante las pruebas. En un caso más avanzado, es necesario incluir en la función objetivo no sólo la rentabilidad, sino también una evaluación de la estabilidad de otros indicadores de salida. Es decir, es necesario buscar no mesetas, sino colinas en el espacio de las variables de salida, pero situadas en zonas adyacentes entre sí de las variables de entrada.
Por desgracia, no he visto que el autor haya resuelto este problema utilizando mapas de Kohonen.
Por otra parte, el enfoque mismo cuando el autor elimina los puntos no rentables es fundamentalmente erróneo - estos pueden ser sólo puntos vecinos en el espacio de las variables de entrada, las caídas de la rentabilidad en la que indican la inestabilidad de la combinación rentable.
 

El trabajo es sin duda de gran calidad. Un buen tutorial sobre el uso de las redes neuronales en la analítica y el trading.

Como discusión, me gustaría añadir lo siguiente (en la sección "Optimización"):

El autor afirma que "el experimento no reveló ajustes óptimos". En mi opinión, las razones son las siguientes

1. se utilizaron parámetros de indicadores tradicionales(RSI, MA. Parabólico) como los que se estudiaron (durante la optimización). En general, se trata de herramientas analíticas muy toscas, por lo que los operadores experimentados, por regla general, no las utilizan para el trading real. El resultado debería mejorar si en lugar de estos indicadores se utiliza el análisis de velas pero con modelos no clásicos (mi experiencia probando los "clásicos" ha demostrado su ineficacia). Es decir, los parámetros de las velas (amplitud, tamaño del cuerpo de la vela, tamaño de las sombras) pueden utilizarse como parámetros optimizados. El cambio de estos parámetros en el tiempo es una herramienta analítica mucho más precisa que las señales de los indicadores tradicionales.

2. falta de multiescala ( sólo se utiliza una escala), y esto reduce seriamente la precisión del análisis. Por lo tanto, es mejor utilizar el análisis simultáneo de velas de 3-4 marcos temporales (por supuesto, del mismo instrumento financiero).

3. El autor elige como instrumentos financieros analizados el oro y la plata (activos protectores, en opinión del autor, menos dependientes de factores fundamentales). Creo que para un análisis completo, por el contrario, es necesario utilizar los instrumentos más negociados, y en primer lugar EURUSD como el instrumento financiero más característico (en términos de dinámica). Además (en el análisis) no hay que tener miedo a la volatilidad y al llamado "ruido" del mercado (movimientos en pequeños marcos temporales), ya que son manifestaciones de la naturaleza del mercado, sus elementos naturales.

 
Estoy de acuerdo con los comentarios. Algunos puntos del artículo estaban explicados (por ejemplo, el uso de resultados de optimización genética, la necesidad de añadir otras escalas/indicadores, etc.). Uno de los objetivos era proporcionar herramientas y enfoques generales para la investigación sobre robots de combate. Comparta sus resultados.
 
Stanislav Korotky:
Estoy de acuerdo con los comentarios. Algunos puntos del artículo estaban explicados (por ejemplo, el uso de resultados de optimización genética, la necesidad de añadir otras escalas/indicadores, etc.). Uno de los objetivos era proporcionar herramientas y enfoques generales para la investigación sobre robots de combate. Comparta sus conclusiones.

No son comentarios, sólo sugerencias, ya que el artículo es excelente.

 

La búsqueda a través del espacio de parámetros de dimensionalidad muy grande la realiza el algoritmo genético, y para que no "colapse" en las zonas rentables, se puede utilizar un parámetro sintético de optimización, como éste:

TesterStatistics(STAT_PROFIT_TRADES)/TesterStatistics(STAT_LOSS_TRADES). O como TesterStatistics(STAT_MAX_CONPROFIT_TRADES)/TesterStatistics(STAT_MAX_CONLOSS_TRADES). En realidad hay que vincular más parámetros.

 

Me ha interesado la parte del artículo relativa a la selección de meseta en los resultados de la optimización. No entiendo muy bien cómo se puede hacer cualquier análisis de los mapas si se derivan de un CSV al azar. El artículo dice explícitamente sobre esto, que un simple GA se hizo con descartar la basura después.


¿Cómo podemos acercarnos a la práctica? Aquí es un EA y la necesidad de encontrar una meseta.


También. ¿Qué principio se utiliza para seleccionar las células cuando la construcción de mapas? Probablemente se perdió algo en la descripción, pero es muy difícil de entender.

 
fxsaber:

Me ha interesado la parte del artículo relativa a la selección de meseta en los resultados de la optimización. No entiendo muy bien cómo se puede hacer cualquier análisis de los mapas si se derivan de un CSV al azar. El artículo dice explícitamente sobre esto, que un simple GA se hizo con descartar la basura después.

¿Cómo podemos acercarnos a la práctica? Aquí es un EA y tenemos que encontrar una meseta.

Y otra cosa. ¿Cuál es el principio de selección de celdas al construir mapas? Probablemente me perdí algo en la descripción, pero es muy difícil de entender.

En el artículo - más acerca de la herramienta en sí, y cómo se obtienen los datos para el análisis - aunque se dice, pero no se ha hecho ninguna investigación. Este es un frente para más de un artículo - en particular, la comparación de los espacios de solución de las optimizaciones convencionales y genéticos. El rebasamiento completo no da ningún sesgo - si puedes, úsalo. Sin embargo, el término "CSV aleatorio" es poco apropiado, o se ha elegido incorrectamente - de lo contrario se podría decir que todos los resultados de optimización en MT son aleatorios. En mi opinión, descartar los valores atípicos explícitos es una práctica normal.

En cuanto a la selección de celdas al construir mapas, no entiendo la pregunta.

 
Stanislav Korotky:

El artículo trata más de la herramienta en sí, y de cómo se obtienen los datos para el análisis, aunque se menciona, pero no se ha investigado. Este es un frente para más de un artículo - en particular, la comparación de los espacios de solución de las optimizaciones convencionales y genéticos. El rebasamiento completo no da ningún sesgo - si puedes, úsalo. Sin embargo, el término "CSV aleatorio" es poco apropiado, o se ha elegido incorrectamente - de lo contrario se podría decir que todos los resultados de optimización en MT son aleatorios. En mi opinión, descartar los valores atípicos obvios es una práctica normal.

La aleatoriedad del AG es el deslizamiento hacia un extremo local, que puede ocurrir de forma diferente cada vez. Es decir, la imagen del AG y de la búsqueda completa puede ser muy diferente (después de descartar basura en ambas variantes).

Me encontré con semejante disparate en GA

Foro sobre negociación, sistemas de negociación automatizados y prueba de estrategias de negociación

Nueva versión de MetaTrader 5 build 1930: Ventanas flotantes de gráficos y bibliotecas .Net en MQL5

fxsaber, 2019.02.02 09:54 AM

Registro de optimización genética
PH      0       11:40:35.073    Tester  genetic optimization finished on pass 9216 (of 30240000)
FI      0       11:40:35.563    Statistics      optimization done in 1 minutes 51 seconds
JP      0       11:40:35.563    Statistics      shortest pass 0:00:00.014, longest pass 0:00:01.329, average pass 0:00:00.177
II      0       11:40:35.563    Statistics      local 3891 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)

De 30 millones de variantes, se hicieron menos de 4K, que duraron menos de dos minutos. Cómo aumentar la precisión de GA? Sería mejor tardar 2 horas en contar, pero producir un resultado más objetivo.

No ocurre lo mismo en MT4.

Resulta que para ser más o menos objetivo necesito ejecutar GA al menos una docena de veces con el mismo OnTester. He visto que recomiendan diferentes criterios para diferentes enfoques de Optimización. Pero aún así el GA estándar es un poco extraño. Así que decidí hacerlo de manera diferente - véase más adelante.

En cuanto a la selección de las células cuando la construcción de mapas - No entiendo la pregunta.

En el artículo durante el análisis de diferentes mapas se utiliza la propiedad de que en dos mapas una celda con coordenadas coincidentes (X; Y) corresponde al mismo conjunto de parámetros de entrada TC. ¿Cómo se forma esta regla?


Muchas gracias por su trabajo en forma de artículos y entradas de blog. El material es muy diferente de la media.

Sobre la base de su aplicación de la MHR quiero hacer una alternativa a la norma GA y hacer un análisis comparativo. El AG estándar tiene una variación muy grande de una pasada a otra. Y la limitación de 10K pasadas no coincide con el GA de MT4. He visto su implementación de la virtualización, quiero utilizar un enfoque similar, pero utilizar la interfaz gráfica de usuario del probador.

[Eliminado]  

El AG nunca convergerá a un óptimo global, es un método evolutivo orientado a la diversidad. No tiene por qué converger a nada en absoluto.

https://www.monographies.ru/en/book/view?id=707