Terminator v2.0 - page 36

 

21 déc. 2006 12:51 Est

Voici l'état des lieux en date du 21 décembre. C'est incroyable. Cela donne l'impression que je sais ce que je fais ; ce n'est pas le cas. Du moins pas entièrement. J'ai trouvé la ligne pour limiter la taille des lots, je vous en parlerai plus tard.

J'aimerais réduire le capital en cours de transaction, c'est-à-dire retirer certains bénéfices, quelqu'un sait-il comment faire cela sur une démo ? Je veux juste réduire intentionnellement le capital utilisé dans le trading.

Pipsqueak2

Dossiers :
dec_21.jpg  135 kb
 

Dec 22 RÉSULTATS TREMINATOR

On dirait que ce fil de discussion est très calme. Voici donc mes résultats et mes commentaires.

1) Terminator n'est pas livré avec des stops, vous devez ajouter des stops réguliers et des trailing stops.

2) Le nombre maximum de lots est fixé à 100 dans le programme, pour moi c'est trop élevé. Vous devez modifier la ligne dans le code "if(maxLots>=100){maxLots=100;}". Remplacez le chiffre 100 par un chiffre inférieur, par exemple 5.

3) Cas0 : semble être le gagnant dans mon test à terme cette semaine et la semaine dernière. Case0 : est la pente MACD. Je vais introduire un filtre pour ignorer les pentes trop faibles (mouvements latéraux) et utiliser la pente de l'EMA au lieu de la MACD, car l'EMA semble donner des signaux plus précoces.

4) La semaine prochaine, je me concentrerai sur le cas0: : le plus favorable qui, je pense, sera MACD lorsque je ferai l'analyse.

Bonne chance.

Pipsqueak2

Résultats ci-joints.

Dossiers :
 
pipsqueak2:
On dirait que ce fil de discussion est très calme. Voici donc mes résultats et mes commentaires.

1) Terminator n'est pas livré avec des stops, vous devez ajouter des stops réguliers et des trailing stops.

2) Le nombre maximum de lots est fixé à 100 dans le programme, ce qui est pour moi trop élevé. Vous devez modifier la ligne dans le code "if(maxLots>=100){maxLots=100;}". Remplacez le chiffre 100 par un chiffre inférieur, par exemple 5.

3) Case0 : semble être le gagnant dans mon test à terme cette semaine et la semaine dernière. Case0 : est la pente MACD. Je vais introduire un filtre pour ignorer les pentes trop faibles (mouvements latéraux) et utiliser la pente de l'EMA au lieu de la MACD, car l'EMA semble donner des signaux plus précoces.

4) La semaine prochaine, je me concentrerai sur le cas0: : le plus favorable qui, je pense, sera MACD lorsque je ferai l'analyse.

Bonne chance.

Pipsqueak2

Résultats ci-joints.

Je suis toujours en train de faire de la recherche, du développement et des tests sur une meilleure poignée pour faire un EA Terminator plus sûr. D'où mon manque de présence jusqu'à ce que j'ai quelque chose de fructueux à livrer.

En ce qui concerne la ligne de code référencée ci-dessus, la plupart, sinon tous les courtiers utilisant Metatrader ont une limite de 100 lots. Donc si les paramètres Lots= et MaxTrades= sont tels que la taille des lots dépasse 100 lots, l'EA fixera le maximum autorisé à 100 lots. C'est l'objectif de cette section du code.

tom

 

Test de Terminator

Bonjour tmaneval, vous avez fait du bon travail. Mon compte de démonstration est passé d'environ 8k à 35k en un peu moins d'un mois. Cependant, je ne suis toujours pas à l'aise avec Terminator alors qu'il est réglé avec stoploss=0, et trailing stoploss=0.

J'ai mis manuellement des stops quand je le pouvais. Dans les paramètres extralégaux, ne devrais-je pas utiliser de stops ?

Je pensais que l'EA trouvait en fait automatiquement des points d'entrée à partir des 5 cas de la dernière page. Après avoir examiné votre code, je ne vois pas où "OpenOrdersBasedOn" est calculé, je le vois plutôt comme une variable. Ma copie de Treminator avait "5" comme variable et toutes les positions ouvertes utilisaient Case5 : pour l'algorithme. Depuis lors, je l'ai changé en 0, et 1... etc.

Je prévois également de changer la variable Pips à quelque chose comme 200, car je ne veux pas ouvrir plus d'une position dans la même direction. Que pensez-vous de mes résultats et de mes paramètres ?

Pipsqueak2

 

Analyse

Voici les résultats de mes tests des différents cas.

Cas 0 : GBP/USD Gain net/perte nette 13 217 $ GAIN

Cas 1 : USD/JPY Gain net/Perte nette 827 $ GAIN

Cas 2 : EUR/CHF Gain net/Perte nette 147 $ PERTE c'était mon algorithme nfg !

