modification de l'indicateur PRC_QuickFibTL avec de nouvelles options

Viewing 15 posts - 1 through 15 (of 59 total)
  • Author
    Posts
  • #88333 quote
    swapping
    Participant
    Master
    //PRC_Quick Fib Trend Line | indicator
    //09.01.2019 (release 1.1)
    //Nicolas @ www.prorealcode.com
    //Sharing ProRealTime knowledge
    
    DefParam DrawOnLastBarOnly = true
    
    // --- settings
    //period                = 100 // lookback period of the Fibonacci Retracement
    //DrawRetracementBlocks = 1   // 0=false ; 1=true
    //TrendLine             = 1   // 0=false ; 1=true
    // --- end of settings
    
    hh = 0
    ll = low
    shiftlowest = barindex
    for i = period downto 1 do
    if high[i]>hh then
    hh = high[i]
    shifthighest = barindex[i]
    endif
    if low[i]<ll then
    ll = low[i]
    shiftlowest = barindex[i]
    endif
    next
    
    if trendline = 1 then
    // contour lines option
    shiftContourDown = barindex-shiftHighest
    highestSlope = 0
    counth = max(1,(barindex-shifthighest))
    for i = 2 to counth do
    thisSlope = (High[i] - hh) / ((barindex-shiftHighest) - i)
    
    if (thisSlope >= highestSlope or highestSlope = 0) then
    shiftContourDown = i
    highestSlope = thisSlope
    endif
    next
    shiftContourUp = barindex-shiftLowest
    LowestSlope = 0
    countl = max(1,(barindex-shiftLowest))
    for i = 2 to countl do
    thisSlope = (low[i] - ll) / ((barindex-shiftLowest) - i)
    
    if (thisSlope <= LowestSlope or LowestSlope = 0) then
    shiftContourUp = i
    LowestSlope = thisSlope
    endif
    next
    DrawLine(shifthighest,hh,barindex[shiftcontourdown],high[shiftcontourdown]) coloured(r,g,b)
    DrawLine(shiftlowest,ll,barindex[shiftcontourup],low[shiftcontourup]) coloured(r,g,b)
    endif
    
    isSwingDown = shiftHighest < shiftLowest
    
    if isSwingDown then
    fullrange = abs(hh-ll)
    fibo100   = hh
    fibo0     = ll
    fibo236   = ll+(fullrange*0.236)
    fibo382   = ll+(fullrange*0.382)
    fibo50    = ll+fullrange/2
    fibo618   = ll+(fullrange*0.618)
    fibo764   = ll+(fullrange*0.764)
    startbar  = min(shifthighest,shiftlowest)
    r = 200
    g = 0
    b = 0
    else
    fullrange = abs(hh-ll)
    fibo100   = ll
    fibo0     = hh
    fibo236   = hh-(fullrange*0.236)
    fibo382   = hh-(fullrange*0.382)
    fibo50    = hh-fullrange/2
    fibo618   = hh-(fullrange*0.618)
    fibo764   = hh-(fullrange*0.764)
    startbar  = min(shifthighest,shiftlowest)
    r = 0
    g = 200
    b = 0
    endif
    
    if Fibonacci = 1 then
    if startbar>0 then
    // plot fibonacci levels
    DrawSegment(startbar,fibo100,barindex,fibo100) coloured(r,g,b)
    DrawText("              100%",barindex,fibo100,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo0,barindex,fibo0) coloured(r,g,b)
    DrawText("          0%",barindex,fibo0,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo236,barindex,fibo236) coloured(r,g,b)
    DrawText("              23.6%",barindex,fibo236,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo382,barindex,fibo382) coloured(r,g,b)
    DrawText("              38.2%",barindex,fibo382,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo50,barindex,fibo50) coloured(r,g,b)
    DrawText("              50.0%",barindex,fibo50,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo618,barindex,fibo618) coloured(r,g,b)
    DrawText("              61.8%",barindex,fibo618,Dialog,Standard,11) coloured(r,g,b)
    DrawSegment(startbar,fibo764,barindex,fibo764) coloured(r,g,b)
    DrawText("              76.4%",barindex,fibo764,Dialog,Standard,11) coloured(r,g,b)
    // plot price at 0% and 100% levels
    DrawText("HI #hh#",shifthighest,hh+fullrange*0.03,dialog,standard,11) coloured(255,0,0)
    DrawText("LO #ll#",shiftlowest,ll-fullrange*0.03,dialog,standard,11) coloured(0,255,0)
    endif
    endif
    
    // retracement blocks
    if DrawRetracementBlocks then
    if not isSwingDown then
    blockprice = hh
    startbar = barindex-shifthighest
    for i = startbar downto 2 do
    if low[i]<blockprice then
    blockprice = low[i]
    blockbar = barindex[i]
    endif
    next
    DrawRectangle(blockbar,blockprice,barindex,ll) coloured(r,g,b)
    else
    blockprice = ll
    startbar = barindex-shiftlowest
    for i = startbar downto 2 do
    if high[i]>blockprice then
    blockprice = high[i]
    blockbar = barindex[i]
    endif
    next
    DrawRectangle(blockbar,blockprice,barindex,hh) coloured(r,g,b)
    endif
    
    endif
    
    return
    

    Modification du code PRC_QuickFib réalisé par Nicolas consistant à l’ajout du niveau de 76.4% Fibonacci ainsi que l’ajout de 2 cases à cocher pour masquer “les niveaux de Fibonacci” et/ou “les Lignes de tendance oblique” afin de sélectionner visuellement ce qui vous sert le plus sans avoir besoin de mettre les mains dans le cambouis en espérant que la balise [Add PRT code] fonctionne correctement 😉

    Il y a également le fichier PRC_QuickFibTL.itf en pièce jointe

    crolakstrading and Yannick thanked this post
    PRC_QuickFibTL.itf
    #88338 quote
    swapping
    Participant
    Master

    La représentation du code initial aménagé avec photo des variables

    PRC_QuickFibTL.png PRC_QuickFibTL.png
    #88340 quote
    supertiti
    Participant
    Master

    ! Bien joue Swapping  !

    Comme je vois que tu maitrises bien le sujet je vais abuser de ton savoir.

    Comme les lignes de tendances prennent comme datas les plus hauts et les plus bas et que les supports et resistances

    sont plus une zone que un point , est il possible d ajouter le me^me code en prenant en compte les ” close ” pour

    dessiner une bande en place d une ligne .

    plus hauts et close hauts et plus bas et close bas

    a suivre

    crolakstrading thanked this post
    #88395 quote
    Nicolas
    Keymaster
    Master

    est il possible d ajouter le me^me code en prenant en compte les ” close ” pour

    On me l’a demandé dans un autre sujet du forum Anglais, sans avoir testé, en théorie il faudrait simplement remplacer toutes les références aux High[] et Low[] par des Close[]. Bonne change 😉

    swapping thanked this post
    #88398 quote
    swapping
    Participant
    Master

    Je suis en train de “bricoler” sur cette configuration et j’en ai déjà une (en cours de test) qui devrais “peut-être” intéresser supertiti et aussi d’autres traders (je vais étudier ta suggestion avec les high et low par des close)

    en ce moment je ne modifie que les data du rectangle “retracement blocks” et ajouté un offset en variable externe permettant de “grossir” la ligne de tendance “support/résistance” pour quelle visualise une “zone” mais le truc c’est que quand je mets la variable à zéro, j’ai un seul trait épais (donc impec pour visualiser le support le plus bas ou la résistance la plus haute et des que je mets une valeur (par exemple de 5), cela dessine une zone comme le demande supertiti…

    bref je teste çà dans toutes les situations et si c’est bon je mettrais le code ici en faisant peut-être une version allégé du tiens c’est à dire le code du (PRC_QuickFib) en supprimant les indications de Fibonacci et en ne laissant que les lignes de tendances obliques (TLS et TLR) ou segment d’ailleurs par case à cocher et soit une ligne épaisse visualisant “support ou résistance” avec variable externe “thickness” à 0 ou, visualiser une zone des que l’on mets une valeur dans cette variable 🙂

    @ un peu plus tard

    #88405 quote
    supertiti
    Participant
    Master

    @ Swapping

     

    Epaissir les lignes de tendances est une demande que j’ai faite auprès de PRT il y a des mois et je n’ai toujours pas eu de réponse !! peut-être dans une nouvelle version ?

    Pouvoir épaissir ces lignes serait un vrai plus pour les bigleux comme moi

    Bonne après midi

    #88410 quote
    crolakstrading
    Participant
    Senior

    great work here!!! Thank you!

    #88423 quote
    swapping
    Participant
    Master

    Bonjour, je vous soumets la dernière modification du code original “PRC_QuikFib” réalisé par Nicolas avec l’ajout du niveau 76.4% de Fibonacci et des cases à cocher permettant de choisir

    • la visualisation du retracement de Fibonacci (ou masquer)
    • la visualisation des lignes de tendance oblique TrendLine (ou leurs segments respectif)
    • la visualisation de la ligne de support ou résistance OU une zone rectangulaire Area (réglable en hauteur)
    • Réglage Thickness de la hauteur de la zone rectangulaire

    J’ai joint 2 images sur le même actif avec la même Période mais avec des unités de temps différentes pour visualiser le sens haussier ou baissier calculé d’après les signaux

    J’aimerais quand même avoir l’aval de Nicolas qui est l’initiateur du code original pour qu’il y jette un oeil afin de vérifier si le code est bien écrit ou si on peut l’optimiser (étant encore un novice dans ce domaine )

    A oui, j’ai volontairement rebaptisé cette version avec le fichier à disposition en PRC_TrendLine Area.itf

    Nicolas thanked this post
    PRC_TrendLine-Area.itf PRC_TrendLine-Area-baissier.png PRC_TrendLine-Area-baissier.png PRC_TrendLine-Area-haussier.png PRC_TrendLine-Area-haussier.png
    #88440 quote
    supertiti
    Participant
    Master

    Bonsoir Swapping,

    Dans ton dernier code à quoi sert le zone thickness ?

    Je joins une image de AXA , est-il possible d’intégrer dans le code les supports/résistances de même périodes les lignes correspondantes aux “closes” en ajout

    aux high and low pour déterminer une zone. (elipses jaunes et lignes jaunes)

    Bonne après midi

    AXA-Trendlines.jpg AXA-Trendlines.jpg
    #88442 quote
    swapping
    Participant
    Master

    hello supertiti, mais explication ne sont donc pas assez claire tu m’en voit navré

    le “thickness” sert à modifier la “hauteur ou largeur” de la fameuse “zone = area” qui est la représentation d’un rectangle que tu crée à la place d’une ligne qui n’est présente que s’il y a “zéro = 0” en thickness

    dès qu’il y a une valeur (2 par défaut) tu a ce fameux rectangle (zone = area) qui est la visualisation d’une zone “support” de couleur rouge pour une tendance baissière “TLS”  ou “résistance” de couleur verte pour une tendance haussière “TLR” que j’ai pu obtenir sans repartir à zéro sur le code de Nicolas et c’est pour cette raison que je ne peux pas (pour l’instant) faire apparaitre les 2 zones en même temps “donc support en bas” ET “résistance en haut” sous forme de rectangle !

     

    voila, bonne après midi tout de même

    #88443 quote
    supertiti
    Participant
    Master

    c est plus clair pour moi merci, est il possible d apres toi de coder ma derniere requete ?

    #88477 quote
    Fr7
    Participant
    Master

    Bonjour Swapping,

    Pourriez-vous faire le code en utilisant l’extension fibonacci?

    #88486 quote
    swapping
    Participant
    Master

    Bonjour Fr7, cela n’est pas possible en l’état puisque l’indicateur calcule le 0 à 100% de Fibonacci (donc borné) en prenant en compte le plus haut et le plus bas du range ce qui fait que dès qu’une de ses valeurs augmentent, les niveaux de Fibonacci sont automatiquement recalculés. Il n’est donc pas possible de dépasser le 100% pour par exemple indiquer le 127% ! J’espère avoir était clair dans mon explication ?


    @supertiti
    , pour la demande du rectangle prenant en compte les closes, franchement je ne vois pas comment m’y prendre ! Peut-être que Nicolas pourras voir une solution à moment perdu ?

    #88648 quote
    Nicolas
    Keymaster
    Master

    Bravo @swapping ! , j’adore l’ambiance qui règne ici.


    @supertiti
    , tu voulais quoi exactement ? Toujours des Close à la place des High/Low ?

    #88669 quote
    supertiti
    Participant
    Master

    Bonjour Nicolas, bonjour à tous,

    J’ai remplacé les high/low par close dans ton code comme tu me l’avais suggéré mais ce n’est pas satisfaisant !

    Je souhaiterais délimiter une bande haute et basse constituée des plus hauts plus bas et d’une deuxième ligne constituée des closes dans la periode retenue (150,100 etc ) en tenant compte

    des closes les plus éloignés.Le tout formant une parallèle.

    j’ai mis un graphe d’Axa 5 posts plus haut pour illustrer ce que j’aimerais avoir.

    merci pour ton apport toujours positif

    Bonne journée

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

modification de l'indicateur PRC_QuickFibTL avec de nouvelles options


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
swapping @swapping Participant
Summary

This topic contains 58 replies,
has 7 voices, and was last updated by Nicolas
3 years ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 01/10/2019
Status: Active
Attachments: 30 files
Logo Logo
Loading...