[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 552

 
Vovo4ka:

Les gars, j'ai fait un compteur ici...il détermine la valeur minimale pour une période n...est-ce correct ou non ?

Habituellement, avant d'utiliser

if (min<A)

les variables sont initialisées (on leur donne une valeur initiale)

 
Stells:


C'est le seul moyen.

J'ai immédiatement mis un takeprofit et un stoploss.

Bien sûr, vous pouvez ouvrir un ordre puis le modifier, mais cela a toujours fonctionné sur A...ri.

Vous savez donc exactement où creuser, mais vous vous entêtez à exiger du type de compte quelque chose qui ne fonctionnera pas..... Eh bien, si c'est une question de principe, alors vous pouvez continuer à insister sur ce point.

 
sergeev:

Vous savez donc exactement où creuser, mais vous insistez pour exiger quelque chose du type de compte qui ne fonctionnera pas..... Eh bien, si c'est une question de principe, vous pouvez continuer à insister.


donc le fait est que d'autres EAs se trouvent sur le même compte et qu'ils fonctionnent.

les ordres sont placés sur le marché en une seule fois avec TP et SL.

 
 
if(OrderMagicNumber( )== 1000||OrderMagicNumber( )== 2000){
Désolé pour la question idiote, est-ce que ça s'écrit "e" correctement ?
 
Stells:


le fait est qu'il y a d'autres EAs sur le même compte, et qu'ils fonctionnent.

Les ordres sont placés sur le marché immédiatement avec TP et SL.


Avez-vous essayé de vérifier les autres options lors de l'ouverture d'une commande ?
 
sergeev:

Avez-vous essayé de vérifier d'autres options lors de l'ouverture d'une commande ?
Qu'entendez-vous par paramètres ?
 
Sepulca:

Le problème vient peut-être des délimiteurs. Vérifiez l'opérateur int FileOpen( string filename, int mode, int delimiter=';') et votre fichier.
Non, tout est correct ici. Le problème est que lors de la lecture du fichier, les chiffres sont petits. Peut-être que la valeur par défaut de double est inférieure au nombre de décimales, donc il voit 0,000 et semble être 0. Comment vérifier combien de décimales il y a ?
 

Par exemple, le symbole, le lot, le sens de l'ordre, le prix d'ouverture, le glissement, le prix d'arrêt, le commentaire de l'ordre, le magik, la date d'expiration, la couleur de la flèche.

Vous devez agir et modifier les paramètres pour aller au fond du problème.

Il faut agir et modifier les paramètres pour rattraper l'origine du problème.

Vous êtes un programmeur ou un passant ?

 
orb:
Non. Le problème de la lecture d'un fichier est que les nombres qui s'y trouvent sont petits. Peut-être que la valeur par défaut en double est inférieure au nombre de décimales, donc il voit 0.000 et pense que c'est 0. Comment vérifier combien de décimales il y a ?

Ce n'est pas possible, quatre décimales à coup sûr. Le tableau Histxmas[qq][0] est-il déclaré comme double ?
 

Il y a eu une discussion sur l'exportation de mq4 vers *.csv et *.xls. Je ne comprends pas. J'ai compris que je devais d'abord créer un fichier, puis l'ouvrir, y écrire des données et, si nécessaire, l'enregistrer. Ceci est dans le fichier csv, et leurs commandes dans https://docs.mql4.com/ru/files/FileWriteArray.

Quelqu'un peut-il me montrer comment exporter le tableau zz_arr_Abs[] vers les deux fichiers en utilisant un exemple réel. Le tableau doit être écrit en colonnes. Ou peut-être pouvez-vous utiliser la bibliotheca décrite dans https://forum.mql4.com/ru/44307.

//+------------------------------------------------------------------+
//|                                                           ZZ.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

//indikatoriaus zz kintamieji
extern int ExtDepth=12;
extern int ExtDeviation=5;
extern int ExtBackstep=3;

extern int Bars_count=240;                  //Is kiek baru skaiciuosime
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   if( !NewBar() ) return(0);
   double zz_arr[10000],zz_arr_Abs[10000];
   double preZz=0;
   int i,ii;
   for(i=0;i<=Bars_count;i++)
   {
       double zz = iCustom(NULL,0,"ZigZag",ExtDepth,ExtDeviation,ExtBackstep,0,i); 
      if(zz!=0)
      {
         if(preZz==0)
         {
            preZz=zz
            ;continue;
         }
        zz_arr[ii]=zz-preZz;
        preZz=zz;
        ii++;
        Print(zz_arr[ii-1]/Point, "    ii = ", ii - 1);
        zz_arr_Abs[ii-1]=MathAbs(zz_arr[ii-1]);                              //Надо экспортировать
        Print("                      ",zz_arr_Abs[ii-1]/Point, "    ii = ", ii - 1);
     }
  }
  
  ArrayResize(zz_arr,ii);
  Print("-------------------------------------------------");
//----
   return(0);
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Iaia?o?aiea iiaiai aa?a
//+------------------------------------------------------------------+
bool NewBar() 
  {
//----
   static datetime NewTime;               // A?aiy oaeouaai aa?a
   bool NewBar=false;                     // Iiaiai aa?a iao
   if( NewTime!=Time[0] )
     {
      NewTime=Time[0];                    // Oaia?u a?aiy oaeia
      NewBar=true;                        // Iieiaeny iiaue aa?
     }
//----
   return(NewBar);
  }
//+------------------------------------------------------------------+