Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 230
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Y así, mi concepto de cómo podría implementarse el "aprendizaje automático" en relación con el comercio MQL:
Primero sobre los conceptos básicos:
1. La firma es una descripción numérica del carácter de los cambios de valor de los parámetros. La firma se realiza mediante un algoritmo especial. Tiene un formato. Se almacena en un bloque especial (array). Es el resultado final de todos los algoritmos, cálculos y operaciones.
2. Periodo actual - un periodo de tiempo determinado. Se implementa en un buffer de anillo por el que pasan los valores de los parámetros. Cada nuevo valor desplaza toda la cola de valores registrados anteriormente y toma la cabeza del array, y el valor más antiguo se borra. Puede haber muchos periodos de corriente, y cada uno de ellos puede dedicarse a una escala temporal diferente y a un parámetro distinto.
3. Rango de valores de los parámetros: el rango dentro del cual cambia el valor de un parámetro. Se establece por la experiencia durante las pruebas del sistema. El rango entre los valores mínimos y máximos puede incluir una división en rangos más pequeños, que sirve para romper el rango completo de los valores de un parámetro y llevarlos a una escala conveniente.
4. Espacios de tiempo entre los valores entrantes: se miden a medida que los valores llegan al buffer del anillo. Junto con los rangos son necesarios para recopilar la naturaleza del cambio de valor y el posterior análisis matemático.
5. Curva de cambio de valor: cambio de valor condicional, dentro del programa, que combina los valores en sí y los intervalos de tiempo entre ellos. El resultado es una curva gráfica (representada en una matriz bidimensional) a la que se pueden aplicar diversos métodos de análisis matemático.
6. Filtros matemáticos: métodos de análisis (fórmulas) que revelan diversas características del cambio de valor en el período actual.
7. Reducción del valor a un rango: resumir el valor actual para reducir el número de sus variantes. Es necesario en el análisis de la variación.
8. Recogida de estadísticas de firmas - Proceso que se lleva a cabo durante las pruebas del sistema o durante el funcionamiento en condiciones reales. En realidad, se recoge la "experiencia" del sistema, se lleva a cabo su "conocimiento" de diversas situaciones que representan diversos caracteres del comportamiento de los valores de diversos parámetros. Estas firmas se almacenan en una base de datos especial.
9. Base de datos de firmas - Bloque de memoria donde se almacenan todas las firmas reales. El lugar de almacenamiento de la "experiencia" del sistema, filtrada por una selección estadística constante. Dentro de la base de datos, se seleccionan y rotan las firmas relevantes y se suplantan gradualmente las menos relevantes. La selección se basa en el período actual del que se toman ciertas firmas en la base de datos después de su creación (tras el análisis y el filtrado de los valores, por supuesto). Las que se repiten con más frecuencia se desplazan a las menos recurrentes.
Descripción del proceso de trabajo del sistema:
Imaginemos un motor de programa que, por un lado, reciba los valores de los parámetros y, por otro, ofrezca firmas listas de los patrones de sus cambios en varios períodos de tiempo. Un motor que también almacena estas firmas en una base de datos y las rota en la misma.
Supongamos que un usuario teclea un grupo de parámetros simplemente señalando al motor variables predefinidas o parámetros de entorno. Estos parámetros comienzan a ser "observados" por el motor. Es decir, sus valores van a parar a búferes circulares, se colapsan en periodos de tiempo y se analizan mediante filtros matemáticos. Como resultado, las firmas terminadas se introducen en la base de datos.
A continuación, el usuario comienza a "entrenar" el motor, lo que se hace de la siguiente manera:
Vincula los valores de los parámetros de entrada de su estrategia a firmas específicas. Es decir, establece la dependencia de los valores de los parámetros de entrada a "calcos" digitales específicos de la situación actual. Además, el usuario puede vincular sus llamadas a funciones a las firmas seleccionadas, simplemente indexando estas llamadas. El motor llamará a las funciones definidas por el usuario por su número en las firmas seleccionadas.
Sin embargo, el sistema no es independiente en esta fase, ya que el usuario tiene que "entrenar" manualmente el sistema vinculando los mejores valores de los parámetros de entrada de su estrategia a firmas específicas. Imaginemos cómo podría desarrollarse el sistema hacia la plena independencia:
Para ello, el sistema no debe limitarse a recoger firmas en la fase de aprendizaje, sino que paralelamente debe optimizar los parámetros de entrada de la estrategia para obtener la máxima rentabilidad de la misma. En el momento en que se alcance la máxima rentabilidad, los valores de los parámetros de entrada se vincularán a la firma específica que refleje la situación en la que estos valores son más eficaces. Entonces, al tener un conjunto de firmas que reflejan una amplia variedad de situaciones de mercado, el sistema tendrá ajustes listos de los parámetros de entrada de la estrategia para cada una de esas situaciones.
//===================================================================================
Puede que este enfoque no tenga nada que ver con la comprensión clásica del aprendizaje automático, pero el hecho de que cumpla su propósito en el comercio es seguro. Hasta ahora todo esto es en términos generales, pero no tengo ninguna duda sobre la validez de este enfoque y la viabilidad de su aplicación en MQL.
Por favor, comparta la opinión de los expertos en OI y de otras personas que estén interesadas en esto.
Gracias por su atención.
Muchas gracias, es justo lo que el médico me ha recetado. ¡Corto y conciso! ¡Todo el modus operandi en 10 líneas! Pantural se alegra, Pantural le da las gracias. ¡Oye, kamon!
{
double w1 = x1 - 100;
double w2 = x2 - 100;
double w3 = x3 - 100;
double w4 = x4 - 100;
double a1 = iAC(Symbol(), 0, 0);
double a2 = iAC(Symbol(), 0, 7);
double a3 = iAC(Symbol(), 0, 14);
double a4 = iAC(Symbol(), 0, 21);
return(w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);
}
Ahora puedes distinguir la diferencia entre la ingenuidad infantil y el trolling gordo...
Pero aparentemente es lo primero.
Hola a todos. Soy Pantural.
Mi tercera vez tratando de establecerse en forex, siento que esto es algo, pero la vida dobla su curso, y más allá de la ciruela 2 depo 200 $ cada uno, no ha llegado. Estoy tratando de hacer algunos buenos resultados ahora más que hace 4 años, por lo menos los diferenciales son wow cool (¡oh mi dios! Es el pantural! wow!)
Y así, mi concepto de cómo podría implementarse el "aprendizaje automático" en relación con el comercio MQL:
No importa en qué idioma esté la MO, lo importante es que aquí se considera el concepto de MO de la siguiente manera:
1. Se me ocurre una idea
2. Tomamos el primer paquete disponible de R
3. Compruébalo, asegúrate de que el paquete es una basura o da resultados insatisfactorios según la idea, pasa al punto 2 para probar todos los paquetes. Cuando te quedes sin paquetes, ve al paso 1.
Lo que intentes asimilar o implementar, aquí no serás entendido, en el mejor de los casos te llamarán troll.
No importa en qué idioma esté el MO, lo importante es que aquí se ve el concepto de MO de la siguiente manera:
1. Se me ocurre una idea.
2. Obtenemos el primer paquete que vemos de R
3. Compruébalo, asegúrate de que el paquete es una basura o da resultados insatisfactorios según la idea, pasa al punto 2 para probar todos los paquetes. Cuando te quedes sin paquetes, ve al paso 1.
Y lo que intentas asimilar o realizar - no serás entendido aquí, en el mejor de los casos te declararán troll.
Estoy de acuerdo con los tres primeros puntos. Pero se trata de usuarios comunes que se comportan de esa manera. Hay especialistas que deben entender lo que estoy escribiendo.
Si tampoco tienen nada que decir sobre la esencia del concepto, significa que el marco local es tan estrecho que no permite ningún pensamiento libre. Veamos...
Estoy de acuerdo con los tres primeros puntos. Pero son los usuarios comunes los que se comportan así. Hay expertos que deberían entender lo que estoy escribiendo.
Si no tienen nada que decir sobre la esencia del concepto, entonces el marco local es tan estrecho que no permite ningún pensamiento libre. Veamos...
No son usuarios comunes, sino usuarios muy inteligentes, algunos con doctorados, pero son usuarios de R y eso lo dice todo.
Puedes hablar con Yuri Reshetov sobre el tema, pero él tampoco tiene paciencia para escribir nada aquí durante mucho tiempo.
Lo que ha mostradotoxic es una especie de clustering pero con un maestro, los puntos al principio son signos o más bien sus parámetros numéricos, tienes un objetivo bye y un take, has marcado antes del entrenamiento donde había un crecimiento (compra) y una caída (take), y el algoritmo empieza a dividir estúpidamente los parámetros de los signos por el objetivo, como que la zona azul es una compra, la roja es un take...
Pero ahora mismo el último rumor es algo así
https://www.youtube.com/watch?v=05rEefXlmhI
https://www.youtube.com/watch?v=qv6UVOQ0F44
https://www.youtube.com/watch?v=xcIBoPuNIiw
pero soy un completo nerd.
Y este es divertidísimo).
https://www.youtube.com/watch?v=pgaEE27nsQw
Gracias por estos videos, los dinosaurios saltadores especialmente entregan ))))
En mi opinión, la red neuronal de Mario ilustra un punto importante:
se puede entrenar un algoritmo para pasar un determinado nivel (incluso uno muy difícil)
pero eso no significa que vaya a tener tanto éxito en otro nivel
y si se mira de cerca cómo este bot pasa un nivel, está claro
es solo un retoque y el bot no tiene sentido de la situación y no tiene inteligencia de jugador real
La red acaba de recoger el tiempo de los botones.
Se nota en la forma en que mario se mete en los obstáculos y salta contra las paredes.
su éxito es más aleatorio que lógico.
al igual que en forex, un bot puede aprobar una sección/nivel y suspender otra
porque no tiene inteligencia de comerciante y el bot "no entiende" lo que está haciendo...
para tener éxito en cualquier área/nivel el bot debe tener un modelo de objeto del mundo en el que existe
es decir, el algoritmo no sólo debe optimizar los patrones
El algoritmo debe operar con categorías semánticas y describir la situación tal y como la ve el comerciante/jugador
El bot debe distinguir los tipos de objetos y sus características, y evaluar el peligro de la situación de forma dinámica
y esto requiere un nivel de heurística bastante diferente al de la simple optimización de redes neuronales
El resultado del aprendizaje debe ser un modelo semántico y un conocimiento de los objetos y procesos.
Si no existe, los bots comerciales están condenados a ser golpeados al azar.
A menudo, el historial de transacciones de los bots pone de manifiesto la estupidez con la que el algoritmo evalúa la situación comercial
y entra donde un comerciante humano normal nunca se involucraría
por eso soy pesimista sobre la robótica
en el mejor de los casos se puede hacer un semi-robot con una descripción del dominio en forma de procesamiento de algunas situaciones típicas
(por ejemplo, un cambio de tendencia o un pinchazo)
pero de todos modos, tienes que vigilar a tu robot, para evitar que haga irregularidades como las que hace Mario Bots en un nuevo nivel
...
Estoy de acuerdo con los tres primeros puntos. Pero son los usuarios comunes los que se comportan así. Hay expertos que deben entender lo que estoy escribiendo.
Si no tienen nada que decir sobre la esencia del concepto, significa que el marco local es tan estrecho que no permite ningún pensamiento libre. Veamos...
La MdD es ante todo un arte de la ingeniería, el resultado justifica cualquier concepto. Dame el resultado. Este es el reto: https://numer.ai/
Y así, mi concepto de cómo podría implementarse el "aprendizaje automático" en relación con el comercio MQL:
Primero sobre los conceptos básicos:...................
Por favor, dé su opinión a los expertos en MQL y a cualquier otra persona que esté interesada.
Empezaré por lo básico: Primero empezaré por lo básico del aprendizaje automático.
Personalmente, ni siquiera lo entiendo.)
Pero puedo, no me considero un experto.
La MdD es ante todo un arte de la ingeniería, el resultado justifica cualquier concepto. Dame el resultado. Este es el reto: https: //numer.ai/