Trouvez l'erreur...
Devenez membre de la plus grande
communauté francophone sur le Forex
communauté francophone sur le Forex
Partagez, échangez et apprenez en gagnant des crédits sur votre compte de trading
Robot de trading
-
Furax
-
Furax
xMeter sur Instaforex -
Harrakis
Je suis en train de le tester sur Alpari.
ça a l air qd même prometteur.
il gagne pas bcp c'est clair, mais je pense que ça évolue suivant la balance.
Pour mon test, j'ai démarré avec 200€ risque de 5%. Ce qui donne des lots de 0.10.
En fonction de ça, il incrémente les lots suivant la balance.
En 2 jours, 200€ de gains (pas gagnant à 100% qd même lol). Il est donc passé à 0.20 par paliers.
A ce rythme, ça ferait 1000€ en 10 jours donc lots de 1. Si je me trompe pas, ça deviendrait intéressant au fil du temps.
Corrigez moi si je plante ^^.
Je continu les tests, on verra si ça reste stable (il aime pas les vendredi par contre). La version 2.2 devrait être dispo des demain. La version MT5 est en cours de débuggage.
J'ai arrété les tests sur Robot fou car il l'était vraiment lol.
-
furynick
Je termine la semaine avec une balance à 3036,08 ... ça fait un honnête bénéfice mais il y a eu de grosses pertes.
Je dédie un compte de test à xMeter pour la semaine prochaine.
Par contre j'ai déjà trouvé des bugs (et les ai corrigés) ... j'ai en effet été surpris de voir la version 2.1.2 m'ouvrir des trades le vendredi passé 22h sachant que je l'avais configuré pour arrêter le vendredi à 10h !!!
J'ai publié le robot corrigé sur mon site. -
MisterM
j'aimerai bien le testé je peut avoir le EA :) -
o0TaGa0o
bo boulot furynick , j'ai mit ta version en test -
furynick
-
Harrakis
-
MisterM
xmeter a de meuilleur résultat en M30 ou H1 -
MisterM
ça dort ? -
MisterM
xMeter ma ouvert une seul position depuis maintenant 7 Heure c'est normal ? -
Furax
non :) -
MisterM
A :s Donc problème chez moi faut t'il faire un réglage particulier ? -
Furax
-
Furax
Cet EA donne de bons résultats sur MT5 :
Voici le code :
Code//+------------------------------------------------------------------+ //| 20_200_pips_MQL5_v1.mq5 | //| Copyright 2010, Ñìèðíîâ Ïàâåë | //| http://www.autoforex.ru | //+------------------------------------------------------------------+ #property copyright "Copyright 2010, Ñìèðíîâ Ïàâåë" #property link "http://www.autoforex.ru" #property version "1.00" //Input parameters input int TakeProfit=200; input int StopLoss=2000; input int TradeTime=18; input int t1=7; input int t2=2; input int delta=70; input double lot=0.1; bool cantrade=true; // can we trade? double Ask; // variable for Ask price of the new tick double Bid; // variable for Bid price of the new tick // Long position opening function. int OpenLong(double volume=0.1,int slippage=10,string comment="EUR/USD 20 pips expert (Long)",int magic=0) { MqlTradeRequest my_trade; //declare a structure of MqlTradeRequest type MqlTradeResult my_trade_result; //declare a structure of for trade request result //fill all the NECESSARY fields my_trade.action=TRADE_ACTION_DEAL;//instant execution my_trade.symbol=Symbol();// current symbol of the chart my_trade.volume=NormalizeDouble(volume,1);//lot size my_trade.price=NormalizeDouble(Ask,_Digits);// order price //in our case (TRADE_ACTION_DEAL) it's the current price, so it isn't necessary to specify it my_trade.sl=NormalizeDouble(Ask-StopLoss*_Point,_Digits); //stop loss price my_trade.tp=NormalizeDouble(Ask+TakeProfit*_Point,_Digits); //take profit price my_trade.deviation=slippage; //slippage in pips my_trade.type=ORDER_TYPE_BUY; //order type (buy) my_trade.type_filling=ORDER_FILLING_AON; //order filling type All Or Nothing) my_trade.comment=comment; //order comment my_trade.magic=magic; //order magic ResetLastError(); //reset last error code if(OrderSend(my_trade,my_trade_result))//sending request to open position and checking the result { // if the order has been accepted, print the result Print("Operation result code - ",my_trade_result.retcode); } else { // there are some errors in the order, print them in Journal Print("Operation result code - ",my_trade_result.retcode); Print("Error in request = ",GetLastError()); } return(0);// return from the function } // Short position opening function. it's similar to OpenLong int OpenShort(double volume=0.1,int slippage=10,string comment="EUR/USD 20 pips expert (Short)",int magic=0) { MqlTradeRequest my_trade; MqlTradeResult my_trade_result; my_trade.action=TRADE_ACTION_DEAL; my_trade.symbol=Symbol(); my_trade.volume=NormalizeDouble(volume,1); my_trade.price=NormalizeDouble(Bid,_Digits); my_trade.sl=NormalizeDouble(Bid+StopLoss*_Point,_Digits); my_trade.tp=NormalizeDouble(Bid-TakeProfit*_Point,_Digits); my_trade.deviation=slippage; my_trade.type=ORDER_TYPE_SELL; my_trade.type_filling=ORDER_FILLING_AON; my_trade.comment=comment; my_trade.magic=magic; ResetLastError(); if(OrderSend(my_trade,my_trade_result)) { Print("Operation result code - ",my_trade_result.retcode); } else { Print("Operation result code - ",my_trade_result.retcode); Print("Error in request = ",GetLastError()); } return(0); } int OnInit() { return(0); } void OnDeinit(const int reason){} void OnTick() { double Open[]; //array for opening prices (Open[t1] and Open[t2] will be used) MqlDateTime mqldt; //current time TimeCurrent(mqldt); //update current time int len; //variable for Open[] array size. MqlTick last_tick; //structure for last tick SymbolInfoTick(_Symbol,last_tick); //filling last_tick with recent prices Ask=last_tick.ask; // update bid and ask Bid=last_tick.bid; ArraySetAsSeries(Open,true); //set Open[] array as timeseries //calculate size of the array to include, Open[t1] and Open[t2] if (t1>=t2)len=t1+1; //t1 è t2 - bar indexes, get the largest value else len=t2+1; //and add 1 (for zeroth bar) CopyOpen(_Symbol,PERIOD_H1,0,len,Open);//filling the Open[] array with current values //set cantrade to true, to allow trading of Expert Advisor if(((mqldt.hour)>TradeTime)) cantrade=true; // check for position opening: if(!PositionSelect(_Symbol))// If there isn't any opened positions { if((mqldt.hour==TradeTime) && (cantrade))//time to trade { if(Open[t1]>(Open[t2]+delta*_Point)) //check sell conditions { OpenShort(lot,10,"EUR/USD 20 pips expert (Short)",1234);//open Short position cantrade=false; // reset flag (disable trading until the next day) return; // exit } if((Open[t1]+delta*_Point)<Open[t2])//check buy conditions { OpenLong(lot,10,"EUR/USD 20 pips expert (Long)",1234);//îòêðûâàåì ïîçèöèþ Long cantrade=false; // reset flag (disable trading until the next day) return; // exit } } } return; } //+------------------------------------------------------------------+
-
furynick
J'ai publié sur mon site un robot martingale que j'ai "légèrement" retouché.
***** ATTENTION *****
Le principe de la martingale est de prendre une position supplémentaire dans le même sens qu'une position perdante avec un nombre de lot augmenté. Cette technique peut écrouler un compte en moins de temps qu'il n'en faut pour l'écrire.
Les retouches que j'ai apportées à MartingailExpertStochastic augmentent la rentabilité de près de 100%, à vous de juger avec les rapports de tests que j'ai inclus dans le zip.
http://www.furyweb.fr/forex/ -
gotobe
Salut, j'ai un peu suivi le topic, mais je me suis pas encore penché sur la programmation d'EA.
Par contre je sais programmer en C, je pense pouvoir me familiariser assez vite au langage.
Mais la ce que j'aimerais juste savoir c'est comment on ouvre un EA sur MT4 ?
Quand je fais un clic droit sur expert consultant, il n'y a que "créer" et "online library".
Je doit ouvrir avec MetaEditor et le compiler ? -
furynick
Le MQL4 est très similaire au C (je pense que le MQL5 s'approche du C++).
Pour créer un EA tu vas dans Metaeditor, tu suis l'assistant de création d'un expert consultant (il n'y a que le nom de l'EA qui soit important à cette étape) et ensuite tu colles le code.
Il ne te reste plus qu'à compiler et l'EA devrait apparaitre dans la liste de Metatrader. -
gotobe
Merci pour ta réponse.
Je prend un exemple : FuRyXsafe3
Je créer donc un nouvel EA, je colle le code contenu dans FuRyXsafe3.mq4
Et je compile...
Par contre je vois qu'il y a aussi des header file (les includes), il faut les ajouter quelque part avant de compiler non ? -
gotobe
J'ai juste a mettre le fichier FuRyXsafe3.ex4 dans le dossier expert de mon metatrader et les indicateurs dans le dossier regroupant les indicateurs...?
Faut il ouvrir sur le graphique ou on utilise l'EA, les indicateurs nécessaires à l'EA ?
Exposez cette discussion :