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

 
Mickey Moose: Est-ce que cela provient du champ qui apparaît dans la fenêtre de données du terminal ?

tout tampon indicateur peut être désactivé dans la fenêtre de données : SetIndexLabel(1, NULL) ;

 
novichok2018:

Remplacé. Maudite erreur 138 (requotes). Puis revient la pause, et c'est à nouveau 138. C'est étrange, peut-être que je ne l'avais pas remarqué avant.

Lesrequotes sont des changements de prix rapides du vendredi soir et le courtier se protège des pertes.

 
STARIJ:

La fenêtre de données peut ne pas afficher de tampon d'indicateur : SetIndexLabel(1, NULL) ;

Ok. Supposons que nous ayons un indicateur avec 6 tampons
Dois-je écrire iCustom à chaque fois pour obtenir les valeurs de chacun d'entre eux sur le chandelier actuel ? Même s'ils ne sont pas affichés dans la fenêtre principale ?
Je veux accéder à ce tampon pour obtenir sa valeur actuelle.
 
Mickey Moose:
Ok. Supposons que nous ayons un indicateur avec 6 tampons
Dois-je écrire iCustom à chaque fois pour obtenir les valeurs de chacun d'entre eux sur le chandelier actuel ? Même s'ils ne sont pas affichés dans la fenêtre principale ?
Je veux accéder au tampon pour obtenir sa valeur actuelle à un moment donné.

Si vous avez besoin des valeurs de 6 tampons - oui, appelez iCustom 6 fois avec les mêmes paramètres, sauf pour le paramètre mentionné dans l'aide : "int mode,

"Mode [en] Index de la ligne d'indicateur. Peut prendre des valeurs de 0 à 7 et correspond à l'indice spécifié lors de l'appel de la fonction SetIndexBuffer()".

le paramètre de mode sera un nombre de 0 à 5

la valeur actuelle du moment est le paramètre : "int shift // shift "

"shift [in] L'indice de la valeur obtenue à partir du tampon de l'indicateur (décalage par rapport à la barre actuelle du nombre de périodes en arrière spécifié). "

c'est-à-dire pour la barre zéro décalage = 0, pour l'avant-dernière barre décalage = 1 .....

 
Mickey Moose:
Ok. Supposons que nous ayons un indicateur avec 6 tampons
Dois-je écrire iCustom à chaque fois pour obtenir les valeurs de chacun d'entre eux sur le chandelier actuel ? Même s'ils ne sont pas affichés dans la fenêtre principale ?
Je veux accéder au tampon pour obtenir ses valeurs actuelles à un moment donné.
Pourquoi faut-il écrire 6 fois ? Vous pouvez le faire dans la boucle for et même while. Mais vous devez demander à l'indicateur 6 valeurs 6 fois... Cependant, si vous écrivez l'indicateur et que les données sont des booléens ou des int, vous pouvez les crypter en un double et les placer dans un tampon pour une lecture immédiate.
 
STARIJ:
Pourquoi avez-vous besoin d'écrire 6 fois - vous pouvez le faire dans la boucle for et même while. Mais vous devez faire une demande à l'indicateur pour 6 valeurs... Cependant, si vous écrivez vous-même l'indicateur et que les données sont des booléens ou des int, vous pouvez les crypter en un double et les placer dans un tampon pour une lecture immédiate.

Je sais comment les écrire un peu mieux que rien))))) je n'ai pas eu besoin de...

en ce qui concerne int filehandle=FileOpen(20180210,FILE_WRITE,';',CP_ACP) ;


à propos de la coutume

iCustom(NULL,0, 'nameindicator', 'WHATWHEREWHERE TO WORK?',0,MODE_MAIN,0) ; il est dit ici que nous devons spécifier des paramètres mais il y en a des dizaines et ils n'ont rien à voir avec les tampons des robots

J'essaie d'ouvrir le fichier journal pour le lire

int filehandle=FileOpen(20180210,FILE_WRITE,';',CP_ACP) ;

il indique un nom de fichier invalide. ouvrez le dossier avec les journaux - tout va bien.

Igor Makanu:

Mode " [in] Index de la ligne d'indicateur. Peut prendre des valeurs de 0 à 7 et correspond à l'indice que vous avez spécifié en appelant la fonction SetIndexBuffer()".

le paramètre de mode sera un nombre de 0 à 5


C'est clair, sauf d'où vient leSetIndexBuffer(). S'il y aura 2 indicateurs dans la fenêtre, d'où importera-t-il ces données ? Il y a une liaison, par exemple, le troisième tampon d'un indicateur dans le graphique ou la fenêtre de données, si c'est un indicateur personnalisé. Ou la possibilité d'importer tous ses paramètres.

 
Mickey Moose:

Je sais comment les écrire un peu mieux que rien))))) je n'ai pas eu besoin de...

bien et concernant int filehandle=FileOpen(20180210,FILE_WRITE,';',CP_ACP) ;


à propos de la coutume

iCustom(NULL,0, 'nameindicator', 'WHATWHEREWHERE TO WORK?',0,MODE_MAIN,0) ; il est dit ici que nous devons spécifier des paramètres mais il y en a des dizaines et ils n'ont rien à voir avec les tampons des robots

J'essaie d'ouvrir le fichier journal pour le lire

int filehandle=FileOpen(20180210,FILE_WRITE,';',CP_ACP) ;

indique un nom de fichier invalide. Ouvrez le dossier des journaux - tout va bien.


Je comprends, sauf d'où vient leSetIndexBuffer(). S'il y aura 2 indicateurs dans la fenêtre, d'où importera-t-il ces données ? Il devrait y avoir une liaison, par exemple le tampon du troisième indicateur dans un graphique ou une fenêtre de données, si c'est un indicateur personnalisé. Ou une variante d'importation de tous ses paramètres.

iCustom(NULL,0, "nom de l'indicateur", Puis-je ne rien écrire pour le faire fonctionner ?,0,MODE_MAIN,0) ;

Fonctionne avec les paramètres par défaut.

 
Mickey Moose:

tentative d'ouverture d'un fichier journal pour lecture

int filehandle=FileOpen(20180210,FILE_WRITE,';',CP_ACP) ;

indique un nom de fichier invalide. Ouvrez le dossier des journaux - tout va bien.

filename est un type de chaîne, vous avez le numéro 20180210, si ce numéro est le nom du fichier, vous avez besoin de "".

Mickey Moose: S'il y a deux indicateurs dans la fenêtre, d'où va-t-il importer ces données ? Je pense qu'il y a un lien, comme le troisième tampon d'un indicateur sur le graphique ou dans la fenêtre de données, s'il est personnalisé. Ou une variante d'importation de tous ses paramètres.

dans ICustom() vous écrivez le nom de l'indicateur, s'il y a 2 indicateurs, vous appellerez 2 iCustom() avec des noms différents, essayez de pratiquer sur un indicateur standard - sortir quelques valeurs d'indicateur via Alert, il est préférable de faire un script, pas un Expert Advisor pour comprendre le travail avec iCustom()

void OnStart()
  {
       for(int i=0;i<5;i++)
       {
         double val=iCustom(NULL,0,"ATR",14,1,i);
         Alert("Бар № ",i," , Значение = ",val);
       }
   
  }
 
Voici un aperçu du script permettant d'écrire le zigzag dans un fichier. Dans les commentaires
Dossiers :
Zig2fl.mq4  5 kb
 
Salutations à tous. Aidez-moi, s'il vous plaît. Je suis nouveau ici et complètement nul. Je veux apprendre à faire du commerce. J'ai téléchargé MT4 et je l'ai lancé, mais pour une raison quelconque, rien ne se passe, il n'y a pas de mouvement. Je garde les graphiques toujours au numéro d'hier et je ne peux rien comprendre. Aidez-nous s'il vous plaît)))