[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 275

 
gince:


Dans l'exemple KIM, également


non, il n'y a pas de déclaration au niveau global, chaque fonction a ses propres y[].


Quant à votre code et vos zéros, laissez-moi vous expliquer avec un exemple.

Si int a[],n=5 ; ArrayResize(a,n), alors le dernier élément du tableau a un indice n-1, et non n. Vous avez :

               i++; 
            
            ArrayResize(avgPriceH,i); 
            ArrayResize(avgPriceL,i);
            ArrayResize(avgPriceO,i); 
            ArrayResize(avgPriceC,i);        
            
            avgPriceH[i] = High[1];    
            avgPriceL[i] = Low[1];     
            avgPriceO[i] = Open[1];   
            avgPriceC[i] = Close[1];

De toute évidence, c'est en dehors des limites du tableau. Par conséquent, il y a des valeurs nulles. La manière correcte est

            avgPriceH[i-1] = High[1];    
            avgPriceL[i-1] = Low[1];     
            avgPriceO[i-1] = Open[1];   
            avgPriceC[i-1] = Close[1];
 
tara:
Pas du tout la même chose, mais très différente. Lire les données globales et locales.
Je suis désolé d'avoir manqué ça. La CMM a une variable locale.
 


tara et alsu





Merci beaucoup.

 

Bonjour, j'ai besoin d'aide pour cette question : il existe un tableau Mas[10]. J'ai besoin de trouver le produit de chaque cellule avec chaque cellule. J'ai réalisé une telle construction, où l'opérateur if(i==j) élimine le produit de la cellule elle-même. Le problème est que j'obtiens des calculs doubles, c'est-à-dire que par exemple pour i=1 et j=2 le résultat sera le même que pour i=2 et j=1. Quelle condition supplémentaire doit être écrite pour éviter les doubles calculs ?

for(i=0; i<10; i++)
{
   for(j=0; j<10; j++)
   {
      if(i==j) continue;
      x = Mas[i]*Mas[j];
   }
}
 
for(i=0; i<10; i++)
{
   for(j=i+1; j<10; j++)
   {
      //if(i==j) continue;
      x = Mas[i]*Mas[j];
   }
}
 
Roger:
Merci.
 

Bonjour à tous !

Je ne suis pas familier avec le codage de MQL4. Je veux essayer d'écrire un EA basé sur les niveaux de support et de résistance, mais je ne sais pas comment écrire le code d'un programme qui va chercher ces niveaux. Je ne suis pas capable de le chercher dans la base de code, je suis maladroit et mon temps est limité.

Merci d'avance ! Que les bénéfices viennent à vous, et que les élans circulent).

 
Roger:
Pour un certain nombre de raisons liées au processus d'écriture dans le tableau, nous avons dû le rendre bidimensionnel, c'est-à-dire que le tableau ressemble maintenant à Mas[2][5]. Maintenant, pour résoudre le même problème, au lieu de deux boucles for, nous devons faire quatre boucles. Dans ce cas, la variante suggérée par Roger ne fonctionnera pas. Comment résoudre ce problème en utilisant un tableau à deux dimensions ?
 
Ekburg:

Bonjour à tous !

Je ne suis pas familier avec le codage MQL4. Je veux essayer d'écrire un bon Conseiller Expert basé sur les niveaux de support et de résistance, mais je ne sais pas comment écrire le code et le programme pour rechercher les niveaux de support et de résistance. Je ne suis pas capable de le chercher dans la base de code, je suis maladroit et mon temps est limité.

Merci d'avance ! Que les bénéfices viennent à vous, et que les élans circulent).


Regardez l'indicateur dans la CodeBase DailyPivotPoints! Je pense que cela vous aidera ! Bonne chance !
 
borilunad:

Consultez l'indicateur dans la CodeBase DailyPivotPoints! Je pense que cela vous aidera ! Bonne chance !

Merci, je vais y jeter un coup d'œil.