[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 644
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Le problème est que je ne suis pas très bon en programmation MQL et que mon EA est basé sur les principes du BASIC =) Une variable est affectée à un ordre ouvert. Le terminal indique que j'ai été reconnecté et que la valeur de cette variable disparaît à l'ouverture de l'ordre. Dans ce cas, le terminal doit vérifier les positions ouvertes et affecter ces valeurs aux variables qui ont été assignées par le robot. Et le conseiller expert montre de bonnes lectures dans le test.
En fonction de ce que vous voulez stocker (quelles informations), différentes options peuvent être utilisées :
Si vous le voulez bien, voici un exemple. Si je comprends bien, les données ne seront pas mises à jour avant l'exécution de la boucle ?
Est-ce que seules les mêmes données seront utilisées au cours de ce cycle sans fin ? Les données seront-elles mises à jour avec un nouveau tick ou non ?
Le problème est que je ne suis pas très bon en programmation MQL et que mon EA est basé sur les principes de Bacyca =) Une variable est affectée à un ordre ouvert. Le terminal indique que j'ai été reconnecté et que la valeur de cette variable disparaît à l'ouverture de l'ordre. Je me demande comment faire pour qu'il vérifie les positions ouvertes s'il y a un overlog et qu'il affecte ces valeurs aux variables qui ont été définies par un robot.
Vous parlez du nombre magique ? Pas assez d'informations pour vous aider... quelle est la variable et comment elle est assignée - c'est de là que vous devez partir.
Mais mon conseiller expert montre de bons résultats dans le test.
Est-ce que seules les mêmes données seront utilisées au cours de ce cycle sans fin ? Les données seront-elles mises à jour avec un nouveau tick ou non ?
Est-ce que seules les mêmes données seront utilisées au cours de ce cycle sans fin ? Les données seront-elles mises à jour avec le nouveau tick ou non ?
Ce n'est pas si difficile à écrire à la main, mais lorsque certains codes sont exécutés par les ticks et d'autres par les barres, le programme devient très confus. Merci beaucoup.
donc vous déterminez simplement quand une nouvelle barre s'ouvre et vous exécutez votre fonction.
Vous pouvez déterminer l'apparition d'une nouvelle barre en mémorisant l'heure d'ouverture de la barre, puis en la comparant à l'heure actuelle de la barre 0. Si le nouveau temps est plus long que le précédent, alors nous avons une nouvelle barre.
sergeev merci pour le conseil, cela semble fonctionner)
Ok, encore une chose.
Dans mon EA, j'ai ce branchement :
if(period=="M15")
{
// vérifier l'ouverture d'un achat
Alert(buysell) ;
if(buysell=="buy")
Alerte(1) ;
.............
}
En gros, des "if" imbriqués. MAIS. la condition if(period=="M15") est remplie et Alert donne un résultat, et achète, mais la condition if(buysell=="buy") n'est pas remplie et la commande Alert(1) n'est même pas lancée. diable, les deux conditions sont même syntaxiquement les mêmes, mais pourquoi l'une est remplie et l'autre pas ?
donc vous déterminez simplement quand une nouvelle barre s'ouvre et vous exécutez votre fonction.
Vous pouvez déterminer l'apparition d'une nouvelle barre en mémorisant l'heure d'ouverture de la barre, puis en la comparant à l'heure actuelle de la barre 0. Si le nouveau temps est plus long que le précédent, alors vous avez une nouvelle barre.
Je vais l'écrire :