Accueil Trading Systématique Publication

Vérifiez les Dernières Transactions Closes sur MetaTrader 5

Pièce jointe
49374.zip (825 bytes, Télécharger 0 fois)

Salut les traders ! Aujourd'hui, je vais vous montrer comment obtenir les données de votre dernière transaction fermée sans avoir à utiliser de boucles dans votre code. C'est super pratique pour garder un œil sur vos performances !

Comment procéder ?

  • Créez une variable pour définir l'heure de début de la journée. (Ce n'est pas une obligation, mais c'est un bon point de départ.)
  • Créez d'autres variables pour afficher des résultats sur le graphique et les utiliser dans d'autres blocs de code. (Encore une fois, ce n'est pas nécessaire, mais c'est utile.)
  • En utilisant ce code dans la fonction OnTick();, vous obtiendrez les résultats à chaque tick. Vous pouvez également le configurer pour qu'il s'exécute à chaque barre.

Le Code

// variables
string DayStart = "00:00"; // Heure de Début de la Journée
double LastClosed_Profit; // Profit de la Dernière Transaction Fermée
string TradeSymbol, TradeType;

// Initialisation de l'Expert --------------------
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }

// Désinitialisation de l'Expert -------------------
void OnDeinit(const int reason)
  {
  }

// Fonction OnTick --------------------------
void OnTick()
  {
// Vérification de la dernière transaction fermée.
   CheckLastClosed();
  }
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
void CheckLastClosed()
  {
   datetime HistoryTime = StringToTime(DayStart);

// Historique de "Début de la Journée à l'heure actuelle"
   if(HistorySelect(HistoryTime,TimeCurrent()))
     {
      int Total = HistoryDealsTotal();

      // Obtenez le numéro de ticket de la dernière transaction et sélectionnez-le pour un traitement ultérieur.
      ulong Ticket = HistoryDealGetTicket(Total -1);

      // Obtenez les informations nécessaires.
      LastClosed_Profit = NormalizeDouble(HistoryDealGetDouble(Ticket,DEAL_PROFIT),2);
      TradeSymbol = HistoryOrderGetString(Ticket,ORDER_SYMBOL);

      // Identifier une transaction de vente.
      if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_BUY)
        {
         TradeType = "Vente";
        }

      // Identifier une transaction d'achat
      if(HistoryDealGetInteger(Ticket,DEAL_TYPE) == DEAL_TYPE_SELL)
        {
         TradeType = "Achat";
        }

      // Affichage sur le graphique.
      Comment("\n","Total des Transactions - :  ", Total,
              "\n","Numéro du Dernier Ticket - :  ", Ticket,
              "\n", "Profit de la Dernière Transaction -:  ", LastClosed_Profit,
              "\n", "La Dernière Transaction était -:  ", TradeType);

     }
  }
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

N'oubliez pas, vous pouvez obtenir l'ensemble de l'historique des transactions (depuis le tout début de votre compte) en utilisant la fonction HistorySelect(); comme ceci :

// Obtenez tout l'historique
HistorySelect(0,TimeCurrent());


Articles connexes

Commentaire (0)