Terminator v2.0 - página 36

 

21 dic 2006 12:51 Est

Este es el estado de las cosas al 21 de diciembre. Esto es increíble. Hace que parezca que sé lo que estoy haciendo; no es así. Al menos no del todo. Encontré la línea para limitar el tamaño de los lotes, informaré sobre esto más tarde.

Me gustaría reducir el capital en el comercio, es decir, retirar algunas ganancias, ¿alguien sabe cómo hacer eso en una demo? Sólo quiero reducir intencionalmente el capital utilizado en el comercio.

Pipsqueak2

Archivos adjuntos:
dec_21.jpg  135 kb
 

22 de diciembre RESULTADOS TREMINANTE

Parece que este hilo está muy tranquilo. De todas formas aquí están mis resultados y comentarios.

1) Terminator no viene con stops, hay que añadir stops normales y trailing stops.

2) El máximo de lotes está fijado en 100 en el programa, para mí es demasiado alto. Debes cambiar la línea en el código "if(maxLots>=100){maxLots=100;}". Cambia el 100 por un número menor, por ejemplo 5.

3) Caso0: parece el ganador en mi prueba de avance esta semana y la anterior. Caso0: es la pendiente del MACD. Introduciré un filtro para ignorar las pendientes que son demasiado superficiales (movimientos laterales) y utilizaré la pendiente de la EMA en lugar del MACD parece que la EMA da señales más tempranas.

4) Esta semana que viene, me concentraré en el Caso0:: más favorable, que creo que será el MACD cuando haga el análisis.

Feliz pipping.

Pipsqueak2

Resultados adjuntos.

Archivos adjuntos:
 
pipsqueak2:
Parece que este hilo está muy tranquilo. De todas formas aquí están mis resultados y comentarios.

1) Terminator no viene con stops, hay que añadir stops normales y trailing stops.

2) Los lotes máximos están fijados en 100 en el programa, para mí eso es demasiado alto. Debe cambiar la línea en el código "if(maxLots>=100){maxLots=100;}". Cambia el 100 por un número menor, por ejemplo 5.

3) Caso0: parece el ganador en mi prueba de avance esta semana y la anterior. Caso0: es la pendiente del MACD. Introduciré un filtro para ignorar las pendientes que son demasiado superficiales (movimientos laterales) y utilizaré la pendiente de la EMA en lugar del MACD parece que la EMA da señales más tempranas.

4) Esta semana que viene, me concentraré en el Caso0:: más favorable, que creo que será el MACD cuando haga el análisis.

Feliz pipping.

Pipsqueak2

Se adjuntan los resultados.

Sigo investigando, desarrollando y probando un mejor manejo para hacer un EA Terminator más seguro. De ahí mi falta de presencia hasta que tenga algo fructífero que entregar.

En cuanto a la línea de código referido anteriormente, la mayoría si no todos los corredores que utilizan metatrader tienen un límite de comercio de 100 lotes. Así que si los ajustes Lots= y MaxTrades= son tales que el tamaño del lote excedería los 100 lotes, el EA establecería el máximo permitido a 100 lotes. Ese es el propósito de esa sección de código.

tom

 

Probando Terminator

Hola tmaneval, buen trabajo el que has hecho. Mi cuenta demo ha pasado de unos 8k a 35k en poco menos de un mes. Sin embargo aún no me siento cómodo con Terminator mientras esté configurado con stoploss=0, y trailing stoploss=0.

He estado poniendo manualmente los stops cuando puedo. En la configuración extrenal, ¿no debería usar stops?

Pensaba que el EA encontraba automáticamente los puntos de entrada a partir de los 5 casos de la última página. Después de revisar su código, no veo dónde se calcula "OpenOrdersBasedOn", en su lugar lo veo como una variable. Mi copia de Treminator tenía "5" como esa variable y todas las posiciones abiertas utilizaban Case5: para el algoritmo. Desde entonces lo he cambiado a 0, y 1... etc.

También pienso cambiar la variable Pips a algo así como 200, porque no quiero abrir más de una posición en la misma dirección. Qué os parecen mis resultados y configuraciones?

Pipsqueak2

 

Análisis

Aquí están los resultados de mis pruebas de los distintos casos.

Caso 0: GBP/USD Ganancia/pérdida neta $13,217 GANANCIA

Caso 1: USD/JPY Ganancia/Pérdida Neta $827 GANANCIA

¡Caso 2: EUR/CHF Ganancia/Pérdida neta $147 PÉRDIDA este fue mi algoritmo nfg!

Caso 3: no probado

Caso 4: Ganancia/pérdida neta del USD/CHF $2,271 GANANCIA

Caso 5: EUR/USD Ganancia/Pérdida Neta $8,132 GANANCIA.

Conclusión: Mi algoritmo es nfg. El caso 0 es el ganador por mucho, pero podría ajustarse más para reducir las operaciones negativas.

Esta semana probaré el Caso 0 pero en lugar de utilizar la pendiente de la MAIN del MACD, utilizaré la pendiente de una MA(5) lineal ponderada con filtrado para ignorar las pendientes poco profundas. El LWMA(5) abraza el perfil del precio de cerca y si puedo excluir las operaciones en la región de las pendientes poco profundas, las malas operaciones podrían ser evitadas.

Pipsqueak2

 

¿Esto es real?

Probé el backtesting con un nuevo algoritmo de entrada y aplanó mis 10k en un año. Luego cambié el criterio de compra por el de venta y el de venta por el de compra. Esto no tiene sentido para mí, pero el backtest en GBP/USD es asombroso. He permitido lotes de hasta 100.

Vea los resultados del backtest abajo; es asombroso, ¡ahora si pudiera duplicar lo mismo en una prueba de demostración hacia adelante y luego una prueba en vivo!

Hasta ahora he obtenido esos resultados en el par GBP/USD pero el EURO/USD es bastante bueno también. Aquí está mi algoritmo:

========================================================

int AbrirOrdenesBasadoEnMACD()

{

int myOrderType=3;//Caso 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=1;}

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=2;}

if(myOrderType!=3){EntryStrategy="Caso 0";}

return(miTipoDeOrden);

}

========================================================

¿Alguien puede averiguar qué es lo que falla? Me gustaría saberlo porque parece totalmente ilógico, pero funciona en el backtest.

Pipsqueak2

Archivos adjuntos:
backtest.htm  735 kb
backtest.gif  6 kb
 

Resultados comparativos

Algunos de ustedes pueden estar interesados en mis resultados comparativos. Todos los pares fueron probados bajo condiciones idénticas, pero los resultados de los backtests son muy diferentes. Esto da más credibilidad a mi afirmación de que los EA deben ser específicos para cada par. Creo que es una pérdida de tiempo tratar de producir un EA de talla única.

Si existe tal cosa, entonces que así sea, si no, creo que es mejor desarrollar EA's para pares específicos y TF's, etc. Todas mis pruebas han sido en el H1 TF. Los resultados de abajo no son absolutos, sino relativos. Un respaldo excepcionalmente bueno en un par no tiene sentido para cualquier otro par.

====================================================

TEST DE PARES vs TERM2.02 EA

H1; st=35; tp=35; tr=25;maxlots100;;openpos=5; mm=1;Account=normal;etc,Capital inicial=10.000$;Jan01/06-Dic 15/06

1) GBP/USD 5.940.718 DÓLARES

2) EUR/USD 62,995

3) USD/CAD 39,689

4) EUR/AUD 36.639

5) USD/CHF 36.370

6) EUR/JPY 25,889

7) USD/JPY 24,465

8) GBP/JPY 16,716

9) GBP/CHF 16,548

A) EUR/CHF 9,516

B) EUR/GBP 8,844

C) AUD/USD 7,726

Pipsqueak2

 
pipsqueak2:
Probé el backtesting con un nuevo algoritmo de entrada y me aplastó los 10k en un año. Luego cambié el criterio de compra por el de venta y el de venta por el de compra. Esto no tiene sentido para mí, pero el backtest en GBP/USD es asombroso. He permitido lotes de hasta 100.

¡Vea los resultados de la prueba retrospectiva a continuación; es increíble, ahora si pudiera duplicar lo mismo en una prueba de demostración a futuro y luego una prueba en vivo!

Hasta ahora he obtenido esos resultados en el par GBP/USD pero el EURO/USD es bastante bueno también. Aquí está mi algoritmo:

========================================================

int AbrirOrdenesBasadoEnMACD()

{

int myOrderType=3;//Caso 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=1;}

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=2;}

if(myOrderType!=3){EntryStrategy="Caso 0";}

return(miTipoDeOrden);

}

========================================================

¿Alguien puede averiguar qué es lo que falla? Me gustaría saberlo porque parece totalmente ilógico, pero funciona en el backtest.

Pipsqueak2

¿Puede ser que tengas los tipos de orden invertidos? Prueba con esto:

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Caso 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=2;}//compra

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=1;}//vender

if(myOrderType!=3){EntryStrategy="Caso 0";}

return(miTipoDeOrden);

}

¿O es que el código anterior es el que colapsó la cuenta en el backtest?

tom

 

fibolotsize

hola tom, quiero saber si es posible incluir en el script de terminator

v2 , una progresión de tamaño de lote fibonacci..... gracias

 
markus06160:
hola tom, quiero saber si es posible incluir en el script de terminator v2, una progresión de tamaño de lote fibonacci..... gracias

Hecho. Ver post#1 para T2.03. También añadí otro disparador de compra/venta (OpenOrdersBasedOn=6)

Cambiado algunos ajustes con la esperanza de hacer de este un EA más seguro - pipspread más grande.

No es mucho hasta ahora....pero cada poco ayuda.

tom