Comment coder ? - page 193

 

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

Dossiers :
ichimoku.mq4  5 kb
 

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.

 
ohir:
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é ?

 
ohir:
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

Dossiers :
trenddetect.mq4  14 kb
 

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.

 
niteuser:
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.
if ((trendis = 0.0026)) { EntryAllowed= true; Print ("Entry Allowed"); }
Raison: