Trading Systématique

Optimisez vos trades après le break-even avec cet EA sur MetaTrader 4
MetaTrader4
Optimisez vos trades après le break-even avec cet EA sur MetaTrader 4

Salut les traders ! Aujourd'hui, je vais vous parler d'un petit bijou d'expert advisor (EA) qui va vous aider à gérer vos positions après avoir atteint le break-even. Accrochez-vous, c'est parti ! La fonction de comptage des ordres Le chef-d'œuvre de cet EA réside dans sa fonction de comptage des ordres : int OrdersCounter() {  int counter=0;  //---  for(int i=OrdersTotal()-1; i>=0; i--)      if(OrderSelect(i,SELECT_BY_POS))        if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) {          // Si l'ordre a été ouvert par cet EA          //--- Vérifie si le break-even a eu lieu          double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();          if(!XBreakeven) {            counter++; // Compte la position          }      }  return counter;} Nous ne comptons que les ordres qui n'ont PAS de stop-loss au-dessus ou égal à leur prix d'ouverture pour les achats, et en dessous pour les ventes. En gros, on compte tous les ordres qui n'ont pas atteint le break-even ou dont le trailing stop n'a pas protégé le prix d'ouverture. double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();          if(!XBreakeven) {          // Si le break-even n'a pas eu lieu Grâce à cela, nous créons un compteur qui renvoie une valeur que nous utiliserons pour limiter notre position maximale, que nous avons fixé à 1 ordre à la fois. if(OrdersCounter()<MaximumOrders) Donc, dès qu'un break-even a lieu, cette fonction ne le comptera pas. Dans notre exemple, avec une seule position, elle retournera zéro et boum, on ouvre une autre vente et le processus continue ! Ce serait impossible sans ma fonction de break-even : void BreakEvenFunction() {  //---  for(int i=OrdersTotal()-1; i>=0; i--) {      if(OrderSelect(i,SELECT_BY_POS))        if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) {          // Pour les achats, si le Bid est au-dessus du prix d'ouverture + pips de break-even          double xHybrid = OrderType()==OP_BUY ? (Bid>OrderOpenPrice()+BreakevenPips*_Point && OrderStopLoss()<OrderOpenPrice()) : (Ask<OrderOpenPrice()-BreakevenPips*_Point && OrderStopLoss()>OrderOpenPrice());          /* Pour les achats, seulement si le StopLoss est égal ou supérieur au prix d'ouverture, vice versa pour les ventes */          if(xHybrid) {            bool modfy = OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,clrNONE);          }      }  } Alors, prêt à essayer ?

2021.07.13
Stratégie de Breakout avec Moyennes Mobiles sur MetaTrader 4
MetaTrader4
Stratégie de Breakout avec Moyennes Mobiles sur MetaTrader 4

Dans le monde du trading, les moyennes mobiles peuvent devenir vos meilleures alliées, surtout lorsqu'on les utilise pour détecter des breakouts. Dans cet article, je vais vous expliquer comment paramétrer une stratégie de breakout basée sur les moyennes mobiles sur MetaTrader 4. Explication des paramètres d'entrée Nous allons aborder les paramètres en considérant un trade d'achat. Si vous souhaitez vendre, il vous suffira d'inverser les conditions. inp1 : La moyenne mobile exponentielle (EMA) de 20 périodes doit être supérieure à celle de 30 périodes. inp2 : La EMA de 30 périodes doit être supérieure à celle de 50 périodes. inp3 : L'ouverture de la bougie de breakout doit être au-dessus de la EMA de 30 périodes. inp4 : Réglages du breakout : Nombre de bougies tranquilles : C'est le nombre de bougies précédentes pour lesquelles le prix est supérieur à la bougie de breakout. Plage des bougies tranquilles : Cela correspond à la plage minimale en pips des bougies tranquilles. Force du breakout : Réglez à 1,1, ce qui signifie que le breakout doit être au moins 10 % au-dessus des plus hauts de la plage des bougies tranquilles. Valeur d'étape pour l'optimisation : Commencez à 1 et augmentez par paliers de 0,1 jusqu'à 5. inp5 : Longueur de la mèche en pourcentage de la taille totale de la bougie. Optimisation : Ajustez de 0 à 100. inp6 : Le bas de la bougie de breakout doit être égal ou inférieur à la EMA de 20 périodes. Volume et stop loss : Indiquez votre volume de lots et votre objectif de stop loss en pips. Visualisation   

