Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 339

 
Nauris Zukas:

Dans Expert Advisor, j'ai sorti Print et cela montre que les prix sont là, ce qui signifie que les barres ont été recalculées.

Peut-être ne me suis-je pas exprimé correctement. J'ai calculé mais je n'aurai peut-être pas le temps d'afficher le graphique.

Nauris Zukas:

Je ne l'ai pas encore testé, je réfléchis encore à la manière de le faire.

Vous prenez n'importe quel indicateur de CodeBase et vous voyez comment c'est fait.

 
Nauris Zukas:

Je l'ai changé mais ça ne marche pas non plus.


fonctionne pour moi)

a pris votre code et a mis close[0].

ps. pour une demande écrire close[0]+spread*_Point

 
Andrey Ilinykh:

Bonjour Artiom, pourriez-vous me dire comment écrire un EA pour qu'il n'ouvre pas d'ordres avant que le prix ait dépassé un certain niveau et qu'il continue à ouvrir des ordres même après que le prix soit repassé au-dessus du niveau ? Salutations Andrei.

Bonjour. La première chose qui vient à l'esprit est d'utiliser un drapeau dans les variables globales du terminal.


Lors du lancement de l'Expert Advisor, nous vérifions si la variable globale est disponible (point 1).

  1. Dans OnInit() il vérifie si la variable et
    1. si elle n'existe pas encore, créer une telle variable et mettre sa valeur à 0
    2. s'il existe déjà, passez à l'étape 2
  2. Dans OnTick() il vérifie la variable et
    1. s'il est égal à 0, et
      1. le prix n'a pas encore franchi le niveau spécifié - passez à l'étape 2
      2. le prix a franchi le niveau donné - mettre la variable à 1
    2. si 1, alors nous pouvons échanger - point 3
    3. s'il est égal à 0, passez à l'étape 2.
  3. Le commerce est autorisé

A peu près comme ça.
 
Alexey Viktorov:

Il n'y a rien à penser, il suffit de prendre n'importe quel indicateur de CodeBase et de voir comment il est fait.

Le problème est que les autres indicateurs se déplacent sur chaque barre et que j'en ai besoin sur chaque tick.

 
Taras Slobodyanik:

fonctionne pour moi)

a pris votre code et a mis close[0].

ps. pour une demande écrire close[0]+spread*_Point

Si je l' appelle via iCustom dans Expert Advisor, apparaîtra-t-il? Montrez-moi une photo ! :)

 
Nauris Zukas:

Et si vous appelez l'indicateur via iCustom dans Expert Advisor ? Donnez-nous juste une photo ! :)


Y a-t-il un seul indicateur affiché par iCustom ?

ps. essayez-vous d'attraper des ticks avec iCustom ?

 
Nauris Zukas:

Et si vous appelez l'indicateur via iCustom dans Expert, est-il visible ? Une photo s'il vous plaît ! :)

L'indicateur, qui est appelé dans le conseiller expert par iCustom(), ne doit pas afficher ses tampons sur le graphique, jusqu'à ce que vous l'appliquiez au graphique avec les mêmes paramètres que ceux utilisés dans le conseiller expert. Les seules exceptions sont les indicateurs qui ne s'affichent pas via un tampon, mais via des objets graphiques.

 
Taras Slobodyanik:

Un indicateur est-il affiché via iCustom ?

La fenêtre de l'indicateur s'ouvre une fois les tests terminés.

Taras Slobodyanik:

ps. essayez-vous d'attraper des ticks à travers iCustom ?

J'essaie d'attraper des ticks pour des tests, mais en général, le but est de sortir les prix des fichiers à certains moments dans une fenêtre d'indicateur.

 
Nauris Zukas:

Lorsque les tests sont terminés, la fenêtre de l'indicateur s'ouvre.

Seulement si HideTestIndicators() n'est pas utilisé dans l'EA.

 
Artyom Trishkin:

L'indicateur qui est appelé dans le conseiller expert par iCustom() ne doit pas afficher ses tampons sur le graphique tant que vous ne l'appliquez pas au graphique avec les mêmes paramètres que ceux utilisés dans le conseiller expert. Les seules exceptions sont les indicateurs qui ne s'affichent pas dans la mémoire tampon, mais dans des objets graphiques.

Une fois les tests terminés, la fenêtre de l'indicateur s'ouvre.


Raison: