Comment calculer cet indicateur mql4 dans Probuilder

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #4267 quote
    Ruddy
    Participant
    Senior

    Mon problème :

    J’ai trouvé sur le net “Lemantrend” un indicateur codé à l’origine pour MT4.

    Mes connaissances en programmation Mql4 sont insuffisantes pour décrypter son mode de calcul que j’ai également vainement cherché sur le net depuis 3 semaines.

    Question :

    Quelqu’un pourrait-il m’indiquer à partir du code ci-joint comment est calculé cet indicateur.

    Ensuite, j’essayerai de le coder en Probuilder et le mettrai à la disposition de la communauté PRC.

    MERCI d’avance.

    Note cet indicateur existe aussi en mql5 et dans une version mql4 mtf

    #4269 quote
    Nicolas
    Keymaster
    Master

    Bonjour Ruddy, je viens d’activer l’upload possible de fichier mq4. Tu peux donc réessayer de le mettre stp. Merci de ton passage par la case présentation que j’apprécie fortement 🙂

    Inutile de poster en Anglais dans le forum Francophone, on est entre “froggies” ici, donc autant parler la langue de Molière !!

    #4280 quote
    Ruddy
    Participant
    Senior

    Merci Nicolas, ça va me faciliter grandement les échanges.

    Je viens d’attacher de nouveau le fichier Lemantred suffixé mq4. Est-ce cette manip que tu me demandes de faire ?

    #4286 quote
    Nicolas
    Keymaster
    Master

    Je viens d’analyser l’indicateur en question, en fait c’est plutôt simple à traduire en ProBuilder.

    D’abord il faut rechercher le Highest high et le Lowest low des périodes min/max et middle.

    Ensuite tu as 2 buffers qui se calcule comme ceci :

    buffer1 = ((High[i]-High1)+(High[i]-High2)+(High[i]-High3))

    buffer2 = ((Low1-Low[i])+(Low2-Low[i])+(Low3-Low[i]))

    ou High[i] est le High de la bar présente et Low[i] le Low de la bar présente.

    Ensuite il faut faire une moyenne exponentielle de ces 2 buffers et tester des croisements pour donner des signaux de vente et d’achat. Voilà !

    #4829 quote
    Nicolas
    Keymaster
    Master

    Salut Ruddy, où en es-tu ? ça n’était pas très compliqué pourtant haha 🙂 Besoin de plus d’indications ?

    #5046 quote
    Ruddy
    Participant
    Senior

    Bonsoir Nicolas

    J’ai été un peu pris ces temps-ci. Les retraités sont demandés de partout et c’est difficile de dire non !

    J’ai bien  codé facilement quelque chose qui ressemble à l’indicateur Mt4. Mais les premières comparaisons me laissent perplexes. En effet les valeurs de l’indicateur en D1 ne sont pas les mêmes pour les 2 plateformes. Peut-être cela provient-il des horaires de clôture des bougies qui doivent être décalés.

    Toutefois, les croisements des courbes sont très éloignés dans le temps d’un système á l’autre. Et ça, je ne comprends pas ?

    Dès que je peux, je poste le code.

    Ruddy

    #5075 quote
    Nicolas
    Keymaster
    Master

    Bonjour Ruddy, ce sera avec plaisir si je peux t’aider à débugger ton code. Essai de le poster dans les prochains jours et on pourra y regarder. A bientôt.

    #5101 quote
    Ruddy
    Participant
    Senior

    Bonjour Nicolas,

    Ci-joint, comme promis, ce que j’ai codé comme devant être l’indicateur Lemantrend.

    A titre de comparaison avec l’indicateur natif MT4, voir l’image de l’EURUSD d’aujourd’hui issue d’un graphique éponyme fourni par un broker londonien.
    J’en ai fait également des variantes au niveau des moyennes. Ca ne change pas grand chose quant à l’aspect de et indicateur.

    Bien sûr, j’attends tes commentaires avec une certaine impatience.

    A bientôt donc.

    Ruddy

    EURUSD du 08-04-2016
    Code de l’indicateur LEMANTREND initialement prévu pour MT4

    // Détermination des plus hauts pour les périodes 13,21,34
    HIGH1 = highest[13](High)
    HIGH2 = highest[21](High)
    HIGH3 = highest[34](High)
    
    // Détermination des plus bas pour les périodes 13,21,34
    LOW1 = Lowest[13](Low)
    LOW2 = Lowest[21](Low)
    LOW3 = Lowest[34](Low)
    
    BufferH = ((High-HIGH1) + (High-HIGH2) + (High-HIGH3))
    BufferL = ((LOW1-Low) + (LOW2-Low) + (LOW3-Low))
    
    B = WeightedAverage(BufferH)
    R = WeightedAverage(BufferL)
    
    Return B coloured (0,0,255) as "LigneDesPLusHauts" , R coloured (255,0,0) as "LigneDesPlusBas"
    
    #5106 quote
    Nicolas
    Keymaster
    Master

    Ton code est correct Ruddy, j’ai juste modifié les lignes 14 et 15 pour utiliser une moyenne mobile exponentielle sur une période de “lissage” de 3 bougies, comme dans l’indicateur d’origine. Il est vrai que je n’avais pas spécifié cela dans ma première interprétation !

    Voilà le code :

    // Détermination des plus hauts pour les périodes 13,21,34
    HIGH1 = highest[13](High)
    HIGH2 = highest[21](High)
    HIGH3 = highest[34](High)
    
    // Détermination des plus bas pour les périodes 13,21,34
    LOW1 = Lowest[13](Low)
    LOW2 = Lowest[21](Low)
    LOW3 = Lowest[34](Low)
    
    BufferH = ((High-HIGH1) + (High-HIGH2) + (High-HIGH3))
    BufferL = ((LOW1-Low) + (LOW2-Low) + (LOW3-Low))
    
    B = ExponentialAverage[3](BufferH)
    R = ExponentialAverage[3](BufferL)
    
    Return B coloured (0,255,0) as "LigneDesPLusHauts" , R coloured (255,0,0) as "LigneDesPlusBas"

     

    Et ça colle à l’indicateur d’origine dont tu as posté l’image. Well done ! 🙂

    #5206 quote
    Ruddy
    Participant
    Senior

    Bonjour Nicolas,

    MERCI pour ton aide. Effectivement, ça fonctionne bien mieux maintenant.

    J’avais essayé de le coder avec une moyenne arithmétique et une autre moyenne. Ca ne changeait pas fondamentalement l’allure des courbes. De même en  lissant les moyennes exponentielles sur 5 périodes au lieu de 3.

    Bon, maintenant, yapuka !

    #5209 quote
    Nicolas
    Keymaster
    Master

    En effet, sur des périodes de lissage aussi petite, ça ne change pas grand chose visuellement ! 🙂 Si tu arrives à en faire ressortir des choses intéressantes, n’hésite pas ! (ou pour n’importe quoi d’autre d’ailleurs)

Viewing 11 posts - 1 through 11 (of 11 total)
  • You must be logged in to reply to this topic.

Comment calculer cet indicateur mql4 dans Probuilder


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Ruddy @ruddy Participant
Summary

This topic contains 10 replies,
has 2 voices, and was last updated by Nicolas
9 years, 10 months ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 03/24/2016
Status: Active
Attachments: No files
Logo Logo
Loading...