Sugerencias para el EA (perder para ganar) - página 7

 
diostar:

No. Eso no es realmente, en esta etapa. Puede ser una pérdida de tiempo, probando desde la compra a la venta, y viceversa, aunque dio cambios. Cuando digo, esto es lo que quería decir:

Encontrar la mejor solución en el mínimo de tiempo. Mientras que en el mismo tiempo (muy corto), 5-10 minutos como máximo, probar por unidad la lógica, por lo que la lógica PUEDE ser una determinada, digamos. 99% bueno o 99% malo, está bastante confirmado.

1) Usted acaba de tomar 1 lógica principal, digamos por ejemplo:

y quitas todo el resto, y haces esto:

que es por la lógica de la unidad - la prueba de AMBOS comprar y vender, en el mismo tiempo. Entonces, si usted desea ir a la optimización con esta 1 lógica maestra, usted simplemente optimizará en sus parámetros básicos - sl,tp, lotes, etc solamente. A continuación, analizar las instancias de sus compras y ventas, juzgar si esta 1 lógica es puede hacer el corte, en ambos escenarios - si hace una entrada incorrecta o correcta. Ambos. A continuación, pasar a la siguiente lógica.

A medida que avanza, es posible que desee probar combinaciones ... 1ª lógica sólo comprar, lógica 2, sólo vender, o ambos, etc. Me parece que esta forma es más estructurada y se puede ver realmente qué lógica precisa está causando realmente el drawdown.


Nunca he probado un EA con estos métodos, así que no se preocupe por mí...

Mi pregunta es: ¿qué parámetros aislar para centrarse estrictamente en el beneficio?

  • ¿MAs?
  • TP
  • SL
  • ?
 
c0d3:

Nunca he probado un EA con estos métodos, así que no se preocupe por mí...

Mi pregunta es: ¿qué parámetros aislar para centrarse estrictamente en el beneficio?

  • ¿Amigos de la Tierra?
  • TP
  • SL
  • ?

Yo tampoco. Acabo de tropezar con esta idea totalmente nueva mientras trabajaba en esto. Vengo de una base bastante técnica, por lo que me resultó fácil juzgar que cierta lógica es completamente incorrecta / sesgada / defectuosa, en los mercados.

Pero me preguntaba, "¿Cómo se puede probar esto en el probador de estrategias, si es realmente así? Seguramente debe haber una manera". Así que me arriesgué con este método, casualmente.

Usted acaba de tomar, en este caso, los MA lógica en checkcondition, uno por uno, digamos por ejemplo, usted comienza con M240close< MA 240. Usted prueba ambos lados - compra y venta, AL MISMO TIEMPO. Ahora estos son los casos:


1) Ahora, matemáticamente, si esta lógica es realmente factible, el resultado debería ser algo NEUTRO, ya que cubre ambos lados. ¿Está de acuerdo? Si resulta rentable - entonces se puede concluir mirando a través, los resultados de compra y venta, esta lógica está haciendo el corte muy, muy bien, incluso mientras se está tomando golpes de lo contrario. Por lo tanto, es muy sólida.

2) Ahora, si resulta desastroso, entonces usted puede concluir, que TODA la lógica, es decir, la comparación del cierre a 240 con la MA 240, es 100% defectuosa contra todo tipo de movimientos del mercado. Así que eso debería dejarte convencido de que toda la lógica debería ser eliminada, reemplazada por completo.

Deja el resto - tp, sl, para la optimización. Es conseguir la lógica, pieza por pieza, correcta que es más importante en esta etapa.

Desde que uso este enfoque, he tenido un progreso bastante bueno con el mío. Antes, yo estaba haciendo las cosas más o menos lo mismo que muchos, pero con esta nueva forma, estoy haciendo un progreso serio en muy muy poco tiempo ...;-)

 
diostar:

Yo tampoco. Acabo de tropezar con esta idea totalmente nueva mientras trabajaba en esto. Vengo de una base bastante técnica, por lo que fue fácil para mí juzgar que alguna lógica es completamente incorrecta / sesgada / defectuosa, en los mercados.

Pero me preguntaba, "¿Cómo se puede probar esto en el probador de estrategias, si es realmente así? Seguramente debe haber una manera". Así que me arriesgué con este método, casualmente.

Usted acaba de tomar, en este caso, los MA lógica en checkcondition, uno por uno, digamos por ejemplo, usted comienza con M240close< MA 240. Usted prueba ambos lados - compra y venta, AL MISMO TIEMPO. Ahora estos son los casos:


1) Ahora, matemáticamente, si esta lógica es realmente factible, el resultado debería ser algo NEUTRO, ya que cubre ambos lados. ¿Está de acuerdo? Si resulta rentable - entonces se puede concluir mirando a través, los resultados de compra y venta, esta lógica está haciendo el corte muy, muy bien, incluso mientras se está tomando golpes de lo contrario. Por lo tanto, es muy sólida.

2) Ahora, si resulta desastroso, entonces usted puede concluir, que TODA la lógica, es decir, la comparación del cierre a 240 con la MA 240, es 100% defectuosa contra todo tipo de movimientos del mercado. Así que eso debería dejarte convencido de que toda la lógica debería ser eliminada, reemplazada por completo.

Deja el resto - tp, sl, para la optimización. Es conseguir la lógica, pieza por pieza, correcta que es más importante en esta etapa.

Desde que uso este enfoque, he tenido un progreso bastante bueno con el mío. Antes, yo estaba haciendo las cosas más o menos lo mismo que muchos, pero con esta nueva forma, estoy haciendo un progreso serio en muy muy poco tiempo ...;-)

¿Por qué no optimizar todas las varibles al mismo tiempo? Puede tomar un tiempo para ejecutar a la prueba de optimización, pero, es por eso que tengo 2 ordenadores. Uno para pruebas y otro para desarrollo.

Suponiendo que usted tiene un shell EA que funciona correctamente, es decir, SL, TP, Trailing SL, Incremento, Stack, Riesgo, lotes de horas para el comercio, el correo electrónico, la presentación de informes, la apertura de órdenes de cierre, trabaja en múltiples pares, etc. Asumiendo que todo eso funciona correctamente, lo cual no es una tarea menor, entonces te queda la lógica que utilices para entrar en una operación. En mi caso tengo Trade() que devuelve 1,0 o -1. La lógica en Trade() puede ser cualquier sistema que quieras introducir.

Pruebo mi lógica de comercio en el modo visual primero, así me aseguro de que la lógica está funcionando correctamente, por ejemplo, las paradas se establecen en el lugar correcto, la entrada está en el lugar correcto y lo que el sistema pide. Una vez hecho esto, por lo general esto toma una hora o soto prueba a menos que haya perdido completamente la cabeza. A continuación, ejecuto toda la optimización para los rangos de TP, SL Stack, horas de comercio y cualquier variable que necesita ser probado dentro de la lógica de comercio Ma, patrones de barras lo que sea.

Si ejecuta todas las optimizaciones y el mismo tiempo que le dará una mejor idea si la estrategia funciona. Si desea reducir el tiempo de prueba ejecutar una opción para un período más corto de tiempo, sólo para obtener un sabor del sistema, digamos 1-2 meses. Esto no debería tomar mucho tiempo 4-8 horas más o menos si usted mantiene sus rangos bajos. Si parece prometedor entonces ejecute un backtest real que le dará un sentido real de cómo el sistema está funcionando. Nada dice que usted no puede detener un backtest después de un 100 carreras porque parece un perdedor ya.

En mis pruebas me fijo en el drawdown como mi estadística número uno, si mi EA baja más del 12% con un riesgo del 2% entonces estoy de vuelta en el punto de partida de todos modos. Si eso funciona, miro el porcentaje de pérdidas y ganancias, y el promedio de ganancias y pérdidas. No estoy seguro de que vayas a conseguir esos números más rápido haciéndolo a tu manera. Si la mayoría, el 80-90% de mis ejecuciones opt no bajan la cuenta a 0, entonces usted tiene una oportunidad decente en un EA rentable. A continuación, tomar el beneficio medio se ejecuta y la media y reoptimize con rangos más pequeños para obtener mi configuración para una prueba foward en los datos en vivo. Sólo eso puede llevar un mes. Yo no correría con dinero real a menos que se haga eso.

Ingnorando todo lo anterior, esto es sólo la forma en que hago el trabajo de desarrollo, al menos con EA.

No estoy de acuerdo con 1 o 2.

1) No creo que se pueda probar o incluso saber si el sistema será rentable a menos que se ejecute un opt run a través del backtester con todas las variables posibles. Que si, SL,TP,Stack, distancia entre Stack, o MoveStop hace que la estratagia sea ganadora, No es realmente un que si, es un hecho. Si usted prueba su manera usted todavía necesita un SP o TP o lo que sea para ver una ganancia o pérdida. Si tienes un SL de 100 pip en un gráfico de 1 minuto lo más probable es que tengas un gran sistema con 85 -> 98% de victorias. Te puedo decir que no va a funcionar de esa manera cuando lo ejecutas a través de una carrera de optimización. Puedes tener un ratio de victorias del 30% y un EA muy rentable. También puedes tener un ratio de victorias del 90% y el drawdown puede ser del 70% y 3000 de 4000 ejecuciones de optimización vaciar la cuenta. Al final, usted va a hacer una carrera completa de todos modos. Por qué no hacerlo primero y codificar un nuevo sistema en paralelo.

2) Podría convertirse en un desastre y tirar un sistema sin una prueba completa. Podría ser como tirar un boleto ganador de la Powerball a la basura porque acabas de comprobar el número de la Powerball y sabes que no te ha tocado el premio gordo. Si tienes los otros cinco números y acabas de tirar un ganador de 250K a la basura, ahora alguna paloma tiene un nido muy caro.

Enresumen, creo que la codificación del sistema es la parte que menos tiempo consume del proceso de desarrollo. Las pruebas son la parte más larga e importante y quiero pasar la mayor parte de mi tiempo en la fase de pruebas. También tiendo a aprender más de mis EAs fallidos, sé que esto es lo que todo el mundo dice, pero los fallos en las pruebas tienden a ayudar a reducir los rangos de parámetros para futuras optimizaciones, esto hace que las pruebas de los EAs más prometedores sean más rápidas al final.

Sólo mis 2 centavos.

 
danjp:

¿Por qué no optimizar todas las variables al mismo tiempo? Puede tomar un tiempo para ejecutar a la prueba de optimización, pero, es por eso que tengo 2 ordenadores. Uno para las pruebas y otro para el desarrollo.

Suponiendo que usted tiene un shell EA que funciona correctamente, es decir, SL, TP, Trailing SL, Incremento, Stack, Riesgo, lotes de horas para el comercio, el correo electrónico, la presentación de informes, la apertura de órdenes de cierre, trabaja en múltiples pares, etc. Asumiendo que todo eso funciona correctamente, lo cual no es una tarea menor, entonces te queda la lógica que uses para entrar en una operación. En mi caso tengo Trade() que devuelve 1,0 o -1. La lógica en Trade() puede ser cualquier sistema que quieras introducir.

Pruebo mi lógica de comercio en el modo visual primero, así que me aseguro de que la lógica está funcionando correctamente, por ejemplo, las paradas se establecen en el lugar correcto, la entrada está en el lugar correcto y lo que el sistema pide. Una vez hecho esto, por lo general esto toma una hora o soto prueba a menos que haya perdido completamente la cabeza. A continuación, ejecuto toda la optimización para los rangos de TP, SL Stack, horas de comercio y cualquier variable que necesita ser probado dentro de la lógica de comercio Ma, patrones de barras lo que sea.

Si ejecuta todas las optimizaciones y el mismo tiempo que le dará una mejor idea si la estrategia funciona. Si desea reducir el tiempo de prueba ejecutar una opción para un período más corto de tiempo, sólo para obtener un sabor del sistema, digamos 1-2 meses. Esto no debería tomar mucho tiempo 4-8 horas o así si usted mantiene sus rangos bajos. Si parece prometedor, entonces ejecute un backtest real que le dará un sentido real de cómo el sistema está funcionando. Nada dice que usted no puede detener un backtest después de 100 carreras porque parece un perdedor ya.

En mis pruebas me fijo en el drawdown como mi estadística número uno, si mi EA baja más del 12% con un riesgo del 2% entonces estoy de vuelta en el punto de partida de todos modos. Si eso funciona, miro el porcentaje de pérdidas y ganancias, y el promedio de ganancias y pérdidas. No estoy seguro de que vayas a conseguir esos números más rápido haciéndolo a tu manera. Si la mayoría, el 80-90% de mis ejecuciones de opt no bajan la cuenta a 0 entonces usted tiene una oportunidad decente en un EA rentable. A continuación, tomar el beneficio medio se ejecuta y la media y reoptimize con rangos más pequeños para obtener mi configuración para una prueba foward en los datos en vivo. Sólo eso puede llevar un mes. Yo no correría con dinero real a menos que se haga eso.

Ingnorando todo lo anterior, esto es sólo la forma en que hago el trabajo de desarrollo, al menos con EA.

No estoy de acuerdo con 1 o 2.

1) No creo que se pueda probar o incluso saber si el sistema será rentable a menos que se ejecute un opt run a través del backtester con todas las variables posibles. Que si, SL,TP,Stack, distancia entre Stack, o MoveStop hace que la estratagia sea ganadora, No es realmente un que si, es un hecho. Si usted prueba su manera usted todavía necesita un SP o TP o lo que sea para ver una ganancia o pérdida. Si tienes un SL de 100 pip en un gráfico de 1 minuto lo más probable es que tengas un gran sistema con 85 -> 98% de victorias. Te puedo decir que no va a funcionar de esa manera cuando lo ejecutas a través de una carrera de optimización. Puedes tener un ratio de victorias del 30% y un EA muy rentable. También puedes tener un ratio de victorias del 90% y el drawdown puede ser del 70% y 3000 de 4000 ejecuciones de optimización vaciar la cuenta. Al final, usted va a hacer una carrera completa de todos modos. Por qué no hacerlo primero y codificar un nuevo sistema en paralelo.

2) Podría convertirse en un desastre y tirar un sistema sin una prueba completa. Podría ser como tirar un boleto ganador de la Powerball a la basura porque acabas de comprobar el número de la Powerball y sabes que no te ha tocado el premio gordo. Si tienes los otros cinco números y acabas de tirar un ganador de 250K a la basura, ahora alguna paloma tiene un nido muy caro.

En resumen, creo que la codificación del sistema es la parte que menos tiempo consume del proceso de desarrollo. Las pruebas son la parte más larga e importante y quiero pasar la mayor parte de mi tiempo en la fase de pruebas. También tiendo a aprender más de mis EAs fallidos, sé que esto es lo que todo el mundo dice, pero los fallos en las pruebas tienden a ayudar a reducir los rangos de parámetros para futuras optimizaciones, esto hace que las pruebas de los EAs más prometedores sean más rápidas al final.

Sólo mis 2 centavos.

Bueno, entonces vamos a estar de acuerdo en desacuerdo....y gracias por escribir post muy largo. tal vez este artículo va a hacer. optimización = TRAP, se puede caer en. https://www.mql5.com/en/articles/1434

 

@c0d3: Este es un consejo que me dieron algunos grandes desarrolladores de este foro. No utilices nunca el Optimizador de Estrategias (salvo para el ajuste fino). El proceso de desarrollo ideal es: 1) Usted piensa que una estrategia tiene sentido. 2) Usted codifica y prueba la estrategia. 4) La estrategia resulta rentable. 5) Utiliza el Optimizador para el ajuste fino. 6) Aprendes de las áreas en las que ha fallado.

El optimizador es un #-cruncher que haría que 1-pip Sl/Tp se convierta en la diferencia entre ganar o perder. Optimizar las variables 1 a la vez o todas juntas no hace ninguna diferencia, IMO. Aquí está mi santo-grail cuando era nuevo de 1 mes. Si fuera tan fácil, no estaría todavía buscando mejores métodos.

 
ubzen:

@c0d3: Este es un consejo que me dieron algunos grandes desarrolladores de este foro. No utilices nunca el Optimizador de Estrategias (salvo para el ajuste fino). El proceso de desarrollo ideal es: 1) Usted piensa que una estrategia tiene sentido. 2) Usted codifica y prueba la estrategia. 4) La estrategia resulta rentable. 5) Utiliza el Optimizador para el ajuste fino. 6) Aprendes de las áreas en las que ha fallado.

El optimizador es un #-cruncher que haría que 1-pip Sl/Tp se convierta en la diferencia entre ganar o perder. Optimizar las variables 1 a la vez o todas juntas no hace ninguna diferencia, IMO. Aquí está mi santo-grail cuando era nuevo de 1 mes. Si fuera tan fácil, no estaría todavía buscando mejores métodos.

Estos puntos son exactamente lo que el artículo tenía sobre la optimización. Y mi propia toma personal también del probador. Estoy bastante sorprendido por qué incluso aconseja lo contrario. ¿Contradicciones comerciales?

En definitiva, el comercio es un juego relativamente "sencillo", si se tiene en cuenta este hecho. Nadie, ni siquiera los genios en él comercia todo el día como algunos robots - los buenos, excepcionales toma sólo 15-30 min, a lo sumo 1 hora para entrar, sacar 70-100 pips rastro y se van para el almuerzo. ¿Suena bastante difícil para un robot? Si puedes hacer eso semanalmente, o diariamente, y amar hacerlo hasta que seas viejo como esa anciana de YTE, eso es lo que yo llamo un santo grial. no un robot que necesita retoques para siempre.

Pero si quieres complicar las cosas con un robot, prepárate para tener a mano ciertos conocimientos de lo que realmente hace funcionar a un programa informático, además de los mercados. Es posible que necesites habilidades que abarquen varias áreas, no sólo la programación, sino también temas fundamentales: la lógica booleana es algo definitivo, las matemáticas y los conocimientos de ingeniería serán útiles, etc. Esto puede estar más allá de algunas personas.

Si usted quiere saber más, lo que puedo compartir con suerte es la prueba y optimización, no es más que una fuerza mecánica inteligente estadístico para batir los datos por alguna lógica que le dio a seguir. Pero la verdad es que los mercados no funcionan por las leyes estadísticas o su lógica, si usted havent descubrir que, sin embargo.

Tengo EAs comerciales bien recomendados, que dieron resultados agradables backtests, sin embargo, todavía me da enorme, drawdown enorme esp. para los últimos meses. Ahora, si usted ha sido a través de eso, usted sabrá mejor lo que quiero decir. Hay una cosa tal como un santo grial, pero definitivamente no una mecánica que requiere retoques sólo para adaptarse al momento. Y sus gloriosos resultados de backtest.

Mi consejo es el siguiente: tómese este tinkering como un hobby y tome el trading SEPARADO. Si desea combinar ambos, entonces prepárese para ser su propio sacrificio, a largo plazo.

 

El99% de las personas que operan en Forex perderán. Estos son los comerciantes No-Robot. Los robots no son malos, es una herramienta. El robot es tan bueno como el dinero y el tiempo que pagas por ellos. ;)

 
diostar:

Bueno, entonces vamos a estar de acuerdo en desacuerdo....y gracias por escribir post muy largo. tal vez este artículo va a hacer. optimización = TRAP, se puede caer en. https://www.mql5.com/en/articles/1434


La optimización es una trampa si dejas que te atrape. Yo utilizo la optimización para conseguir el mayor número de operaciones posibles durante un cierto número de años. Mientras hago otra cosa. No pondría un centavo de mi dinero con un robot que no ha sido probado, backetested y foward probado. El problema es el tiempo, cuanto tiempo vas a esperar para operar con dinero real. He estado operando durante 5 años más o menos, el beneficio de un robot sobre un humen es esto, hace lo que usted programó para hacer. No enciende la CNBC y escucha lo que algún idiota piensa, no espera a una nueva publicación, no se pone nervioso o detiene una operación antes de tiempo porque tenía la sensación de que el mercado iba a girar. También funciona si no eres un trader a tiempo completo.

Si ejecutas 12.000 simulaciones en el optimizador y el 70% de esas ejecuciones fallan, y el 10% de las ejecuciones te hacen ganar un 2000% o cualquier número loco que la gente esté buscando, entonces tienes un sistema bastante perdedor y no vale la pena el tiempo de probarlo.

Si usted piensa que va a probar un sistema manualmente durante un número de años y ajustarlo después de cada ejecución cambiando un parámetro a la vez, eso es más loco que ejecutar el optimizador. Sin embargo, si se ejecuta digamos 15.000 pases en el opt y ninguno de esos pases es un perdedor, entonces usted tiene un sistema que está listo para, al menos, caer en una cuenta de demostración para foward pruebas para decir 4 semanas. BTW en este punto usted va a encontrar los errores de codificación real.

Muéstrame una persona que comercia 15-30 minutos al día y los bancos 100-150 pips y luego se va a almorzar, te voy a mostrar a alguien que no comercia dinero real. El trading es un trabajo a tiempo completo como cualquier otro trabajo.

Si esto es un hobby, no estoy seguro de por qué perder el tiempo haciendo este tipo de codificación. Es bastante fácil técnicamente y no vas a ganar tanto dinero como lo harías en un trabajo normal de desarrollo. En mi trabajo diario trabajo en un sistema que tiene cerca de 2 millones de líneas de código usando 4 lenguajes y se ejecuta en mainframes, PCs, todos los sabores de UNIX y la mayoría de los sistemas operativos de Linux.

En mi humilde opinión, el artículo era interesante. Eso no significa que crea cada palabra en él. Es sólo la opinión del autor, Probablemente tuvieron que ejecutar muchas optimizaciones para llegar a la conclusión de que la optimazión es una trampa. Si hicieron eso, entonces cómo puede ser correcto el artículo ya que la optimización no funciona.

 
ubzen:

@c0d3: Este es un consejo que me dieron algunos grandes desarrolladores de este foro. No utilices nunca el Optimizador de Estrategias (salvo para el ajuste fino). El proceso de desarrollo ideal es: 1) Usted piensa que una estrategia tiene sentido. 2) Usted codifica y prueba la estrategia. 4) La estrategia resulta rentable. 5) Utiliza el Optimizador para el ajuste fino. 6) Aprendes de las áreas en las que ha fallado.

El optimizador es un #-cruncher que haría que 1-pip Sl/Tp se convierta en la diferencia entre ganar o perder. Optimizar las variables 1 a la vez o todas juntas no hace ninguna diferencia, IMO. Aquí está mi santo-grail cuando era nuevo de 1 mes. Si fuera tan fácil, no seguiría buscando mejores métodos.

  • Estoy muy de acuerdo, el back-testing sólo es bueno para probar la lógica (técnica, visual), y nunca debe ser utilizado como un indicador de potencial de beneficio
  • Por lo tanto, solo pruebo los EAs para medir su rendimiento, por lo que cosas como la optimización es un tema completamente nuevo, del que todavía soy escéptico
 
danjp:

Si usted piensa que va a probar un sistema manualmente durante un número de años y ajustar después de cada ejecución de cambiar un parámetro a la vez, que es más loco, entonces la ejecución del optimizador. Sin embargo, si se ejecuta digamos 15.000 pases en el opt y ninguno de esos pases es un perdedor, entonces usted tiene un sistema que está listo para, al menos, caer en una cuenta de demostración para las pruebas de foward por decir 4 semanas. BTW en este punto usted va a encontrar los errores de codificación real.


Este es un buen punto, sobre las pruebas de espalda