Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Telegram !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Experts

Breakout Strategy with Prop Firm Helper Functions - expert pour MetaTrader 5

Vues:
149
Note:
(14)
Publié:
MQL5 Freelance Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

Bonjour à tous,

Il s'agit d'une mise à jour de la"Stratégie de rupture simple mais efficace". Dans ce code, j'ai ajouté quelques fonctions d'aide pour les défis des sociétés de conseil.

En général, pour réussir un challenge prop firm, vous devez satisfaire trois critères principaux :

  • Profit cible
  • Ne pas dépasser la perte journalière maximale
  • Ne pas dépasser la perte maximale

Dans ce code, j'ai inclus deux fonctions qui vérifient "Target profit" et "Almost violating maximum daily loss" pour sortir automatiquement de toutes les positions et supprimer tous les ordres en attente. La "perte maximale" dépend vraiment de votre stratégie et de votre gestion du risque, elle ne sera donc pas mentionnée dans ce script MQL5.

//+------------------------------------------------------------------+
//| Fonctions d'assistance de la société d'investissement|
//+------------------------------------------------------------------+

// Supprimer tous les ordres en attente et sortir de toutes les positions
void ClearAll(string message)
{
   Comment(message);
   for (int i = OrdersTotal() - 1; i >= 0; i--)
   {
      ulong orderTicket = OrderGetTicket(i);
      if (OrderSelect(orderTicket)) 
      {
         trade.OrderDelete(orderTicket);
      }
   }

   for (int i = PositionsTotal() - 1; i >= 0; i--)
   {
      ulong posTicket = PositionGetTicket(i);
      trade.PositionClose(posTicket);
   }
}

// Vérifier si nous avons atteint l'objectif de profit
bool isPassed()
{
   return AccountInfoDouble(ACCOUNT_EQUITY) > PASS_CRITERIA;
}

// Vérifier si nous sommes sur le point de dépasser la perte journalière maximale
bool isDailyLimit()
{
   MqlDateTime date_time;
   TimeToStruct(TimeCurrent(), date_time);
   int current_day = date_time.day, current_month = date_time.mon, current_year = date_time.year;
   
   // Solde actuel
   double current_balance = AccountInfoDouble(ACCOUNT_BALANCE);
   
   // Obtenir les transactions fermées d'aujourd'hui PL
   HistorySelect(0, TimeCurrent());
   int orders = HistoryDealsTotal();
   
   double PL = 0.0;
   for (int i = orders - 1; i >= 0; i--)
   {
      ulong ticket=HistoryDealGetTicket(i);
      if(ticket==0)
      {
         Print("HistoryDealGetTicket failed, no trade history");
         break;
      }
      double profit = HistoryDealGetDouble(ticket,DEAL_PROFIT);
      if (profit != 0)
      {
         // Date d'obtention de l'offre
         MqlDateTime deal_time;
         TimeToStruct(HistoryDealGetInteger(ticket, DEAL_TIME), deal_time);
         // Vérifier l'heure de la transaction
         if (deal_time.day == current_day && deal_time.mon == current_month && deal_time.year == current_year)
         {
            PL += profit;
         }
         else
            break;
      }
   }
   double starting_balance = current_balance - PL;
   double current_equity   = AccountInfoDouble(ACCOUNT_EQUITY);
   return current_equity < starting_balance - DAILY_LOSS_LIMIT;
}

Les paramètres que nous devons spécifier sont les suivants :

input string dd = "-------------PROP FIRM CHALLENGE-----------------";
input bool   isChallenge = false;
input double PASS_CRITERIA = 110100.;
input double DAILY_LOSS_LIMIT = 4500.;

J'espère que vous trouverez des valeurs dans ce script.


Traduit de l’anglais par MetaQuotes Ltd.
Code original : https://www.mql5.com/en/code/49713

XMA_Ichimoku XMA_Ichimoku

Moyenne mobile dont l'algorithme de calcul est similaire à celui des moyennes de l'indicateur Ichimoku Kinko Hyo.

Ultra Momentum Ultra Momentum

Cet indicateur est basé sur les lectures de l'indicateur technique Momentum et l'analyse de ses nombreuses lignes de signal.

Click on the market chart to create a price alert Click on the market chart to create a price alert

C'est une première pour MetaTrader 5. Vous pouvez désormais cliquer sur le graphique pour créer des alertes de prix.

3XMA_Ishimoku 3XMA_Ishimoku

Un indicateur dont les idées de construction rappellent beaucoup l'indicateur Ichimoku Kinko Hyo.