Questions des débutants MQL4 MT4 MetaTrader 4 - page 171

 

EA basé sur la fourchette de pourcentage de Williams. Le code se compile sans problème mais l'EA ne fonctionne pas, il est probable que les paramètres de wpr ne sont pas corrects. Gourous, nous espérons votre aide

//+------------------------------------------------------------------+
//|                                                          WRP.mq4 |
//|                                                                  |
//+------------------------------------------------------------------+

//--------------------------------------------------------------------
extern int     period_WPRur          = 6,
               stoploss             = 100,
               takeprofit           = 200,
               slippage             = 10,
               buy_level            = -80,
               sell_level           = -20,
               Magic                = 21;
extern double  Lot                  = 0.1;
//--------------------------------------------------------------------
void OnTick()
{
   for (int i=0; i<OrdersTotal(); i++)
      if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
         if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber()) return;
   double WPRur0  = iWPR(Symbol(),period_WPRur,PRICE_OPEN,1);
   double WPRur1  = iWPR(Symbol(),period_WPRur,PRICE_OPEN,1);
   double SL=0,TP=0;
   if (WPRur0 > buy_level && WPRur1 < buy_level)
   {
      if (takeprofit!=0) TP  = NormalizeDouble(Ask + takeprofit*Point,Digits);
      if (stoploss!=0)   SL  = NormalizeDouble(Ask - stoploss*  Point,Digits);     
      if (OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,NULL,Magic)==-1) Print(GetLastError());
   }
   if (WPRur0 < sell_level && WPRur1 > sell_level)
   {
      if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits);
      if (stoploss!=0)   SL = NormalizeDouble(Bid + stoploss*  Point,Digits);            
      if (OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bid,Digits),slippage,SL,TP,NULL,Magic)==-1) Print(GetLastError());
   }
}
//--------------------------------------------------------------------
 
Bonjour à tous, je suis un débutant, conseillez-moi sur ce que je dois faire, dois-jerendrele montant de300.26$ (compte réel)ou non, je veux arrêter d'utiliser ECN Pool MT4 pendant un certain temps ?
Dossiers :
354355.png  5 kb
 
Logic:
Bonjour à tous, je suis un débutant, dites-moi ce que je dois faire, dois-jerembourser le montant de300.26$ (compte réel)ou non, je veux arrêter d'utiliser ECN Pool MT4 pendant un certain temps ?

Lisez l'accord d'utilisation de votre courtier.
Vous devez lire votre contrat de courtage. Il stipule généralement que si le compte passe dans le rouge, le client ne vous doit rien.
C'est à ça que servent l'appel de marge et le stop out.

 
Aleksandr SHablevskiy:

EA basé sur la fourchette de pourcentage de Williams. Le code se compile sans problème mais l'EA ne fonctionne pas, il est probable que les paramètres de wpr ne sont pas corrects. Gurus, j'espère avoir de vos nouvelles

  double WPRur0  = iWPR(Symbol(),period_WPRur,PRICE_OPEN,1);
  double WPRur1  = iWPR(Symbol(),period_WPRur,PRICE_OPEN,2);
Mettez 2 à la fin de la deuxième ligne comme je l'ai fait.
 
Nikolay Khrushchev:

Lisez l'accord d'utilisation de votre courtier.
Ils précisent généralement que si le compte devient déficitaire, le client ne doit rien.
C'est à ça que servent l'appel de marge et le stop out.

le fait est que le courtier s'est avéré être un escroc, ni le site web ni la communication ne sont disponibles avec lui.
 
Nikolay Khrushchev:
mettez 2 à la fin de la deuxième ligne comme je l'ai fait.
ça ressemble à autre chose, pas d'accord ! !!
 
Bonjour à tous, je viens de commencer à apprendre la programmation mql4, je regarde un cours vidéo sur youtube, mais il s'avère que le matériel est ancien, j'ai rencontré une erreur lorsque j'essaie de créer un programme pour la première fois, aidez-moi.Voilà l'erreur : l'auteur de la vidéo ne répond pas.
 
Bonjour à tous,s'il vous plaît aidez-moi,comment écrire une fonction qui ferait que le robot se retourne sur la perte. Par exemple, j'ai perdu 20 pips et j'ai basculé, puis basculé à nouveau.
 
turser89:
Bonjour à tous ! Je viens de commencer à apprendre la programmation mql4, je regarde un cours vidéo sur youtube, mais il s'avère que le matériel est vieux, j'ai rencontré une erreur la première fois que j'ai essayé de créer un programme, s'il vous plaît aider.

Start() a commencé avec un "s" minuscule au lieu d'une majuscule.

Mais aujourd'hui, il est préférable de ne pas utiliser des fonctions dépassées.

OnTick() pour les experts, OnStart() pour les scripts, etc. En savoir plus : https://docs.mql4.com/ru/mql4changes

 

Bon après-midi.

1       16:15:33.627    2019.02.04 16:00:00  CandleStrategy EURUSD,M30: out of memory
3       16:15:33.627    2019.02.04 16:00:00  Testing pass stopped due to a critical error in the EA

Comment diagnostiquer la cause de l'erreur d'absence de mémoire ? Je n'ai plus d'objets non supprimés. Je lance le test, je l'arrête et il n'y a aucune erreur concernant les objets non supprimés dans les journaux. Il n'y a pas non plus d'erreur concernant les objets non supprimés avec cette erreur de mémoire insuffisante.

Comment puis-je savoir ce qui conduit exactement à cette erreur de mémoire ?