Automatización de la búsqueda de estrategias. - página 2

 
se necesita un minero, pero aun así la búsqueda se hará dentro de las condiciones dadas. La optimización también es una búsqueda estratégica, en sentido estricto. La pregunta no está bien planteada.
 
Yuriy Asaulenko:

En mi opinión, la pregunta es totalmente correcta. Antes de trazar una estrategia, sería bueno saber si funcionará.

Hay 2 maneras de hacer esto.

1.Excel - escribimos la estrategia allí y comprobarlo. cualquier gráfico + buenas matemáticas a su servicio. Sí, y + VBA.

2.MatLab - subimos las cotizaciones a la base de datos, la conectamos a MatLab y modelamos la estrategia allí. Más fácil que en Excel.

¿No es más fácil hacerlo todo directamente en MT4/5? ¿Por qué usar programas de terceros si lo que se busca es optimizar una cartera de estrategias? Aunque no estoy seguro si esa era la pregunta?
 
Stanislav Korotky:
¿No es más fácil hacerlo todo directamente en MT4/5? ¿Por qué programas de terceros si lo que se busca es optimizar una cartera de estrategias? Aunque no estoy seguro si esa era la pregunta?
Si buscas una estrategia, no es más fácil. No sé el resto, no he pensado en ello. Aunque, cualquier modelado es más fácil en entornos especiales, no en MT. MT es un producto final, no está diseñado para la investigación y no es muy adecuado para ello
 
Youri Tarshecki:

Cada vez que cargo variantes en el autotester pienso en ello. Esto es lo que pienso

1. El generador de estrategias debería funcionar según el principio del árbol evolutivo de lo simple a lo complejo.

2. 2. Las variantes deberían comprobarse inmediatamente en el volking-forward y eliminarse.

3. Las funciones deben ser preparadas manualmente, y el generador debe trabajar sólo las variantes de su interacción, es decir, crear interdependencias.

Por cierto, en el hilo Inglés me encontré con una mención de algún software búlgaro con elementos de algo como esto. Pero como era sobre MT4, no me interesó.

Y aquí hay otro alemán, también en MT4 http://darwins-fx-tools.com/.

En esta variante el desarrollo sigue adelante... Se construye un gráfico de interacción de funciones, el espacio de búsqueda es infinito....

Las conexiones entre funciones tendrán más "sentido", por ejemplo, la expresión Open>Low tiene sentido, pero Open>Volume no, y otros matices....

 
He aquí otro ejemplo de expresión sin sentido: =Alto>(Abrir-Cerrar), tampoco colará.
 
Aliaksandr Hryshyn:
He aquí otro ejemplo de expresión sin sentido: =Alto>(Abrir-Cerrar), tampoco colará.

Se ahogará en nimiedades como ésta. Por funciones, me refiero a una cierta pieza de código internamente consistente preparada de antemano, que, con la ayuda de indicadores o de forma independiente, es responsable de alguna propiedad del EA. Es decir, de una determinada idea.

Por ejemplo, una pieza que define fractales en la historia. O una pieza que cuenta todo lo que no le das. O que defina tasas de cambio. O que determine niveles.

La tarea del generador consiste en combinar estas diferentes piezas en una única solución de ingeniería. Por ejemplo: contamos el número de fractales del nivel y en función del resultado priorizamos la compra o la venta. O determinamos la suma de aceleraciones en el nivel, la comparamos con la misma en el historial y hacemos un factor de corrección en otra función. Etc etc.

Es decir, si hacemos una analogía con la evolución de la materia viva, hay dos tipos de mutaciones que proporcionan material para la selección. La primera son las mutaciones puntuales, que, de hecho, constituyen la inmensa mayoría de los cambios en el genoma. El problema es que normalmente no conducen a nada. Pero como este proceso lleva ocurriendo miles de millones de años y en estadísticas enormes, constantemente hay afortunados. Personalmente, no dispongo de un millón de años, ni de cien, ni siquiera de una docena, para hacer una búsqueda estúpida.

El segundo tipo de mutaciones es más raro, pero más interesante, - es cuando se produce la recombinación, también espontánea, pero ya soluciones listas enteras. Por ejemplo, en la formación de un nuevo organismo sexual hay una mezcla de diferentes genes del padre y de la madre. O se produce la incorporación de un virus al genoma. O se toma todo el genoma de un organismo extraño independiente. O se produce una fusión de cromosomas enteros para formar una nueva especie (homínidos, por cierto).

Por lo tanto, la tarea de un generador de este tipo es recombinar dichas funciones según un algoritmo determinado. Sólo entonces existe la posibilidad de que surja algo nuevo

Al liberar al operador de la rutina, un generador de este tipo le dejaría la parte creativa: la oportunidad de centrarse en nuevas ideas. Además, la mecanización siempre reduce el riesgo de subjetividad y ayuda a librarse de los sellos.

 
Youri Tarshecki:

Usted se ahogará en los detalles. Por funciones, me refiero a una cierta pieza internamente coherente de código preparado de antemano, que, con la ayuda de indicadores o de forma independiente, es responsable de una determinada propiedad del Asesor de Expertos. Es decir, de una cierta idea.

Por ejemplo, una pieza que define fractales en la historia. O una pieza que cuenta todo lo que no le das. O que defina tasas de cambio. O que determine niveles.

La tarea del generador consiste en combinar estas diferentes piezas en una única solución de ingeniería. Por ejemplo: contamos el número de fractales del nivel y en función del resultado priorizamos la compra o la venta. O determinamos la suma de aceleraciones en el nivel, la comparamos con la misma en el historial y hacemos un factor de corrección en otra función. Etc etc.

Por lo tanto, la tarea de un generador de este tipo es recombinar dichas funciones según un algoritmo determinado. Sólo entonces existe la posibilidad de que aparezca algo nuevo

¿Qué pasa si un trozo de código (una función) ofrece comprar y otro vender? ¿Cómo puede el generador combinar estas piezas en una solución consolidada?

¿Debemos priorizarlas empíricamente? O, supongamos que una función A cree que el precio bajará con probabilidad P(A), y otra función B cree que el precio subirá con probabilidad P(B), ¿entonces qué? ¿Debemos aplicar las fórmulas de la teoría de la probabilidad?

 
Yuriy Asaulenko:
Si buscas una estrategia, no es más fácil. No sé el resto, no he pensado en ello. Aunque, cualquier modelización es más fácil en entornos especiales, no en MT. MT es un producto final, no está diseñado para la investigación y no es muy adecuado para ello
Depende. Para mí es más fácil modelar la estrategia en MT, y no es un problema añadir cualquier algoritmo de estimación encima.
 
Yuri Evseenkov:

¿Qué ocurre si una pieza de código (función) ofrece comprar y otra vender? ¿Cómo puede el generador combinar estas piezas en una solución consolidada?

¿Deberíamos priorizarlas empíricamente? O, supongamos que una función A cree que el precio bajará con probabilidad P(A), y otra función B cree que el precio subirá con probabilidad P(B), ¿entonces qué? ¿Debemos aplicar las fórmulas de la teoría de la probabilidad?

Según tengo entendido, estas piezas de código (funciones) necesitan valores analógicos en la salida, y los valores binarios -compra/venta- ya estarán en las estrategias de negociación combinadas a partir de estas funciones con la ayuda de la selección genética.
 
Youri Tarshecki:

Usted se ahogará en los detalles. Por funciones, me refiero a una cierta pieza internamente coherente de código preparado de antemano, que, con la ayuda de indicadores o de forma independiente, es responsable de una determinada propiedad del Asesor de Expertos. Es decir, de una cierta idea.

Por ejemplo, una pieza que define fractales en la historia. O una pieza que cuenta todo lo que no le das. O que defina tasas de cambio. O que determine niveles.

La tarea del generador consiste en combinar estas diferentes piezas en una única solución de ingeniería. Por ejemplo: contamos el número de fractales del nivel y en función del resultado priorizamos la compra o la venta. O determinamos la suma de aceleraciones en el nivel, la comparamos con la misma en el historial y hacemos un factor de corrección en otra función. Etc etc.

Es decir, si hacemos una analogía con la evolución de la materia viva, hay dos tipos de mutaciones que proporcionan material para la selección. La primera son las mutaciones puntuales, que, de hecho, constituyen la inmensa mayoría de los cambios en el genoma. El problema es que normalmente no conducen a nada. Pero como este proceso lleva ocurriendo miles de millones de años y en estadísticas enormes, constantemente hay afortunados. Personalmente, no dispongo de un millón de años, ni de cien, ni siquiera de una docena, para hacer una búsqueda estúpida.

El segundo tipo de mutaciones es más raro, pero más interesante, - es cuando se produce la recombinación, también espontánea, pero ya soluciones listas enteras. Por ejemplo, en la formación de un nuevo organismo sexual hay una mezcla de diferentes genes del padre y de la madre. O se produce la incorporación de un virus al genoma. O se toma todo el genoma de un organismo extraño independiente. O se produce una fusión de cromosomas enteros para formar una nueva especie (homínidos, por cierto).

Por lo tanto, la tarea de un generador de este tipo es recombinar dichas funciones según un algoritmo determinado. Sólo entonces existe la posibilidad de que surja algo nuevo

Al liberar al operador de la rutina, un generador de este tipo le dejaría la parte creativa: la oportunidad de centrarse en nuevas ideas. Además, la mecanización siempre reduce el riesgo de subjetividad, ayuda a liberarse de los sellos.

Efectivamente, hay muchas pequeñas cosas.

Intento hacer un sistema universal para poder añadir diferentes posibilidades de análisis de indicadores, velas, etc. con el mínimo esfuerzo. Cada función tiene información sobre con qué datos puede trabajar y qué datos saldrán. También se describirán los indicadores, qué tipo de datos proporcionan. Los datos se dividen en tipos, tanto simples como complejos, por ejemplo {double} y {int,double}. Se dividen en categorías, por el mismo ejemplo "precio" y "posiciones en el gráfico", otro ejemplo: "línea recta" (se puede utilizar para definir canales), etc. Se dividen por "tipo de escala". Se dividen por "tipo de escala", por ejemplo "constante" (parámetro de la estrategia), "índice" (hay un mínimo y un máximo), "ratio" (sólo hay un punto de referencia, por ejemplo precio, volumen), etc. Es necesario modificar la estrategia de una manera coherente, hay tal matiz, la modificación en un lugar puede afectar a las condiciones de modificación en otro lugar.

Así es... Para reducir el número de combinaciones de la búsqueda y se utilizan las restricciones anteriores (tipo, escala, categoría), por ahora será suficiente y cambios puntuales (añadir / quitar una / pocas funciones).

"la recombinación también es espontánea, pero de soluciones enteras ya hechas" - este pensamiento me vino a la mente), es difícil imaginar cómo se puede realizar. Lo más probable es que un grupo de funciones combinadas tenga más conexiones con el "mundo exterior" que una sola función, por lo que habrá menos oportunidades de encajarlo todo. El algoritmo se complica mucho, dejémoslo para tiempos mejores)).