![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Besoin d'aide pour une alerte
Bonjour,
Tout d'abord, désolé pour mon anglais, je suis vraiment mauvais en anglais.
Mais ma question est la suivante : comment puis-je programmer un signal d'alerte si le tenkan et le senkou se croisent ? long et court.
quelqu'un peut-il m'aider, s'il vous plaît !!!
Merci beaucoup,
bye benjamin
Petit problème...
Quelqu'un peut-il m'aider à faire en sorte que la fonction se déroule comme suit ?
J'ai : A=0
Quand l'indicateur atteint un certain point nr1 : A=1.
Et quand l'indicateur quitte ce point : A=1 (A garde toujours sa valeur).
Quand l'indicateur atteint un certain point nr2 : A=0.
Toute idée est la bienvenue !
Merci.
Est-ce que quelqu'un peut m'aider à créer une fonction pour agir en aval ?
J'ai : A=0
Quand l'indicateur atteint un certain point nr1 : A=1.
Et quand l'indicateur quitte ce point : A=1 (A garde toujours sa valeur).
Quand l'indicateur atteint un certain point nr2 : A=0.
Toutes les idées sont les bienvenues !
Merci.C'est difficile de savoir exactement ce que l'on veut avec si peu d'éléments.
Que diriez-vous de
A=0 ;
si (Enchère >= nr1 && Enchère < nr2) A=1 ;
si (Enchère >= nr2) A=0 ;
Remplacez Bid par O,H,L,C ou toute autre variable que vous voulez.
Mais vous devez également penser à ce qui se passe si le prix atteint le nr1 puis chute au lieu d'atteindre le nr2.
N'oubliez pas que je ne fais que deviner ce que vous voulez.
J'espère que cela vous a aidé
Comment puis-je accéder à un fichier sur mon disque dur qui n'est pas dans le dossier /experts/files ?
btw, est-il possible d'exécuter des commandes Windows (par exemple copier) dans mql4 ? peut-être avec un fichier dll ?
Merci d'avance :-)
Re swgman1
Merci, swgman1 !
... mais cela reste un problème pour moi.
Ce que j'essaie de dire-
Début de
La valeur de l'indicateur 1 est 0
La valeur de l'indicateur 2 est 0
A=0
Étape 1
La valeur de l'indicateur 1 est 1
La valeur de l'indicateur 2 est 0
A=1
Step2
La valeur de l'indicateur 1 est égale à 0
La valeur de l'indicateur 2 est 0
A=1
Step3
La valeur de l'indicateur 1 est 0
La valeur de l'indicateur 2 est 1
A=0
J'espère que c'est plus clair
Merci.
Boucle bizarre..
J'ai fait une boucle bizarre dans mon programme de test :
int A=1
for(A=0, A=1 ; A==(condition d'achat) ; A++)
Acheter si(A=1)
Fermer si(Bid>0)
Il trade après la disparition de la contition... MAIS, il ne ferme pas les trades juste après l'ouverture (comme il devrait - Bid>0). Maintenant mon programme ferme toutes les transactions seulement si la condition d'achat apparaît.
Que fait cette boucle en réalité ?
J'ai fait une boucle bizarre dans mon programme de test :
int A=1
for(A=0, A=1 ; A==(condition d'achat) ; A++)
Acheter si(A=1)
Fermer si(Bid>0)
Il négocie après la disparition de la contition... MAIS, il ne ferme pas les trades juste après l'ouverture (comme il devrait - Bid>0). Maintenant mon programme ferme toutes les transactions seulement si la condition d'achat apparaît.
Que fait cette boucle en réalité ?Hey ohir,
Je n'ai jamais vraiment regardé dans l'écriture des EA, je n'ai fait que des indicateurs, donc je ne suis pas la meilleure personne pour demander.
Cependant, avec une boucle for, vous indiquez le point de départ (numéro de barre), puis votre condition pour que la boucle continue à tourner, puis vous incrémentez votre point de départ pour la boucle suivante.
for (x=bars-1;x>0;x--) cette boucle parcourra toutes les barres du graphique de la première à la dernière.
for (x=0;x<bars-1;x++) boucle dans l'autre sens.
x est juste le compteur de la boucle
La vôtre commence à la barre 0 ou 1 (je ne suis pas sûr de savoir comment cela fonctionne avec la virgule) puis, tant que votre compteur est égal à la condition d'achat (impossible je pense), continuez la boucle, puis incrémentez le compteur.
Essayez quelque chose comme
for (x=0;x<=bars-1;x++)
{
si (A[x]==1) OrderSend(blah,blah,blah)
si (Bid[x]>0) OrderClose(blah,.....)
}
Je ne sais pas si cela peut vous aider mais c'est le mieux que je puisse faire. Peut-être que quelqu'un avec plus de connaissances sera en mesure de vous aider davantage.
Bonne chance
Swagman
Aidez-nous
Ok, je l'ai eu - rejeter ce message
Metatrader et numéros négatifs
Quelqu'un connaît une meilleure façon de coder ceci ???? Je n'arrive pas à ce que Metatrader lise les chiffres exacts, certains sont positifs et d'autres négatifs.
if (Use_Entry_Delay == true) {
//if (trendis == 0 || trendis == -0) {
//EntryAllowed= True ;
//Print ("Entry Allowed") ;
//}
if (trendis == 0.0010){/EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0011){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0012){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0013){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0014){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0015){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0016){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0017){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0018){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0019){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0020){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0021){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0022){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0023){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0024){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0025){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0026){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0010){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0011){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0012){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0013){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0014){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0015){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0016){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0017){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0018){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0019){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0020){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0021){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0022){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0023){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0024){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0025){ EntryAllowed= true ; Print ("Entry Allowed") ; }
if (trendis == -0.0026){ EntryAllowed= true ; Print ("Entry Allowed") ; }else{L'entrée autorisée= true ; Print ("Entry Allowed") ; }
}sélection{
EntryAllowed= false ;
Print ("Entrée non autorisée") ;
}
}
-----------------------------------------
Donc, en gros, si c'est -0.0010 ou moins, ne le faites pas.
si elle est supérieure à 0,0026 ou supérieure à -0,0026, ne le faites pas.
J'ai essayé beaucoup de choses mais je n'arrive pas à le faire.
N'importe quelle AIDE s'il vous plaît s'il vous plaît s'il vous plaît.
Quelqu'un connaît une meilleure façon de coder ceci ???? Je n'arrive pas à ce que metatrader lise les chiffres exacts, certains sont positifs et d'autres négatifs.
if (Use_Entry_Delay == true) {
//if (trendis == 0 || trendis == -0) {
//EntryAllowed= True ;
//Print ("Entry Allowed") ;
//}
if (trendis == 0.0010){/EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0011){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0012){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0013){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0014){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0015){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0016){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0017){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0018){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0019){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0020){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0021){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0022){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0023){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0024){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0025){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == 0.0026){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0010){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0011){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0012){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0013){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0014){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0015){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0016){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0017){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0018){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0019){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0020){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0021){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0022){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0023){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0024){ EntryAllowed= true ; Print ("Entry Allowed") ; }
si (trendis == -0.0025){ EntryAllowed= true ; Print ("Entry Allowed") ; }
if (trendis == -0.0026){ EntryAllowed= true ; Print ("Entry Allowed") ; }else{L'entrée autorisée= true ; Print ("Entry Allowed") ; }
}sélection{
EntryAllowed= false ;
Print ("Entrée non autorisée") ;
}
}
-----------------------------------------
Donc, en gros, si c'est -0.0010 ou moins, ne le faites pas.
si elle est supérieure à 0,0026 ou supérieure à -0,0026, ne le faites pas.
J'ai essayé plusieurs choses, mais je n'arrive pas à le faire.
N'importe quelle AIDE s'il vous plaît s'il vous plaît s'il vous plaît.