Uso de la inteligencia artificial en MTS

 
Discutiendo el uso de la inteligencia artificial en las estrategias de trading en general y mi Expert Advisor en particular cuyo código se puede descargarAQUÍ. Los resultados de la prueba retrospectiva están en la captura de pantalla de abajo.



Se necesita mucho tiempo para optimizar el Asesor Experto y sólo con el uso de algoritmos genéticos. Los parámetros de entrada para seleccionar los coeficientes de ponderación: x1, x2, x3 y x4 están limitados a valores de 0 a 200. El parámetro sl es un stop loss en pips. El capital y la gestión de riesgos no se utilizan.
 

Equivale a suavizar la CA mediante un filtro de cifrado con algunas características. Los coeficientes de suavización no están equilibrados, lo que equivale a un ladrillo en el botón de compra. El ladrillo (+ por ejemplo, estocástico) funciona muy bien por sí mismo, si sólo se sabe cuándo comprarlo y cuándo venderlo. Además, teniendo en cuenta que la CA puede bajar 2 veces durante 21 bares y la presencia de 4 parámetros optimizables......))))

Pero para mí arroja luz sobre cómo funcionan las redes neuronales y por qué no son tan eficientes como nos gustaría.

Solía tener un pasatiempo en el comienzo del período creativo - para escribir EAs para trabajar en m1 basado en los resultados de la semana pasada (7200 bares, frente a 66000) - tanto como 300 por ciento por semana se mostraron en el tester.....

Me pregunto cuántos armónicos tiene que descomponer el precio en una serie de Fourier para obtener un grial después de la optimización.

 
Integer:

Equivale a suavizar la CA mediante un filtro de cifrado con algunas características. Los coeficientes de suavización no están equilibrados, lo que equivale a un ladrillo en el botón de compra. El ladrillo (+ por ejemplo, estocástico) funciona muy bien por sí mismo, si sólo se sabe cuándo comprarlo y cuándo venderlo. Además, teniendo en cuenta que la CA puede bajar 2 veces en 21 bares y la presencia de 4 parámetros optimizables......))))

Pero para mí arroja luz sobre cómo funcionan las redes neuronales y por qué no son tan eficientes como uno quisiera.

Solía tener un pasatiempo en el comienzo del período creativo - para escribir EAs para trabajar en m1 basado en los resultados de la semana pasada (7200 bares, en comparación con 66000) - tanto como 300 por ciento por semana se mostraron en el tester.....

Me pregunto cuántos armónicos tiene que descomponer el precio en una serie de Fourier para obtener un grial después de la optimización.

Las redes neuronales sólo son eficaces cuando los objetos identificados son linealmente separables, es decir, cuando una clase de objetos puede separarse de otra en el espacio de características mediante un plano descrito por una ecuación lineal.

En cuanto al oscilador AC, el Asesor Experto no sólo mira su último valor (las decisiones basadas en los últimos valores son las más utilizadas en el análisis técnico), sino que estudia el historial, es decir, cuáles fueron otros 3 valores del indicador en el pasado. Se interesa por el comportamiento del oscilador para la toma de decisiones. Este mismo comportamiento llega a la entrada de la red neuronal. Y en la salida obtenemos Comprar o Vender.

Otra novedad no es el entrenamiento estándar de la red neuronal, sino la selección de pesos sobre datos históricos mediante el algoritmo genético. He probado ambas variantes. La genética da un resultado ligeramente peor y más lento en el tiempo. Pero no hay un algoritmo neuronal incorporado y el aprendizaje en MT4. Pero hay una optimización basada en la genética. Y algunos investigadores en este campo se dieron cuenta de que el aprendizaje dinámico no es muy adecuado si la situación cambia drásticamente. Si los alcistas prevalecen en el mercado, el sistema se reajustará a la tendencia alcista y se olvidará de la tendencia bajista, y viceversa. Samuel A. L. 1959, "Some studies in machine learning using the game of checkers" (IBM J. Research and Devepopmend 3: 210 - 229), encontró y describió por primera vez esta monstruosidad. Observó que si su programa contaba con un oponente profesional, pasaba gradualmente a un juego de nivel profesional. Pero si el oponente era un principiante, entonces el programa "olvidaba" el nivel anterior y empezaba a pasar al juego primitivo. Por lo tanto, probablemente no tenga sentido enseñar dinámicamente a la neurona sobre sus propios errores y pérdidas. Es más fácil pasar por la historia, para desarrollar una estrategia de negociación adecuada al mercado.

En cuanto a los griales, no hay que ser muy inteligente. Sólo tiene que cumplir una serie de condiciones:

1. El sistema debe abrir posiciones sin stoplosses, o con stoplosses a una distancia muy grande, para que la probabilidad de su funcionamiento sea cercana a 0.
2. Un potente filtro basado en varios indicadores con condiciones de activación separadas por un AND lógico (&&). Y para tirar de un montón de parámetros de entrada de estos mismos indicadores en la configuración externa de MTS, por lo que sólo unas pocas posiciones se abrieron durante varios años de datos históricos en las pruebas.
3. A todo esto hay que añadir la gestión del capital y del riesgo con una fracción elevada
 
tomar el valor de 4 puntos, multiplicar cada valor por un factor, sumarlo - ¿qué no es suavizar por un filtro?
 
No entiendo cómo puedes discutir seriamente una estrategia que produce 44 acuerdos en 2 años... Hay muy pocas estadísticas.
 
Mathemat:
No entiendo cómo puedes discutir seriamente una estrategia que produce 44 acuerdos en 2 años... Demasiado pocas estadísticas!
En realidad sólo hay 44 operaciones, y muchas más llamadas a la función Perceptrón. Aquí se aplica el ahorro de márgenes y de tiempo. Es decir, digamos que tenemos un puesto vacante. El MTS lee la red neuronal. Si la red informa de que el movimiento de la cotización debe invertirse, así como la posición abierta, MTS invertirá la posición. Si el perceptrón nos informa de que las cotizaciones van a seguir moviéndose en la misma dirección respecto a la orden, MTS sólo aprieta el Stop Loss - trailing stop (lo mismo que cerrar una posición habiendo fijado el beneficio y abrir una nueva pero con una pérdida tirada a la baja. Y si abrimos una nueva posición, habiendo cerrado la anterior, perdemos en spread y comisión). Porque el sistema de trading no proporciona takeprofits, por lo que tiene que funcionar en tendencias y tratar de detectar momentos de reversión. Dado que los retrocesos en un instrumento de tendencia sólo son de 1 unidad por tendencia (si la tendencia no es lateral, por supuesto), entonces obtenemos una cantidad tan pequeña de transacciones. Más concretamente, hay un poco más de acuerdos que de retrocesos, porque el sistema a veces se equivoca.
 
Integer:
tomamos el valor de 4 puntos, multiplicamos cada valor por un coeficiente, sumamos... ¿qué no es suavizar con un filtro?
Si tomamos los valores de un cierto número de puntos y multiplicamos cada uno de ellos por su correspondiente constante y obtenemos el resultado, esta acción se llama ecuación lineal en matemáticas:

a1 * w1 + a2 * w2 + ... + an * wn = d

Y el suavizado requiere una recursión, es decir, se utiliza algún valor conocido para calcular el valor suavizado:

a1 = a1 * w1 + a2 * w2 + ... + an * wn


 
Reshetov писал (а):
Integer escribió:
tomamos el valor de 4 puntos, multiplicamos cada valor por un coeficiente, sumamos... ¿qué no es suavizar con un filtro?
Si tomamos los valores de un cierto número de puntos y multiplicamos cada uno de ellos por su correspondiente constante y obtenemos el resultado, esta acción se llama ecuación lineal en matemáticas:

a1 * w1 + a2 * w2 + ... + an * wn = d

Y el suavizado requiere una recursión, es decir, se utiliza algún valor conocido para calcular el valor suavizado:

a1 = a1 * w1 + a2 * w2 + ... + an * wn





¿Ha oído hablar de las medias móviles ponderadas linealmente?
 

Sea lo que sea, tiene derecho a la vida. Puede que la idea no sea nueva, pero es muy interesante, y está inteligentemente implementada, y... es capaz de obtener beneficios. He realizado varias pruebas de avance después de "aprender" los resultados son alentadores. Muchas gracias al autor.

 
Figar0:

Sea lo que sea, tiene derecho a la vida. Puede que la idea no sea nueva, pero es muy interesante, y está inteligentemente implementada, y... es capaz de obtener beneficios. He realizado varias pruebas de avance después de "aprender" los resultados son alentadores. Muchas gracias al autor.

Lo publiqué para encontrar al menos un comerciante que intentara comprobarlo en la práctica en lugar de acosar al autor. Más aún si el código es fiable y funciona, y no un grial desarrollado apresuradamente, que accidentalmente muestra tremendas ganancias en las pruebas. El resultado en la cuenta real es casi, pero no siempre, inferior al extremo de la prueba, pero es estable.

Y discutir con gundosos sobre si las neuronas son efectivas o no, pues es perder el tiempo. Lo expongo según el principio: si lo quieres, puedes tenerlo, pero si no lo quieres ver. Pero con la esperanza de que se encuentre alguien que sepa de estas cosas y pueda mejorar el código o sugerir una idea más interesante para resolver el problema.
 
Integer:
Reshetov:
Entero:
tomamos el valor de 4 puntos, multiplicamos cada valor por un coeficiente, sumamos... ¿qué no es suavizar con un filtro?
Si tomamos los valores de un cierto número de puntos y multiplicamos cada uno de ellos por su correspondiente constante y obtenemos el resultado, esta acción se llama ecuación lineal en matemáticas:

a1 * w1 + a2 * w2 + ... + an * wn = d

Y el suavizado requiere una recursión, es decir, se utiliza algún valor conocido para calcular el valor suavizado:

a1 = a1 * w1 + a2 * w2 + ... + an * wn





¿Ha oído hablar de las medias móviles ponderadas linealmente?
Tómate un descanso. Lástima que el foro no ofrezca ignorar a los interlocutores muy molestos.