2021.07.03
Comprendre la Divergence et le RSI : Un Expert pour MetaTrader 4
MetaTrader4
Comprendre la Divergence et le RSI : Un Expert pour MetaTrader 4

Introduction à la Divergence et au RSI Salut les traders ! Aujourd'hui, parlons de la divergence, un concept essentiel pour améliorer vos stratégies de trading sur MetaTrader 4. Plus précisément, nous allons explorer comment utiliser l'indice de force relative (RSI) pour identifier des opportunités d'achat et de vente. Divergence Haussière et Conditions d'Achat Pour détecter une divergence haussière, il est crucial que le RSI soit inférieur à 30. Voici les réglages à considérer : Paramètre 1 : RSI en dessous de 30 pour une divergence d'achat. Paramètre 2 : Réglages de divergence pour les positions d'achat. Paramètre 3 : Nombre de lots et niveau de stop-loss, ainsi qu'un objectif en pips pour les trades longs. Divergence Baissière et Conditions de Vente À l'inverse, pour une divergence baissière, assurez-vous que le RSI dépasse les 70. Voici ce que vous devez configurer : Paramètre 4 : RSI au-dessus de 70 pour une divergence de vente. Paramètre 5 : Réglages de divergence pour les positions de vente. Paramètre 6 : Nombre de lots et niveau de stop-loss, ainsi qu'un objectif en pips pour les trades courts. Utilisation de la Divergence MACD Un point intéressant à noter est que la divergence MACD ouvre uniquement des trades dans des conditions de survente ou de surachat du RSI. Cela permet d’optimiser vos entrées et de maximiser vos chances de succès. Conclusion En intégrant la divergence et le RSI dans votre stratégie de trading, vous pourrez mieux anticiper les mouvements du marché. N'oubliez pas d'ajuster vos paramètres selon vos préférences et votre style de trading. Bon trading à tous !

2021.06.26
Cadre Validate Me : Créez des Robots de Trading Performants sur MetaTrader 4
MetaTrader4
Cadre Validate Me : Créez des Robots de Trading Performants sur MetaTrader 4

Cadre Validate Me Salut les traders ! Aujourd'hui, je vais vous partager ma vision sur la manière de coder un robot de trading qui utilise des ordres d'achat et de vente en fonction de la validation du marché. Ce cadre aborde les différentes vérifications qu'un robot de trading doit réussir avant d'être mis sur le marché. Pour des fins éducatives. Exemple de code pour un ordre d'achat ask=MarketInfo(_Symbol,MODE_ASK);          bid=MarketInfo(_Symbol,MODE_BID);          sl=(OrderStopPips==0)?0.0:bid-ExtOrderStop;          if(sl!=0.0 && ExtOrderStop<StopLevel)             sl=bid-StopLevel;          tp=(OrderTakePips==0)?0.0:ask+ExtOrderTake;          if(tp!=0.0 && ExtOrderTake<StopLevel)             tp=ask+StopLevel;          GetLot=CheckVolumeValue(Lots);          if(!CheckStopLoss_Takeprofit(OP_BUY,ExtOrderStop,ExtOrderTake))             return;          if(CheckMoneyForTrade(GetLot,OP_BUY))             order=OrderSend(_Symbol,OP_BUY,GetLot,ask,10,sl,tp,"FrameWork",678,0,Blue); Paramètres du cadre

2021.06.22
Optimisez votre Trading avec le Dual StopLoss sur MetaTrader 4
MetaTrader4
Optimisez votre Trading avec le Dual StopLoss sur MetaTrader 4

Lorsque l'on ouvre une nouvelle position, la première chose à considérer est souvent la gestion de son capital. Les traders utilisent régulièrement une certaine marge de perte pour contrôler leur risque et gérer leurs fonds.Beaucoup de traders pensent qu'en définissant un Stop Loss (ou même un Take Profit) pour une position et en saisissant ce prix dans la fenêtre de modification des positions, le serveur du courtier est obligé de clôturer leur position dès que le prix atteint cette limite. Pourtant, ce n'est pas tout à fait exact.Cela dépend en réalité du type de compte que vous avez chez votre courtier. Il est bon de savoir que pour les comptes ECN, lorsque vous indiquez un prix au courtier en tant que Stop Loss ou Take Profit, celui-ci clôture votre position au premier prix disponible après que le prix ait atteint cette limite. Si cela ne vous convient pas, prenez un moment pour examiner votre historique de trading plus attentivement.Vous constaterez que certaines de vos ordres sont clôturés à un prix différent de celui que vous aviez fixé, ce qui entraîne des pertes plus importantes ou même des gains inattendus. Cela est dû au phénomène de SLIPPAGE.De plus, certains traders estiment que la limite de perte ne devrait pas être indiquée de manière précise auprès du courtier. C'est de là qu'est né le HIDDEN Stop Loss, un robot conçu précisément dans ce but. Désormais, vous pouvez avoir à la fois un HIDDEN et un REGULAR Stop Loss ensemble.Vous pouvez facilement définir un REGULAR Stop Loss pour vos positions comme d'habitude. Peu importe que vous utilisiez des robots ou que vous tradiez manuellement.Il suffit d’exécuter ce robot sur un nouveau graphique séparé (quelconque) pour gérer toutes vos positions. La valeur d'entrée détermine la distance entre le HIDDEN et le REGULAR Stop Loss. Notez que cette valeur est définie en points, et non en pips.

2021.04.23
Optimisez Vos Trades avec le Scalper Assistant v1.0 pour MetaTrader 4
MetaTrader4
Optimisez Vos Trades avec le Scalper Assistant v1.0 pour MetaTrader 4

Le scalping : une stratégie prisée par les tradersLe scalping est sans conteste l'une des stratégies les plus populaires dans le monde du trading. La plupart des traders ont au moins essayé cette méthode une fois dans leur carrière. En effet, un scalpeur effectue souvent plus de 10 transactions par jour, ce qui peut rendre la gestion des Stop Loss et Take Profit pour chaque trade assez ennuyeuse.Si votre stratégie implique de trader plusieurs instruments financiers et d'atteindre rapidement le Break Even, gérer toutes ces commandes peut devenir fastidieux et propice à des erreurs. Par ailleurs, si vous tradez sur des unités de temps plus courtes et sur plusieurs paires de devises, un mouvement de prix rapide peut se produire juste au moment où vous vous éloignez de votre bureau pour une tasse de thé, et vous risquez de rater l'occasion d'atteindre le Break Even ! La possibilité qu'un retour rapide des prix transforme un trade gagnant en perte est toujours présente dans l'esprit d'un trader.Comment le Scalper Assistant facilite votre tradingAvec cet expert, vous pouvez facilement déterminer les montants de Stop Loss et Take Profit. Dès que vous ouvrez un trade, l'expert configure automatiquement les valeurs initiales. Si le prix évolue suffisamment dans la direction souhaitée, votre trade devient alors sans risque ou atteint le Break Even.Toutes les valeurs d'entrée sont exprimées en POINT (et non en PIP).extern double WhenToMoveToBE; Vous définissez combien de points le prix doit s'éloigner du point d'entrée pour que l'EA ajuste la commande au Break Even.extern double BEAmount; Vous pouvez définir la distance du Stop Loss par rapport au point d'entrée.

2021.04.23
Optimisez vos trades avec l'Averaging By Signal pour MetaTrader 4
MetaTrader4
Optimisez vos trades avec l'Averaging By Signal pour MetaTrader 4

Introduction à l'Averaging By Signal Salut à tous les traders ! Aujourd'hui, je vais vous parler d'un expert pour MetaTrader 4 qui pourrait vraiment vous intéresser : l'Averaging By Signal. Cet EA utilise le croisement des moyennes mobiles comme signal d'entrée. Il a été conçu dans un but pédagogique pour vous aider à maîtriser le code MQL4. Gestion des ordres Chaque ordre ouvert utilise un numéro magique différent en fonction de chaque paire de devises. C'est super pratique, car cela vous permet de suivre la gestion de vos ordres de façon efficace. Fonctionnalités clés de l'EA ManageOrders() : Cette fonction gère l'ouverture de nouveaux ordres. Elle permet de faire de l'averaging selon le signal, ou simplement de se baser sur la distance minimale entre les couches. setTPSLMarti() : Grâce à cette fonction, vous pouvez définir un Take Profit (TP) pour une position unique ou plusieurs ordres au même prix de TP. setTrailingStop() : Cette fonction est utilisée pour définir un trailing stop sur la position de l'ordre initial. C'est un excellent moyen de sécuriser vos gains tout en laissant la possibilité à votre trade de continuer à générer des profits. Rejoignez notre communauté Pour plus d'informations et pour partager vos expériences, n'hésitez pas à rejoindre notre groupe t.me/codeMQL. C'est un excellent endroit pour échanger des idées et progresser ensemble dans le trading.

2021.04.21
Planificateur Automatique : Optimisez votre trading sur MetaTrader 4
MetaTrader4
Planificateur Automatique : Optimisez votre trading sur MetaTrader 4

Bonjour à tous les traders ! Aujourd'hui, je vais vous parler d'un outil incontournable pour tous ceux qui utilisent MetaTrader 4 et 5 : le Planificateur Automatique, aussi connu sous le nom d'expert advisor. Cet outil proposé par EarnForex.com va transformer votre manière de trader. Le Planificateur Automatique vous permet de gérer les périodes durant lesquelles le trading automatique est activé ou désactivé sur votre plateforme MetaTrader. Cela signifie que vous avez le contrôle total sur vos opérations, même lorsque vous êtes loin de votre écran ! Vous pouvez définir des plages horaires spécifiques pour chaque jour de la semaine. Une fois ces périodes configurées, le Planificateur désactivera automatiquement le trading en dehors de ces plages. Pratique, non ? En plus, cet expert advisor peut également tenter de clôturer toutes les transactions en cours (positions ouvertes et ordres en attente) avant de mettre fin au trading automatique. Cela vous évite bien des tracas et vous permet de trader en toute sérénité. Pourquoi utiliser le Planificateur Automatique ? Contrôle total : Gérez les horaires de trading selon votre emploi du temps. Sérénité : Évitez les mauvaises surprises en dehors de vos heures de trading. Simplicité : Configuration facile et rapide directement sur MetaTrader. En résumé, le Planificateur Automatique est un atout majeur pour optimiser votre stratégie de trading. N'attendez plus pour l'essayer et améliorer votre expérience sur MetaTrader !

2021.04.01
Fermez vos Ordres par Objectif ou Limite de Perte - Un Outil Indispensable pour MetaTrader 4
MetaTrader4
Fermez vos Ordres par Objectif ou Limite de Perte - Un Outil Indispensable pour MetaTrader 4

Nous utilisons cet Expert Advisor (EA) comme un outil de trading efficace. Voici les 3 paramètres à définir : Objectif de Profit Limite de Perte Numéro Magique extern    double         inTargetProfitMoney     = 10;       //Objectif de Profit (€) extern    double         inCutLossMoney          = 0.0      //Limite de Perte (€) extern    int            inMagicNumber           = 0        //Numéro Magique Lorsque cet EA est exécuté, il appellera d'abord la fonction OnInit(). C'est ici que nous vérifions les paramètres et l'initialisation des variables. int OnInit()   { //---    if(inTargetProfitMoney <= 0)      {       Alert("Entrée invalide");       return(INIT_PARAMETERS_INCORRECT);      }    inCutLossMoney = MathAbs(inCutLossMoney) * -1; //---    return(INIT_SUCCEEDED);   } À chaque mouvement de prix (tick), la fonction OnTick() sera appelée. void OnTick()   { //---    double   tFloating = 0.0;    int tOrder  = OrdersTotal();    for(int i=tOrder-1; i>=0; i--)      {       if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))         {          if(OrderMagicNumber() == inMagicNumber)            {             tFloating   += OrderProfit()+OrderCommission() + OrderSwap();            }         }      }    if(tFloating >= inTargetProfitMoney || (tFloating <= inCutLossMoney && inCutLossMoney < 0))      {       fCloseAllOrders();      }   } Dans la fonction OnTick(), nous continuons à calculer le profit ou la perte totale. Ensuite, nous fermerons tous les ordres qui atteignent l'objectif ou la limite de perte maximale. void fCloseAllOrders()   {    double   priceClose = 0.0;    int tOrders = OrdersTotal();    for(int i=tOrders-1; i>=0; i--)      {       if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))         {          if(OrderMagicNumber() == inMagicNumber && (OrderType() == OP_BUY || OrderType() == OP_SELL))            {             priceClose = (OrderType()==OP_BUY)?MarketInfo(OrderSymbol(), MODE_BID):MarketInfo(OrderSymbol(), MODE_ASK);             if(!OrderClose(OrderTicket(), OrderLots(), priceClose, slippage, clrGold))               {               Print("AVERTISSEMENT : Échec de la fermeture");               }            }         }      }   } Pour plus d'informations détaillées et de partage de code mql4, rejoignez notre groupe Telegram t.me/codeMQL

2021.03.31
Optimisez vos trades avec le Trailing Stop sur MetaTrader 4
MetaTrader4
Optimisez vos trades avec le Trailing Stop sur MetaTrader 4

Le trailing stop est un outil essentiel pour sécuriser nos trades. Il permet de déplacer le stop loss dans la zone de profit, garantissant ainsi que nous protégeons nos gains de manière automatique. Commençons par coder les paramètres d'entrée pour notre trailing stop. input    bool     isTrailingStop = true;  // Trailing Stop input    int      trailingStart  = 15;    // Début du Trailing (pips) input    int      trailingStep   = 5     // Pas du Trailing (pips) input    int      MagicNumber = 0;        // Numéro Magique Variable globale // Variable Globale double   myPoint    = 0.0; Lorsque nous exécutons cet Expert Advisor, la fonction OnInit() sera exécutée pour la première fois. Dans cette fonction, nous allons valider et initialiser les variables d'entrée. int OnInit()   {       if (isTrailingStop && trailingStart <= 0){       Alert ("Paramètres incorrects");       return(INIT_PARAMETERS_INCORRECT);    }       myPoint     = GetPipPoint(Symbol());       return(INIT_SUCCEEDED);   } Chaque fois qu'un mouvement de prix (tick) se produit sur le graphique où cet EA est associé, la fonction OnTick() sera exécutée. À l'intérieur de cette fonction, nous allons appeler la fonction setTrailingStop(). void OnTick()   { //---    setTrailingStop(MagicNumber);      } Fonction setTrailingStop() void setTrailingStop(int magicNumber=0){    if (isTrailingStop==false) return;       int      tOrder = 0;    string   pair = "";    double   sl = 0.0, tp = 0.0;       pair = Symbol();       tOrder = OrdersTotal();    for (int i=tOrder-1; i>=0; i--){       bool hrsSelect = OrderSelect(i, SELECT_BY_POS, MODE_TRADES);       if (OrderMagicNumber() == magicNumber && StringFind(OrderSymbol(), pair, 0) == 0 ){          if (OrderType() == OP_BUY){             if ( (Bid - (trailingStart * myPoint)) >= OrderOpenPrice()                   && (Bid - ((trailingStart+trailingStep) * myPoint) >= OrderStopLoss() )                 ){                sl = NormalizeDouble(Bid - (trailingStart * myPoint), Digits());                if (!OrderModify(OrderTicket(), OrderOpenPrice(), sl, OrderTakeProfit(), 0, clrBlue)){                   Print ("#", OrderTicket(), " échec de la mise à jour du sl");                }             }          }                   if (OrderType() == OP_SELL){             if ( (Ask + (trailingStart * myPoint)) <= OrderOpenPrice()                   && ( (Ask + ((trailingStart+trailingStep) * myPoint) <= OrderStopLoss() ) || OrderStopLoss() == 0.0)                )             {                sl = NormalizeDouble(Ask + (trailingStart * myPoint), Digits() );                if (!OrderModify(OrderTicket(), OrderOpenPrice(), sl, OrderTakeProfit(), 0, clrBlue)){                   Print ("#", OrderTicket(), " échec de la mise à jour du sl");                }             }       } // fin if magicNumber    }// fin for } Une autre fonction standard requise est GetPipPoint() // Fonction GetPipPoint double GetPipPoint(string pair) {    double point= 0.0;    int digits = (int) MarketInfo(pair, MODE_DIGITS);    if(digits == 2 || digits== 3) point= 0.01;    else if(digits== 4 || digits== 5) point= 0.0001;    return(point); } Si vous avez des questions, n'hésitez pas à les poser dans les commentaires ou à rejoindre notre groupe de partage (t.me/codeMQL). N'oubliez pas de jeter un œil à notre application SignalForex pour vous aider à trader de manière plus rentable. Vous pouvez nous soutenir en téléchargeant l'application SignalForex sur Google Play.

2021.03.30
Premier Précédent 1 2 3 4 5 6 7 8 9 10 11 Suivant Dernier