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

 
Polivanovka8b:

J'essaie d'écrire un conseiller MA très basique, mais il devrait fermer à l'arrêt ou au profit au lieu d'un croisement en arrière. C'est ce que j'ai fait, ce qui m'a valu l'erreur '\end_of_program' - aucune fonction définie. S'il vous plaît, aidez-moi, qu'est-ce qui ne va pas ? Et si vous pouvez me donner quelques explications.

/*code*/

Bonjour !

Tout d'abord, le code ne doit pas être "suspendu en l'air" mais dans une fonction quelconque.

Deuxièmement, il doit y avoir une fonction start() qui sera appelée à chaque tick et qui doit contenir la logique de base

Troisièmement, le code est inséré à l'aide du bouton SRC (la barre de boutons se trouve juste au-dessus de la fenêtre où vous tapez le texte du message)

 
Si le dossier Metatrader est copié/coupé d'un PC à un autre, le terminal sera-t-il pleinement opérationnel dans le nouvel emplacement, tout comme dans l'emplacement original ?
 
yellownight:
Si le dossier Metatrader est copié/coupé d'un PC à un autre, le terminal sera-t-il pleinement opérationnel dans le nouvel emplacement, tout comme dans l'emplacement original ?
Oui. Seuls le mot de passe et l'identifiant devront être saisis à nouveau. Le désinstallateur ne sera pas en mesure de désinstaller. Les autres chemins seront dans install.log. Il y aura des entrées supplémentaires dans le registre (install.sss).
 

Bon après-midi. Question sur l'identifiant de la propriété OBJPROP_TIMEFRAMES des objets graphiques... J'ai écrit ce script pour créer un objet graphique Ligne Horizontale (voir ci-dessous).

Question: Pourquoi, bien que la fonction ObjectSet(object_name,OBJPROP_TIMEFRAMES,PERIOD_H1) indique explicitement que l'objet doit s'afficher UNIQUEMENT sur le timeframe H1, l'objet créé s'affiche également sur les timeframes (au moins) H4, M30, M15.

Note : l'en-tête du script contient une ligne avec le fichier include #include <WinUser32.mqh> qui diffère du fichier include source #include <WinUser32.mqh> livré avec le terminal client.

Dossiers :
 
7777877:

Bon après-midi. Question sur l'identifiant de la propriété OBJPROP_TIMEFRAMES des objets graphiques... J'ai écrit ce script pour créer un objet graphique Ligne Horizontale (voir ci-dessous).

Question: Pourquoi, bien que la fonction ObjectSet(object_name,OBJPROP_TIMEFRAMES,PERIOD_H1) indique explicitement que l'objet doit s'afficher UNIQUEMENT sur le timeframe H1, l'objet créé s'affiche également sur les timeframes (au moins) H4, M30, M15.


https://docs.mql4.com/ru/constants/objects/visible


Une autre constante est OBJ_PERIOD_H1

 

Bonjour, voici une question :

J'ai besoin de calculer le nombre total de queues d'achat des barres précédentes en utilisant la formule close[1]-low[1] en pips.

cela ressemblerait à ceci

...

int xBost_b ;

si(close[1]>open[1])

xBost_b=xBost_b+((close[1]-low[1])*10000);

...

mais tout cela est écrit dans start() à chaque tic.

c'est-à-dire qu'à chaque tick une et la même barre est incrémentée plusieurs fois, mais comment faire pour que la barre précédente (par exemple si j'achète) soit calculée/incrémentée 1 fois ?

 
DanLett:

Bonjour, voici une question :

J'ai besoin de calculer le nombre total de queues d'achat des barres précédentes en utilisant la formule close[1]-low[1] en pips.

cela ressemblerait à ceci

...

si(close[1]>open[1])

xBost_b=xBost_b+((close[1]-low[1])*10000);

...

mais tout ce qui est écrit dans le start() est exécuté à chaque tic.

Par exemple, à chaque tick, une et même barre est ajoutée plusieurs fois, comment faire pour que la barre précédente (par exemple si j'achète) soit calculée/ajoutée à la variable 1 fois ?

a) écrire un script, il ne comptera qu'une seule fois

b) compter le nombre nécessaire de barres à chaque fois

c) pour savoir quand une nouvelle barre commence et seulement ensuite "ajouter" la barre précédente au calcul

d) si c'est un indicateur, utiliser IndicatorCounted()

Choisissez celui qui convient le mieux à votre tâche

 
ilunga:

a) écrire un script, il ne comptera qu'une seule fois

b) compter le bon nombre de barres à chaque fois

c) savoir quand une nouvelle barre commence et seulement alors "ajouter" la barre précédente au calcul.

d) si c'est un indicateur, utiliser IndicatorCounted()

choisir ce qui est le mieux pour votre tâche

J'en ai besoin comme conseiller expert ; je n'arrive pas à décider si je dois le faire ou pas, j'ai tout le code sur la page, mais je n'ai pas le début.

Start - comment compter chaque type de barre une fois dans start()...

 

c'est-à-dire que pendant que la barre[0] actuelle est construite, la précédente est définie.

et si nous achetons, nous trouvons la queue en pips et l'ajoutons à la variable 1 fois

J'ai besoin de votre aide !

 
ilunga:

Bon après-midi. Question sur l'identifiant de la propriété OBJPROP_TIMEFRAMES des objets graphiques... J'ai écrit ce script pour créer un objet graphique Ligne Horizontale (voir ci-dessous).

Question: Pourquoi, bien que la fonction ObjectSet(object_name,OBJPROP_TIMEFRAMES,PERIOD_H1) indique explicitement que l'objet doit s'afficher UNIQUEMENT sur le timeframe H1, l'objet créé s'affiche également sur les timeframes (au moins) H4, M30, M15.


https://docs.mql4.com/ru/constants/objects/visible


Une autre constante est OBJ_PERIOD_H1


Oui, merci, ça m'a aidé... Mais j'aimerais comprendre pourquoi l'option ObjectSet(object_name,OBJPROP_TIMEFRAMES,PERIOD_H1) ne fonctionne pas (comme elle le devrait) ? S'agit-il de lacunes dans la langue elle-même ?
Raison: