Creation et tests d'EA
Modérateur : Administrateurs
Creation et tests d'EA
Bonjour,
Faisant pas mal de scripts à mon travail et ayant donc quelques connaissances en programmation, j'ai commencé à me pencher sur la création d'EA.
C'est pas très compliqué et je m'en suis crée un ce matin
Il est vraiment simpliste (- de 100 lignes) et utilise juste les signaux de stochastiques mais n'a pas l'air buggé et maintenant je voudrais le tester
En effet, je me base sur les graphes H4 que je considère comme plus fiables mais au rythme où vont les choses ça risque d'être très long avant d'avoir une idée...
Or j'ai lu un peu partout des histoires de "backtest", ce que je comprends par tester sur un historique? Est ce que vous pouvez m'expliquer comment on fait ça?
Je pense m'intéresser de plus en plus au trade par EA car en manuel c'est vraiment pénible de tout le temps devoir jeter un coup d'oeil etc...et comme à mon travail j'ai bien envie de laisser le PC faire tout le sale boulot...
Merci d'avance
Faisant pas mal de scripts à mon travail et ayant donc quelques connaissances en programmation, j'ai commencé à me pencher sur la création d'EA.
C'est pas très compliqué et je m'en suis crée un ce matin
Il est vraiment simpliste (- de 100 lignes) et utilise juste les signaux de stochastiques mais n'a pas l'air buggé et maintenant je voudrais le tester
En effet, je me base sur les graphes H4 que je considère comme plus fiables mais au rythme où vont les choses ça risque d'être très long avant d'avoir une idée...
Or j'ai lu un peu partout des histoires de "backtest", ce que je comprends par tester sur un historique? Est ce que vous pouvez m'expliquer comment on fait ça?
Je pense m'intéresser de plus en plus au trade par EA car en manuel c'est vraiment pénible de tout le temps devoir jeter un coup d'oeil etc...et comme à mon travail j'ai bien envie de laisser le PC faire tout le sale boulot...
Merci d'avance
- Fabien LABROUSSE
- Administrateur
- Messages : 17035
- Inscription : 17 mars 2008, 19:41
- Localisation : Paris, France
Re: Creation et tests d'EA
Je vais créer une fiche de formation concernant la manière de réaliser un backtest car je pense que ça peut intéresser pas mal d'utilisateurs dans ton cas.
Je te poste le lien dès que c'est fini.
Tu as programmés toi même ton expert advisor ou tu es passé par expert advisor builder?
Tu peux le poster ici ou tu préfère le garder pour toi?
Je te poste le lien dès que c'est fini.
Tu as programmés toi même ton expert advisor ou tu es passé par expert advisor builder?
Tu peux le poster ici ou tu préfère le garder pour toi?
La Structure (par VideoBourse) : Formation sur mesure et évolutive pour optimiser compréhension et résultats en trading
Informations et inscriptions : https://forms.gle/A2vnZduSwv2wPFSS7
Contact et échanges avec la communauté : Discord, mail, téléphone, LinkedIn...
Marchés en aparté : Témoignages de traders, investisseurs, analystes et économistes sur les marchés financiers
Re: Creation et tests d'EA
Ok !
Je l'ai crée avec l'éditeur, ça ressemble beaucoup à d'autres languages de programmation, j'ai juste eu quelques problèmes avec des fonctions "rebelles"
Mais il est très basique, histoire d'apprendre le language et pourquoi pas pour s'en servir comme base pour un vrai EA (car j'ai même pas cherché à optimiser un tant soit peu)
D'ailleurs pour pouvoir optimiser faudrait que je puisse faire un petit backtest et voir où ça clochera et pourquoi (même si j'en ai déjà un peu l'idée)
Voila le contenu :
Je posterais pas forcement les améliorations mais j'en parlerais
Je l'ai crée avec l'éditeur, ça ressemble beaucoup à d'autres languages de programmation, j'ai juste eu quelques problèmes avec des fonctions "rebelles"
Mais il est très basique, histoire d'apprendre le language et pourquoi pas pour s'en servir comme base pour un vrai EA (car j'ai même pas cherché à optimiser un tant soit peu)
D'ailleurs pour pouvoir optimiser faudrait que je puisse faire un petit backtest et voir où ça clochera et pourquoi (même si j'en ai déjà un peu l'idée)
Voila le contenu :
Code : Tout sélectionner
//+------------------------------------------------------------------+
//| DhaoS Stochastiques EA v0.1 |
//| Copyleft 2010 DhaoS - sylvaintro@gmail.com |
//| |
//| 09/03/10 - v0.1 : creation de l'EA |
//| |
//| | |
//+------------------------------------------------------------------+
//--------------------------------- Initialisations ----------------------------------
//Diverses
#define STO_barsToAnalyse 1
string symb="EURUSD";
int ticket,type;
double lots=0.1;
int spread=3;
// Pour STO
double mainLine, prevMainLine, signalLine, prevSignalLine;
//--------------------------------------------------------------------------------------
// Fonction qui parcoure les ordres et vérifie s'il y en a un qui a moins de 4H
// - si vrai, elle initialise la variable type avec son type (0 BUY, 1 SELL), la variable ticket avec son ticket, la fonction va renvoyer 0.
// - si faux, les variables type et ticket seront vides, la fonction va renvoyer 1.
int checkOrdersTime(){
type=NULL;
for(int i=0; i<=OrdersTotal(); i++){
if(OrderSelect(i,SELECT_BY_POS)==true){
if(OrderSymbol()==symb){ type=OrderType(); ticket=OrderTicket(); bool rienfaire=true; }
}
}
if(rienfaire==true){return (0);}
else return (1);
}
int start(){
// On analyse que les 2 précédentes barres de STO apr défaut
for(int a=1;a<=STO_barsToAnalyse;a++){
mainLine=iStochastic(symb,PERIOD_H4,14,4,3,MODE_SMA,0,MODE_MAIN,a);
prevMainLine=iStochastic(symb,PERIOD_H4,14,4,3,MODE_SMA,0,MODE_MAIN,a+1);
signalLine=iStochastic(symb,PERIOD_H4,14,4,3,MODE_SMA,0,MODE_SIGNAL,a);
prevSignalLine=iStochastic(symb,PERIOD_H4,14,4,3,MODE_SMA,0,MODE_SIGNAL,a+1);
// Si on a un signal d'achat
if(prevMainLine<prevSignalLine && mainLine>signalLine){
// S'il y a des ordres de - de 4H :
if (checkOrdersTime()==0){
// Si c'est un ordre de vente alors je le cloture et j'achète (et donc si c'est un ordre d'achat, je ne fais rien)
if (type==1){ Alert("Cloture SELL puis BUY",TimeToStr(Time[a])); OrderClose(ticket,lots,Ask,spread+2); OrderSend(symb,OP_BUY,lots,Ask,spread,0,0); }
}
// S'il n'y a pas d'ordre de - de 4H, alors j'achète
else { Alert("BUY",TimeToStr(Time[a])); OrderSend(symb,OP_BUY,lots,Ask,spread,0,0); }
}
// Si on a un signal de vente
if(prevMainLine>prevSignalLine && mainLine<signalLine){
// S'il y a des ordres de - de 4H :
if (checkOrdersTime()==0){
// Si c'est un ordre d'achat alors je le cloture et je vends (et donc si c'est un ordre de vente, je ne fais rien)
if (type==0){ Alert("Cloture BUY puis SELL)",TimeToStr(Time[a])); OrderClose(ticket,lots,Bid,spread+2); OrderSend(symb,OP_SELL,lots,Bid,spread,0,0); }
}
// S'il n'y a pas d'ordre de - de 4H, alors je vends
else { Alert("SELL",TimeToStr(Time[a])); OrderSend(symb,OP_SELL,lots,Bid,spread,0,0);}
}
}
return(0);
}
Je posterais pas forcement les améliorations mais j'en parlerais
Re: Creation et tests d'EA
J'ai trouvé comment faire des backtests et surtout j'ai mis deux jours à me rendre compte que je testais avec du mauvais historique
Bref j'ai mis à jour mes bases de devises mais j'ai laissé tombé l'idée d'un EA stochastique pour le moment. Je suis en train de me baser sur le CCI qui est mon indicateur préféré actuellement
Bref j'ai mis à jour mes bases de devises mais j'ai laissé tombé l'idée d'un EA stochastique pour le moment. Je suis en train de me baser sur le CCI qui est mon indicateur préféré actuellement
Re: Creation et tests d'EA
Allez bon, heu...triple post
Suite à toute une série de backtests éprouvante, mais plutôt concluante :
je vais tester, avec le même paramétrage sur EURUSD et USDCHF, un de mes EA dès lundi en démo
En effet d'après mes tests, il serait robuste sur les deux paires à la fois avec le même paramétrage
Ce qui est très génant c'est que ça risque de prendre un moment avant de pouvoir faire des conclusions :
il ne prends qu'un à trois trades par mois
(c'est pour ça que je veux le tester sur plusieurs devises d'ailleurs, voire même d'autres paramétrages)
Je vais aussi le faire suivre sur MyFxBook
Suite à toute une série de backtests éprouvante, mais plutôt concluante :
je vais tester, avec le même paramétrage sur EURUSD et USDCHF, un de mes EA dès lundi en démo
En effet d'après mes tests, il serait robuste sur les deux paires à la fois avec le même paramétrage
Ce qui est très génant c'est que ça risque de prendre un moment avant de pouvoir faire des conclusions :
il ne prends qu'un à trois trades par mois
(c'est pour ça que je veux le tester sur plusieurs devises d'ailleurs, voire même d'autres paramétrages)
Je vais aussi le faire suivre sur MyFxBook
- nvitale
- Professionnel certifié
- Messages : 260
- Inscription : 21 mai 2009, 20:58
- Localisation : London
Re: Creation et tests d'EA
Pour ceux que ça intéresse, j'ai fait il y a quelques mois un article sur lesbacktests et optimisations sous Metatrader.
Trading Automatique, le portail francophone du trading systématique et automatique.
Directeur d'Alpha Novae
Directeur d'Alpha Novae
- Fabien LABROUSSE
- Administrateur
- Messages : 17035
- Inscription : 17 mars 2008, 19:41
- Localisation : Paris, France
Re: Creation et tests d'EA
Article intéressant sur un sujet manquant d'informations claires, merci nvitale.
Dhaos ça avance ton projet d'expert ou tu stagne un peu depuis ces premiers backtests?
Dhaos ça avance ton projet d'expert ou tu stagne un peu depuis ces premiers backtests?
La Structure (par VideoBourse) : Formation sur mesure et évolutive pour optimiser compréhension et résultats en trading
Informations et inscriptions : https://forms.gle/A2vnZduSwv2wPFSS7
Contact et échanges avec la communauté : Discord, mail, téléphone, LinkedIn...
Marchés en aparté : Témoignages de traders, investisseurs, analystes et économistes sur les marchés financiers