[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 926

 
gheka:

J'ai tout essayé, j'ai tout réécrit, mais toujours l'erreur 130, à l'aide où est-ce que ça ne va pas ?

Je ne pense pas qu'un niveleur d'arrêt soit nécessaire ici, sont-ils et s'arrêtent-ils à 1000 ?

Essayez

extern double StopLoss=1000.0;
extern double TakeProfit=1000.0;
extern double Lots=1.0;
extern int total;


int start() {

int dg;
double Price_1,Price_2,min,max,pa,pb,pt;

pt=MarketInfo(Symbol(),MODE_POINT);
dg=MarketInfo(Symbol(),MODE_DIGITS);
pa=MarketInfo(Symbol(),MODE_ASK);
pb=MarketInfo(Symbol(),MODE_BID);
Price_1=pb;
Price_2=pa;
min=iLow(NULL,0,2);
max=iHigh(NULL,0,2);
total=OrdersTotal();

double slB=NormalizeDouble(pa-StopLoss*pt,dg);
double tpB=NormalizeDouble(pa+TakeProfit*pt,dg);
double slS=NormalizeDouble(pb+StopLoss*pt,dg);
double tpS=NormalizeDouble(pb-TakeProfit*pt,dg);

  if(total<1) 
  {
   if(Price_1>max)
      OrderSend(Symbol(),OP_BUY,Lots,pa,2,slB,tpB,"My order#",16384,0,Green);

   if(Price_2<min)
      OrderSend(Symbol(),OP_SELL,Lots,pb,2,slS,tpS,"My order#",16384,0,Green);
  }

}
 
Bonjour, est-ce que quelqu'un a un tel testeur Exp - Multi Tester for Mt4 si vous voulez bien partager s'il vous plaît !
 
Bonjour, les gars, je n'arrive pas à comprendre mql4(( Je veux écrire un petit EA basé sur deux EMA (moyennes mobiles) qui donnent un bip après le croisement ? Pouvez-vous me dire quelque chose sur ce programme ? Merci d'avance ! !!
 

Existe-t-il une fonction qui renvoie la valeur d'un ordre de clôture(stop loss) ?

par exemple pour faire savoir à l'EA si un stop loss est déclenché

Je ne l'ai pas trouvé dans la documentation, il y est peut-être, mais je l'ai relu une dizaine de fois en un mois et je ne m'en souviens pas.

je ne me souvenais pas d'avoir trouvé une telle fonction

 
silmin85:
Bonjour, les gars, je n'arrive pas à comprendre mql4(( Je veux écrire un petit EA basé sur deux EMA (moyennes mobiles) qui donnent un bip après le croisement ? Pouvez-vous me parler de ce programme ? Merci d'avance ! !!

N'écrivons qu'à un seul endroit la prochaine fois. Le spamming n'est pas bon.
 
gheka:

Existe-t-il une fonction qui renvoie la valeur d'un ordre de clôture (stop loss) ?

par exemple pour faire savoir à l'EA si un stop loss est déclenché

Je ne l'ai pas trouvé dans la documentation, il y est peut-être, mais je l'ai relu une dizaine de fois en un mois et je ne m'en souviens pas.

Je ne me souviens pas avoir vu une telle fonction.

Recherchez l'ordre dans l'historique et si vous le trouvez, comparez son prix de clôture OrderClosePrice() avec son niveau de StopLoss OrderStopLoss()

S'ils sont égaux, alors la position a été fermée sur un stop.

 
artmedia70:

Recherchez l'ordre dans l'historique, et si vous le trouvez, comparez son prix de clôture OrderClosePrice() avec son niveau de StopLoss OrderStopLoss()

S'ils sont égaux, cela signifie que la position a été fermée au niveau du Stop Loss.

Kim a une fonction qui prend le dernier ordre fermé...
 
OlegTs:
Kim a une fonction qui prend le dernier ordre fermé...

Je sais. Beaucoup de gens commencent à apprendre de ces fonctions. J'ai donné un lien vers son fil de discussion ici récemment, mais l'homme persiste à demander. Je suis probablement trop paresseux pour chercher... :)

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.05.2008                                                     |
//|  Описание : Возвращает флаг закрытия последней позиции по стопу.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   ocp, osl;
  int      dg, i, j=-1, k=OrdersHistoryTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) {
                t=OrderCloseTime();
                j=i;
              }
            }
          }
        }
      }
    }
  }
  if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
    dg=MarketInfo(sy, MODE_DIGITS);
    if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
    ocp=NormalizeDouble(OrderClosePrice(), dg);
    osl=NormalizeDouble(OrderStopLoss(), dg);
    if (ocp==osl) return(True);
  }
  return(False);
}
 
Bonjour, pourriez-vous me conseiller : slippage - La valeur du slippage maximum en pips. Qu'est-ce que c'est et à quoi ça sert ? Je le mets toujours à zéro. Il serait peut-être judicieux de le changer. Peut-il être modifié par ma société de courtage ? Merci d'avance !
 
RekkeR:

Pouvez-vous me dire si, lorsqu'il y a plusieurs indicateurs superposés dans une fenêtre supplémentaire, vous pouvez supprimer la ligne au-dessus d'eux avec les noms et les paramètres ? J'en ai marre de ce télétexte.




Vous pouvez, mais vous devez le supprimer dans chaque indicateur. Modifier le code
Raison: