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
Vita, buen punto. Pero yo diría que la capacidad de generalización no es sólo una propiedad de la EA, sino también una propiedad del algoritmo de aprendizaje, que debe identificar correctamente esta capacidad. El algoritmo metaquot no revela esta capacidad, sino que la destruye mediante la sobreoptimización.
Un algoritmo de metacitas no capta esta capacidad, sino que la sobreoptimización se lo come. -- Me gustaría ver un ejemplo.
Los ejemplos abundan. No lo tenía claro. Me refería a que un uso poco meditado del optimizador a lo "¡uno, dos, tres!" lleva a un optimismo excesivo y poco razonable de los grailistas. Por ejemplo, el último ejemplo - "¿Se mueve el Forex en nuestra contra? O tal vez no lo entiendo'. O "Asesor de tendencias (experto)". Estoy esperando la respuesta". Todo esto son trucos.
Acerca de "destruir de raíz": la probabilidad de que la curva de ajuste marginal en un intervalo de datos conduzca a una rentabilidad sostenida en el intervalo real, fuera de la muestra, es extremadamente baja. El óptimo se encuentra en algún punto intermedio entre la superrentabilidad y el punto de equilibrio, que es inherente al algoritmo de entrenamiento NS.
Dime por favor, Vita, ¿nuestro optimizador genético en su forma pura proporciona alguna garantía de rentabilidad de un Asesor Experto en el futuro - incluso si es super-duper rentable en las pruebas/optimización? No hablo del probador, el probador está bien.
P.D. Por fin he encontrado una de las primeras menciones al optimizador genético de MQ: https://www.mql5.com/ru/forum/50805. Ver el post de Filin y la respuesta de Slawa. La respuesta muestra que el optimizador es útil sólo para la estimación aproximada de las capacidades de un Asesor Experto y nada más. La mayoría de los grailistas lo utilizan como primera y única herramienta de prueba "total" de los Asesores Expertos. Se trata de un enfoque amateur que conduce a falsas ilusiones. De hecho, esta herramienta, pensada sólo para una estimación aproximada, es, por la ley de la mezquindad, buena sólo para desechar Asesores Expertos obviamente malos en caso de resultados obviamente negativos - pero no para hacer conclusiones positivas sobre el valor del Asesor Experto...
Mathemat писал (а):
Los ejemplos abundan. No lo tenía claro. Me refería a que un uso poco meditado del optimizador a lo "¡uno, dos, tres!" lleva a un optimismo excesivo y poco razonable de los grailistas. Por ejemplo, el último ejemplo - "¿Se mueve el Forex en nuestra contra? O tal vez no lo entiendo'. O "Asesor de tendencias (experto)". Estoy esperando la respuesta". Todo esto son retoques.
--> Imaginemos que tenemos un optimizador "inteligente" que puede decir con precisión: "Este es el conjunto óptimo de parámetros de funcionamiento. Lo juro, ¡no hay ajuste!" o "No, chicos, para este EA no puedo escoger parámetros de trabajo, y no sólo ajustarme a la curva." ¡Esos serían los tiempos! ¡Un optimizador que certifique las estrategias implementadas en los EAs! ¡Acceso libre desde las meta-cotizaciones! ¡Genial! Realmente quiero uno.
--> El "óptimo está en algún lugar en el medio" es una sensación intuitiva que resulta del hecho de que los "graales" totalmente optimizados tienen garantizado el fracaso en el futuro, por lo que uno no debe optimizar hasta el final, o que "la verdad está en algún lugar cercano" o algo así. Este sentimiento no tiene nada que ver con la realidad. La regularidad puede optimizarse hasta el límite y sólo ahí se revelará en todo su esplendor. Por mucho que se retuerza, no servirá de nada, pero se puede desarrollar la sensación de que lo óptimo está en algún punto intermedio.
--> No lo estoy, y creo que es inapropiado exigir tales garantías a los resultados del optimizador. Ver arriba lo de "inteligente", dando garantías, optimizador.
P.D. Por fin he encontrado una de las primeras menciones al optimizador genético de MQ:
https://www.mql5.com/ru/forum/50805
. Ver el post de Filin y la respuesta de Slawa. De la respuesta se desprende que el optimizador sólo es útil para una estimación aproximada de las capacidades de un Asesor Experto y nada más. La mayoría de los grailistas lo utilizan como primera y única herramienta de prueba "total" de los Asesores Expertos. Se trata de un enfoque amateur que conduce a falsas ilusiones. De hecho, una herramienta de este tipo destinada sólo a la estimación aproximada es, por la ley de la mezquindad, lo suficientemente buena sólo para desechar Asesores Expertos obviamente malos en caso de un resultado claramente negativo - pero no para hacer una conclusión positiva sobre el valor del Asesor Experto...
-->"El optimizador sólo es útil para la estimación aproximada de las capacidades del EA" - de nuevo, la afirmación al optimizador que es incapaz de estimar con precisión las capacidades de un EA, pero, de hecho, para certificar las estrategias de un EA. Sólo queda crear un robot que genere estrategias, alimentarlas al optimizador, obtener una opinión sobre su idoneidad, e ir al corte garantizado de dinero. ¿Qué te parece esta ilusión?
La ilusión es grande, pero sólo una ilusión. Pero es posible mejorar drásticamente la aplicación de lo que tenemos (probador/optimizador) con los medios disponibles en MQL4. De lo contrario, seguiremos viendo superchopes cada tres días con resultados sólo ajustados, simulando ser pruebas normales...
Y no tengo ninguna queja sobre las metacitas: el optimizador hace exactamente aquello para lo que fue diseñado, es decir, optimización genética en el espacio de parámetros del Asesor Experto, y de hecho hace lo mismo.
Tengo una sugerencia para el probador: sería bueno tener una función estándar como test() en la que se especificaran claramente todos los parámetros necesarios, incluido el nombre del archivo de historial en el que se prueba todo. La vinculación rígida de un nombre de archivo con su contenido no es una solución suficientemente flexible.
Buenas tardes a todos.
Después de optimizar un EA, a menudo tenemos que nerd fuera de la muestra más de una docena de conjuntos de parámetros sugeridos por el optimizador.
Tengo una idea de optimizar los Asesores Expertos fuera de la muestra. Supongamos que "cargamos" al Asesor Experto con la optimización de una serie de parámetros. Fijamos una fecha. Por ejemplo, a partir del 1 de enero. 2006 hasta el 1 de enero de 2007.
Hemos recibido varios miles de Asesores Expertos. Después, guardamos la página con los RESULTADOS DE LA OPTIMIZACIÓN como un archivo separado. A continuación, fijamos el siguiente periodo histórico para la optimización, es decir, añadimos un mes o dos, o los que necesitemos.
En nuestro caso, fijamos por ejemplo a partir del 1 de enero. 2007 a 1 de junio de 2007. Y de nuevo utilizamos la optimización. Para ser más exactos, no será una optimización del todo. El optimizador no debe tomar los parámetros en las PROPIEDADES DEL EXPERTO, sino volver a seleccionar los conjuntos de parámetros del archivo que guardamos después de la primera optimización. Después de esta segunda optimización, sólo nos quedan los vAriens que han dado beneficios fuera de la muestra.
El resultado, en el mejor de los casos, es que obtenemos los "parámetros ideales" para trabajar y probar en línea más adelante.
Creo que esto será una adición útil al probador de mt4. Probablemente, y lo más probable, es que ya esté implementado por alguien en algún lugar. Si alguien lo sabe, por favor, comparta el enlace.
Yo, debido a mis modestos conocimientos, no consigo averiguar cómo llevar la idea a la práctica.
Seguro que ya existe una aplicación práctica de este algoritmo... En el foro sólo he encontrado sus derivados... Por ejemplo, "Cómo aplicar su criterio de optimización"...
Quiero compartir mi solución a este problema....
Vamos a preparar un EA... Añadamos parámetros externos...
En la función init() inserte el siguiente bloque....
Parametr1, Parametr2, Parametr3 - parámetros externos, que deben ser optimizados....
Eso es todo...
Seguro que ya existe una aplicación práctica de este algoritmo... En el foro sólo he encontrado sus derivados... Por ejemplo, "Cómo aplicar su criterio de optimización"...
Quiero compartir mi solución a este problema....
Eche un vistazo a los artículos de Nikolay Kositsin, por ejemplo, "Expertos basados en sistemas de trading populares y alquimia de optimización de robots de trading (continuación)".
¿Cómo funciona?
En el intervalo de tiempo A ejecutamos la optimización habitual de los parámetros (Counter=0) ...
Transferimos los resultados a Excel... Ahora nuestra tarea es crear un archivo con los parámetros optimizados y guardarlo en el directorio ...\Nde los archivos de prueba
Seleccione las columnas con nuestros parámetros en Excel, cópielas y péguelas en Word o en el Bloc de notas como texto sin formato...
En Wordboard o Notepad convierta cada línea en la forma: valor1;valor2;valor3.
Guárdalo en el directorio ...\Nde los archivos de prueba
Si no eres demasiado vago, puedes escribir una macro para realizar las operaciones anteriores sobre la marcha...
Ahora podemos ejecutar la optimización en la franja horaria B... Ahora el parámetro de optimización será Counter... Especifique el valor máximo (número de filas en la lista)...
Ya está, el problema está resuelto... Buena suerte...
Consulta los artículos de Nikolay Kositsin, como este "Asesores expertos basados en sistemas de trading populares y la alquimia de la optimización de los robots de trading (Continuación)".
He leído este artículo... Creo que mi variante es más sencilla y conveniente.... y lo más importante es que es universal...
La aplicación anterior coincide totalmente con el deseo del autor de la rama...
Gracias, kharko por la solución. ¡Intentaré utilizarlo!