Demandez ! - page 175

 

Ah, c'est une bien meilleure méthode. J'étais en train de bidouiller avec if (Ask == OrderTakeProfit()) {...} en passant par chaque ordre ouvert, ce qui était un peu défectueux lors des tests. Merci !

 

Comment commenter un nombre qui va commenter une chaîne de caractères ?

chaîne de caractères 2 ;

2="EURUSD" ;

COMMENT CRÉER UN COMMENTAIRE OÙ 2 SERA COMMENTÉ COMME EURUSD SUR LE GRAPHIQUE ?

S'IL VOUS PLAÎT, AIDEZ-NOUS - JE SUIS CONFUS !

DAVE

 

Vous ne pouvez pas faire cela dans mql.

Dans mql, le nom d'une variable ne peut pas être un nombre et ne peut pas commencer par un nombre, donc la seule solution est d'ajouter une lettre, un soulignement ou un caractère autorisé devant le "2".

1Dave7:
chaîne 2 ;

2="EURUSD" ;

COMMENT PUIS-JE CRÉER UN COMMENTAIRE OÙ 2 SERA COMMENTÉ COMME EURUSD SUR LE GRAPHIQUE ?

AIDEZ-NOUS S'IL VOUS PLAÎT - JE SUIS CONFUS !

DAVE
 

Comment puis-je faire un tableau en ordre décroissant sur ce qui suit :

double D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0, "XYZ",0,0) ;

D1=iCustom(NULL,0, "XYZ",1,0) ;

D2=iCustom(NULL,0, "XYZ",2,0) ;

D3=iCustom(NULL,0, "XYZ",3,0) ;

D4=iCustom(NULL,0, "XYZ",4,0) ;

D5=iCustom(NULL,0, "XYZ",5,0) ;

D6=iCustom(NULL,0, "XYZ",6,0) ;

D7=iCustom(NULL,0, "XYZ",7,0) ;

COMMENT FAIRE POUR INITIALISER UN TABLEAU DESCENDANT DES VALEURS DE (D0,D1,D2,D3,D4,D5,D6,D7) ?? COMMENT PUIS-JE ADRESSER LES RÉSULTATS DU TABLEAU DANS MON APPLICATION ?

J'APPRÉCIE VOTRE AIDE - JE SERAI TRÈS HEUREUX SI JE PEUX SURMONTER CE GOULOT D'ÉTRANGLEMENT !

Dave

 

Si vous avez besoin que seules les valeurs soient triées, vous pouvez faire quelque chose comme ceci :

double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

et alors les valeurs triées se trouveront dans le tableau "array".

1Dave7:
double D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);

D0=iCustom(NULL,0, "XYZ",0,0) ;

D1=iCustom(NULL,0, "XYZ",1,0) ;

D2=iCustom(NULL,0, "XYZ",2,0) ;

D3=iCustom(NULL,0, "XYZ",3,0) ;

D4=iCustom(NULL,0, "XYZ",4,0) ;

D5=iCustom(NULL,0, "XYZ",5,0) ;

D6=iCustom(NULL,0, "XYZ",6,0) ;

D7=iCustom(NULL,0, "XYZ",7,0) ;

COMMENT FAIRE POUR INITIALISER UN TABLEAU DESCENDANT DES VALEURS DE (D0,D1,D2,D3,D4,D5,D6,D7) ?? COMMENT PUIS-JE ADRESSER LES RÉSULTATS DU TABLEAU DANS MON APPLICATION ?

J'APPRÉCIE VOTRE AIDE - JE SERAI TRÈS HEUREUX SI JE PEUX SURMONTER CE GOULOT D'ÉTRANGLEMENT !

Dave
 
mladen:
Si vous n'avez besoin que des valeurs triées, vous pouvez faire quelque chose comme ceci :
double array[8];

array[0]=iCustom(NULL,0,"XYZ",0,0);

array[1]=iCustom(NULL,0,"XYZ",1,0);

array[2]=iCustom(NULL,0,"XYZ",2,0);

array[3]=iCustom(NULL,0,"XYZ",3,0);

array[4]=iCustom(NULL,0,"XYZ",4,0);

array[5]=iCustom(NULL,0,"XYZ",5,0);

array[6]=iCustom(NULL,0,"XYZ",6,0);

array[7]=iCustom(NULL,0,"XYZ",7,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

et les valeurs triées seront dans le tableau "array".

WOW !!!!!!!!!!!! Je n'aurais jamais trouvé cette solution - Merci beaucoup !!!

 

Aidez-nous à faire fonctionner ce tableau - Je suis perplexe !!!

[/PHP] EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //RED

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //LIME

double array[7];

array[0]=iCustom(NULL,0,"EURUSD",0,0);

array[1]=iCustom(NULL,0,"GBPUSD",1,0);

array[2]=iCustom(NULL,0,"AUDUSD",2,0);

array[3]=iCustom(NULL,0,"USDCHF",3,0);

array[4]=iCustom(NULL,0,"USDJPY",4,0);

array[5]=iCustom(NULL,0,"NZDUSD",5,0);

array[6]=iCustom(NULL,0,"USDCAD",6,0);

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);

a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);

//return(0);

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);

//return(0);

}

[PHP]

J'ai essayé d'obtenir une valeur pour a,b et de l'afficher, mais elle n'affiche que 0 pour a, et 0 pour b et toutes les autres valeurs c-f. J'espérais obtenir un ordre croissant des monnaies. Pouvez-vous m'aider à comprendre pourquoi cela ne fonctionne pas ?

J'aimerais pouvoir vous offrir une bière pour votre aide !

 

Vérifiez les lignes qui vont comme ceci :

array[0]=iCustom(NULL,0,"EURUSD",0,0);

Cette ligne signifie que vous avez un indicateur appelé "EURUSD" et que vous l'appelez pour obtenir une certaine valeur et l'affecter au 1er élément de "array". S'il n'existe pas (l'indicateur avec ce nom, ce que je suppose être vrai), il assignera la valeur 0 à l'élément du tableau. Qu'essayez-vous exactement de récupérer avec cette ligne ?

1Dave7:
EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)) ; //RED

GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)) ; //LIME

double array[7] ;

array[0]=iCustom(NULL,0, "EURUSD",0,0) ;

array[1]=iCustom(NULL,0, "GBPUSD",1,0) ;

array[2]=iCustom(NULL,0, "AUDUSD",2,0) ;

array[3]=iCustom(NULL,0, "USDCHF",3,0) ;

array[4]=iCustom(NULL,0, "USDJPY",4,0) ;

array[5]=iCustom(NULL,0, "NZDUSD",5,0) ;

array[6]=iCustom(NULL,0, "USDCAD",6,0) ;

ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND) ;

a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];

{

ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0) ;

ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,

ObjectSet("DISPLAY10", OBJPROP_CORNER, 1) ;

ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80) ;

ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20) ;

//retourne(0) ;

}

{

ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0) ;

ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,

ObjectSet("DISPLAY20", OBJPROP_CORNER, 1) ;

ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80) ;

ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40) ;

//retourne(0) ;

}

J'ai essayé d'obtenir une valeur pour a,b et de l'afficher, mais elle n'affiche que 0 pour a, et 0 pour b et toutes les autres valeurs c-f. J'espérais obtenir un ordre croissant des monnaies. Pouvez-vous m'aider à comprendre pourquoi cela ne fonctionne pas ???

J'aimerais pouvoir vous offrir une bière pour votre aide !
 
mladen:
Vérifiez les lignes qui vont comme ceci :
array[0]=iCustom(NULL,0,"EURUSD",0,0);
Cette ligne signifie que vous avez un indicateur appelé "EURUSD" et que vous l'appelez pour obtenir une valeur et l'assigner au 1er élément du "tableau". S'il n'existe pas (l'indicateur avec ce nom, ce que je suppose être vrai), il assignera la valeur 0 à l'élément du tableau. Qu'essayez-vous exactement de récupérer avec cette ligne ?

Le tableau est de récupérer une valeur de "EURUSD", puis de faire un ordre ascendant de bas en haut par rapport aux autres monnaies, et enfin d'afficher le classement des bas à l'écran. EURUSD comme les autres monnaies me donne juste un 0.00 ? ?? Qu'est-ce que je fais de mal ici ??

 

Faites-le comme ceci :

array[0]=iClose("EURUSD",0,0); [/PHP]

and so on. That way array will be filled with close prices for symbols you select. If you are using a custom indicator then the form is the following :

[PHP]array[0]=iCustom("EURUSD",0,"indicator name",0,0);
1Dave7:
Le tableau est de récupérer une valeur de "EURUSD", puis de faire un ordre ascendant de bas en haut par rapport aux autres monnaies, et enfin d'afficher le classement de bas en haut à l'écran. EURUSD comme les autres monnaies me donne juste un 0.00 ? ?? Qu'est-ce que je fais de mal ici ?