Marquer le plus haut et le plus bas d’un graphe

Viewing 12 posts - 1 through 12 (of 12 total)
  • Author
    Posts
  • #178730 quote
    Abouadam2
    Participant
    New

    Bonjour,

    Svp j’ai cherché longtemps mais sans succès , je souhaite Savoir s’il y a un indicateur qui permet quelque soit l’UT  choisie de tracer le dernier plus haut et le dernier plus bas , en prenant en compte uniquement les impulsions ( pas les corrections ) .

    Merci d’avance

    #178732 quote
    Nicolas
    Keymaster
    Legend

    Merci de définir “impulsion” et “correction” afin de pouvoir coder ta définition en langage machine.

    #178741 quote
    Abouadam2
    Participant
    New

    Hello,

    IMPULSION: N’importe quel mouvement qui va dans la direction de la tendance.

    CORRECTION : N’importe quel mouvement qui va contre la tendance (au sein de la même tendance )

    Je joins ici un exemple de la paire forex  USDCAD ou je dessine les Highs les Lows dans les Timeframes ( Weekly, daily, 4h  et 1h )

    D’avance Merci

    Screenshot-USDCAD-Weekly.png Screenshot-USDCAD-Weekly.png Screenshot-USDCAD-1D.png Screenshot-USDCAD-1D.png Screenshot-USDCAD-4h.png Screenshot-USDCAD-4h.png Screenshot-USDCAD-1h.png Screenshot-USDCAD-1h.png
    #178765 quote
    Nicolas
    Keymaster
    Legend

    Très bien, comment est déterminé la tendance selon toi ? Avec l’histogramme du MACD comme dans ton exemple ? Rouge tendance baissière, dés que c’est vert c’est une tendance haussière ? Merci pour ces précisions indispensable pour la bonne compréhension de ce qu’il faut coder.

    #178823 quote
    Abouadam2
    Participant
    New

    En effet je me base sur le MACD et surtout  les croisements qu’il fait , Comme illustré dans la pièce jointe 1 :   il faut utiliser l’impulsion qui a complété un croisement( Crossover ) c’est à dire :  MACD  Vert + MACD  rouge +  MACD  Vert (  Cross-over qui complète l’impulsion baissière )-

    pour aller plus loin si le MACD fait un prochain cross-over c.à.d du rouge , Nous aurons donc : MACD   Rouge  + MACD   vert +  le nouveau MACD  rouge ”qui vient compléter l’impulsion”  alors  la dernière impulsion H4 deviendra comme suit (cf.pièce jointe 2 ). et donc mes High et low devront être mis à jour.

    Precision-_Last-impulse.png Precision-_Last-impulse.png impulsion-completee.png impulsion-completee.png
    #178844 quote
    Nicolas
    Keymaster
    Legend

    Ci-joint l’esquisse de ton projet. A vérifier / commenter.

    //https://www.prorealcode.com/topic/marquer-le-plus-haut-et-le-plus-bas-dun-graphe/
    
    defparam drawonlastbaronly=true
    
    // --- settings
    fast = 12
    slow = 26
    factor = 1.0
    // --- end of settings
    
    fast = round(fast*factor)
    slow = round(slow*factor)
    
    myMACD=exponentialaverage[fast]-exponentialaverage[slow]
    
    drawsegment(maxistartprev,maxiprev,barindex,maxiprev) coloured(0,200,200) style(dottedline,1)
    drawsegment(ministartprev,miniprev,barindex,miniprev) coloured(200,200,0) style(dottedline,1)
    
    if myMACD>0 then
    //store the mini
    if mymacd[1]<0 then 
    miniprev=mini
    ministartprev=ministart
    endif
    mini = high
    maxi = max(maxi,high)
    if maxi<>maxi[1] then 
    maxistart=barindex
    endif
    endif
    if myMACD<0 then 
    if mymacd[1]>0 then 
    maxiprev=maxi
    maxistartprev=maxistart
    endif
    mini = min(mini,low)
    maxi = mini
    if mini<>mini[1] then 
    ministart=barindex
    endif
    endif
    
    RETURN
    
    DAX-4-hours.png DAX-4-hours.png
    #178855 quote
    Abouadam2
    Participant
    New

    Merci pour cette version, qui fonctionne assez bien  , deux types remarques , visuels et fonctionnel .

    1- En  testant , les Lowest et le Highest sont bon dans toutes les TF ( W,D,4H ) sauf  pour  le 1H , car il ne faut pas considérer le croisement lorsqu’il est constitué de 1 seule barre d’histogramme ( Cf. pièce jointe ) (pour cette modif peux tu stp indiquer dans le code quel valeur il faut modifier au cas ou c’est 2 barre de l’histogramme au lieu de 1 )

    Remarques visuelle :

    1- Est il possible de mettre une couleur différente pour distinguer le couple  de lignes dans les différentes UT ( vert pour les H1 , bleu pour les H4  , magenta pour les 1D et Jaune pour les 1W ?

    2- Est il possible d’ajouter un  label à chaque fois dans chacune des deux  lignes pour indiquer quelle Timeframe ces lignes concerne elle   ( W – D – 4H, 1H)

    3- Est il possible lorsqu’on est dans une UT inférieur afficher toutes les lignes des Higgest et lowest des  UT supérieur ( le but étant de savoir quand on va casser le niveau de la Timeframe courante pour se diriger vers le niveau suivant ?

    Merci

    Merci d’anvace

    Remarque-1.png Remarque-1.png
    #179133 quote
    Abouadam2
    Participant
    New

    Hello ,  j’espère que ma demande n’est pas trop compliquée 🙂

    #179169 quote
    Nicolas
    Keymaster
    Legend

    A tester, notamment pour la condition de X barres dessus / dessous pour valider un niveau, avec la variable “decay”, ici par défaut à 2.

    //https://www.prorealcode.com/topic/marquer-le-plus-haut-et-le-plus-bas-dun-graphe/
    
    defparam drawonlastbaronly=true
    
    timeframe(1 hour, updateonclose)
    
    // --- settings
    fast = 12
    slow = 26
    factor = 1.0
    decay = 2
    // --- end of settings
    
    fast = round(fast*factor)
    slow = round(slow*factor)
    
    myMACD=exponentialaverage[fast]-exponentialaverage[slow]
    
    if summation[decay](myMACD>0)=decay then
    //store the mini
    if mymacd[decay]<0 then
    miniprev=mini
    ministartprev=ministart
    endif
    mini = high
    maxi = max(maxi,high)
    if maxi<>maxi[1] then
    maxistart=barindex
    endif
    endif
    if summation[decay](myMACD<0)=decay then
    if mymacd[decay]>0 then
    maxiprev=maxi
    maxistartprev=maxistart
    endif
    mini = min(mini,low)
    maxi = mini
    if mini<>mini[1] then
    ministart=barindex
    endif
    endif
    
    timeframe(default)
    drawsegment(maxistartprev,maxiprev,barindex,maxiprev) coloured(0,200,200) style(dottedline,2)
    drawsegment(ministartprev,miniprev,barindex,miniprev) coloured(200,200,0) style(dottedline,2)
    drawtext("H1",maxistartprev,maxiprev,dialog,bold,20) coloured(0,200,200)
    drawtext("H1",ministartprev,miniprev,dialog,bold,20) coloured(200,200,0)
    
    RETURN
    #179170 quote
    Nicolas
    Keymaster
    Legend

    Pour obtenir plusieurs lignes pour chaque timeframe, créer plusieurs indicateurs et changer dans chacun la ligne 5 avec le nom du timeframe désiré. Les couleurs, épaisseurs et style de lignes peuvent être modifiées aux lignes 44/45 avec les instructions coloured et style.

    Le nom du timeframe est également à modifier aux lignes 46 et 47 avec les DRAWTEXT.

    #179202 quote
    Abouadam2
    Participant
    New

    merci beaucoup , je vais regarder ca

    si je comprends bien quand je suis dans l’UT  1h  par exemple  je deverais avoir  5 indicteurs chargés ( celui de l’ut courante ici 1h ,puis les indicateurs pour 4h.1d ,1w et 1M )

    #179230 quote
    Nicolas
    Keymaster
    Legend

    C’est en effet ce que je propose, au lieu de coder un gros indicateur, tu as déjà la solution en dupliquant le code dans 5 versions différentes.

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

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Marquer le plus haut et le plus bas d’un graphe


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Abouadam2 @abouadam2 Participant
Summary

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

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 09/29/2021
Status: Active
Attachments: 8 files
Logo Logo
Loading...