Cas 3 : non testé

Cas 4 : Gain net/perte nette USD/CHF 2 271 $ GAIN

Cas 5 : EUR/USD Gain net/Perte nette 8 132 $ GAIN.

Conclusion : Mon algorithme est nfg. Le cas 0 est de loin le gagnant, mais il pourrait être encore amélioré pour réduire les transactions négatives.

Cette semaine, je vais tester le Cas 0 mais au lieu d'utiliser la pente du MACD MAIN, je vais utiliser la pente d'une MA(5) linéaire pondérée avec un filtrage pour ignorer les pentes peu profondes. La LWMA(5) suit de près le profil des prix et si je peux exclure les transactions dans la région des pentes peu profondes, les mauvaises transactions pourraient être évitées.

Pipsqueak2

 

Est-ce réel ?

J'ai essayé le backtesting avec un nouvel algorithme d'entrée et il a aplati mes 10k en un an. Ensuite, je suis passé du critère d'achat à la vente et de la vente à l'achat. Cela n'a aucun sens pour moi mais le backtest sur GBP/USD est stupéfiant. J'ai autorisé des lots allant jusqu'à 100.

Voyez les résultats du backtest ci-dessous ; c'est étonnant, maintenant si je pouvais reproduire la même chose sur un test de démonstration avant puis un test en direct !

Jusqu'à présent, j'ai obtenu ces résultats sur la paire GBP/USD mais l'EURO/USD est également très bon. Voici mon algorithme :

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

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Case 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="Case 0";}

return(myOrderType) ;

}

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

Quelqu'un peut-il comprendre ce qui ne va pas ? J'aimerais le savoir car cela semble totalement illogique, mais fonctionne dans le backtest.

Pipsqueak2

Dossiers :
backtest.htm  735 kb
backtest.gif  6 kb
 

Résultats comparatifs

Certains d'entre vous seront peut-être intéressés par mes résultats comparatifs. Toutes les paires ont été testées dans des conditions identiques, mais les résultats des backtests sont très différents. Cela donne plus de crédibilité à mon affirmation selon laquelle les EA doivent être spécifiques aux paires. Je pense que c'est une perte de temps d'essayer de produire un EA à taille unique.

S'il existe une telle chose, qu'il en soit ainsi, sinon je pense qu'il est préférable de développer des EA pour des paires et des TF spécifiques, etc. Tous mes tests ont été effectués sur le TF H1. Les résultats ci-dessous ne sont pas absolus, mais relatifs. Un résultat exceptionnellement bon sur une paire n'est pas significatif pour une autre paire.

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

TEST DE PAIRES vs TERM2.02 EA

H1 ; st=35 ; tp=35 ; tr=25;maxlots100;;openpos=5 ; mm=1;Account=normal;etc,Capital de départ=10,000$;Jan01/06-Dec 15/06

1) GBP/USD $5,940,718

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:
J'ai essayé le backtesting avec un nouvel algorithme d'entrée et il a aplati mes 10k en un an. Ensuite, je suis passé du critère d'achat à la vente et de la vente à l'achat. Cela n'a aucun sens pour moi mais le backtest sur GBP/USD est stupéfiant. J'ai autorisé des lots allant jusqu'à 100.

Voyez les résultats du backtest ci-dessous ; c'est étonnant, maintenant si je pouvais reproduire la même chose sur un test de démonstration avant puis un test en direct !

Jusqu'à présent, j'ai obtenu ces résultats sur la paire GBP/USD, mais l'EURO/USD est assez bon aussi. Voici mon algorithme :

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

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Case 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="Case 0";}

return(myOrderType) ;

}

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

Quelqu'un peut-il comprendre ce qui ne va pas ? J'aimerais le savoir car cela semble totalement illogique, mais fonctionne dans le backtest.

Pipsqueak2

Il se peut que vos types d'ordre soient inversés ? Essayez ceci :

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Cas 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;}//buy

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;}//sell

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

return(myOrderType) ;

}

Ou est-ce que le code ci-dessus est ce qui a fait planter le compte dans le backtest ?

tom

 

fibolotsize

Bonjour Tom, je voudrais savoir s'il est possible d'inclure dans le script de Terminator V2, une progression de la taille des lots de Fibonacci.

v2 , une progression de la taille du lot de fibonacci..... merci

 
markus06160:
bonjour tom, je voudrais savoir s'il est possible d'inclure dans le script de terminator v2, une progression de la taille des lots en fibonacci..... merci

C'est fait. Voir post#1 pour T2.03. J'ai également ajouté un autre déclencheur d'achat/vente (OpenOrdersBasedOn=6).

J'ai modifié certains paramètres dans l'espoir de rendre cet EA plus sûr - une plus grande fourchette de points.

Ce n'est pas beaucoup jusqu'à présent....mais chaque petit bout aide.

tom