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
J'ai téléchargé un indicateur qui affiche une flèche verte/rouge lorsque le signal d'achat/de vente est émis.
maintenant je veux programmer mon propre EA basé sur cet indicateur.
Mais je n'ai que le fichier ex4 de cet indicateur (pas de code source).
Je veux que mon EA lise la flèche de l'indicateur sur le graphique principal et envoie l'ordre d'achat/de vente (flèche verte==>achat, flèche rouge==>vente).
Existe-t-il une méthode pour obtenir les informations de la flèche de l'indicateur sur le graphique principal ?
merciUne flèche peut être dessinée comme une valeur d'un des tampons de l'indicateur ; dans ce cas, la couleur dans les propriétés de l'indicateur devrait vous donner le numéro du tampon, ce qui est suffisant pour l'appeler par la fonction "ICustom()" ; Vous devez également remplir toutes les valeurs de l'onglet "Input" comme paramètres de l'appel ICustom().
Si la flèche n'est pas une valeur d'un tampon, c'est un objet. Sélectionnez-le pour voir ses propriétés. La plupart du temps, il est facile de comprendre comment les noms sont générés et il sera alors possible d'utiliser ObjectFind().
L'EA doit surveiller ObjectsTotal(), et seulement quand il est incrémenté, il peut essayer de reconnaître le dernier objet. Si le nom est inconnu, l'EA ne peut pas utiliser OjectFind() et doit scanner tous les objets pour identifier le dernier. Le dernier objet n'est pas forcément celui qui a l'indice le plus élevé (ObjectsTotal() - 1), mais il est préférable de commencer à scanner à partir de l'indice le plus élevé, car vous pourrez probablement casser plus rapidement. Maintenant vous devez comparer OBJPROP_TIME1 obtenu par ObjectGet() à Time[0] ou Time[1] par exemple, et vérifier la couleur ou le type de flèche, ou une sous-chaîne du nom, pour identifier un signal d'achat ou de vente.
Cela semble complexe mais ne l'est pas. Essayez de l'écrire et n'hésitez pas à demander plus de précisions si nécessaire.
La réponse précédente était incomplète.
Si l'indicateur est standard dans MT4, il apparaîtra à l'endroit normal. S'il est appelé par iCustom, il s'affichera également, s'il est bien codé.
Les indicateurs des EAs suivants s'affichent même dans la fenêtre du graphique. Étudiez-les pour savoir comment :
bouncingPipEA_mpowerV42.mq4
bouncingPipEA_BigBear_v23.mq4
Big BeMerci Big Be, je vais les étudier.
Une flèche peut être dessinée comme une valeur d'un des buffers de l'indicateur ; dans ce cas, la couleur dans les propriétés de l'indicateur devrait vous donner le numéro du buffer, ce qui est suffisant pour l'appeler par la fonction "ICustom()" ; Vous devez également remplir toutes les valeurs de l'onglet "Input" comme paramètres de l'appel ICustom().
Si la flèche n'est pas une valeur d'un tampon, c'est un objet. Sélectionnez-le pour voir ses propriétés. La plupart du temps, il est facile de comprendre comment les noms sont générés et il sera alors possible d'utiliser ObjectFind().
L'EA doit surveiller ObjectsTotal(), et seulement quand il est incrémenté, il peut essayer de reconnaître le dernier objet. Si le nom est inconnu, l'EA ne peut pas utiliser OjectFind() et doit scanner tous les objets pour identifier le dernier. Le dernier objet n'est pas forcément celui qui a l'indice le plus élevé (ObjectsTotal() - 1), mais il est préférable de commencer à scanner à partir de l'indice le plus élevé, car vous pourrez probablement casser plus rapidement. Maintenant vous devez comparer OBJPROP_TIME1 obtenu par ObjectGet() à Time[0] ou Time[1] par exemple, et vérifier la couleur ou le type de flèche, ou une sous-chaîne du nom, pour identifier un signal d'achat ou de vente.
Cela semble complexe mais ne l'est pas. Essayez de l'écrire et n'hésitez pas à demander plus de précisions si nécessaire.Excellente explication Michel ... 100% plus complète que la mienne !
Merci pour ceux qui sont intéressés.
FerruFx
changer l'indicateur dans un EA
je voudrais changer l'indicateur dans un EA que j'ai, mais je ne sais pas comment le faire
je ne suis pas un programmeur, en fait je ne connais pas grand chose à ce genre de chose, ci-dessous est la seule partie qui concerne l'indicateur je veux changer le DiMA en MFA(14)
je veux acheter @ >60 et vendre@<40
double diClose0=iClose(NULL,5,0) ;
double diMA1=iMA(NULL,5,7,0,MODE_SMA,PRICE_OPEN,0) ;
double diClose2=iClose(NULL,5,0) ;
double diMA3=iMA(NULL,5,6,0,MODE_SMA,PRICE_OPEN,0) ;
if(AccountFreeMargin()<(1000*Lots)){
Print("Nous n'avons pas d'argent. Marge libre = ", AccountFreeMargin()) ;
return(0) ;
}
if (!ExistPositions()){
if ((diClose0<diMA1)){
OpenBuy() ;
return(0) ;
}
if ((diClose2>diMA3)){
OpenSell() ;
return(0) ;
}
}
quelqu'un peut-il m'aider ?
denis
Veuillez poster votre indicateur d'AMF. J'ai besoin de voir les tampons. Dans quelle logique voulez-vous changer d'indicateur ?
Dave
Bonjour Dave, je ne peux pas afficher l'indicateur MFI, il n'est pas dans le dossier des indicateurs. Vous pouvez obtenir l'indicateur dans la barre d'outils sous les volumes, je ne sais pas ce que vous voulez dire par "sous quelle logique".
denis
Bonjour Dave, je ne peux pas afficher l'indicateur MFI, il n'est pas dans le dossier des indicateurs, vous pouvez obtenir l'indicateur à partir de la barre d'outils sous les volumes, je ne sais pas ce que vous voulez dire par sous quelle logique. denis
Celui-ci ? Market Facilitation Index
salut linuxer je ne pense pas que ce soit le bon mais merci quand même, celui que j'ai s'appelle money flow index.
denis
salut linuxer je ne pense pas que ce soit celui là mais merci quand même, celui que j'ai s'appelle money flow index. denis
Désolé, j'ai mal orthographié le nom, c'est celui-là.
Money Flow Index.mq4 aka MFI.mq4