Fibo dynamique : couleurs de bandeau CT/LT haussier ou baissier

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #258148 quote
    geroniman
    Participant
    Average

    bonjour

    j’aimerais pouvoir parametrer des couleurs de bandeau sur des fibo dynamique ( entre 38.2 et 61.8) court terme ( CT) et long terme (LT) avec une couleur verte si le bandeau est en hausse et en rouge si il est en baisse ( avec un degradé entre les bandeaux CT et LT.( sur ce graphique CT en Gris et LT en rose.

    voici l iTF fibo dynamique



    GCXXXX-1-minute.png GCXXXX-1-minute.png FIBO-2025-1.itf
    #258155 quote
    geroniman
    Participant
    Average
    #258162 quote
    Iván González
    Moderator
    Master

    Voici.

    // PARÁMETROS DE CONFIGURACIÓN
    ShorttermHH = 50
    ShorttermLL = 50
    LongtermHH = 200
    LongtermLL = 100
    
    // Transparencia del relleno (0 = invisible, 255 = opaco)
    alphaLevel = 40
    
    // --- CÁLCULOS LARGO PLAZO (LT) ---
    hhLT = Highest[LongtermHH](High)
    llLT = Lowest[LongtermLL](Low)
    rangeLT = hhLT - llLT
    
    LTfib107 = rangeLT * 0.107
    LTfib236 = rangeLT * 0.236
    LTfib382 = rangeLT * 0.382
    LTfib44 = rangeLT * 0.44
    LTfib500 = rangeLT * 0.5
    LTfib560 = rangeLT * 0.56
    LTfib618 = rangeLT * 0.618
    LTfib702 = rangeLT * 0.705
    LTfib744 = rangeLT * 0.7455
    LTfib786 = rangeLT * 0.786
    LTfib893 = rangeLT * 0.893
    
    LTlevel107 = hhLT - LTfib107
    LTlevel236 = hhLT - LTfib236
    LTlevel382 = hhLT - LTfib382 // Techo banda LT
    LTlevel44 = hhLT - LTfib44
    LTlevel500 = hhLT - LTfib500 // Centro LT
    LTlevel560 = hhLT - LTfib560
    LTlevel618 = hhLT - LTfib618 // Suelo banda LT
    LTlevel702 = hhLT - LTfib702
    LTlevel786 = hhLT - LTfib786
    LTlevel744 = hhLT - LTfib744
    LTlevel893 = hhLT - LTfib893
    
    // --- CÁLCULOS CORTO PLAZO (CT) ---
    hh = Highest[ShorttermHH](High)
    ll = Lowest[ShorttermLL](Low)
    rangeCT = hh - ll
    
    fib107 = rangeCT * 0.107
    fib236 = rangeCT * 0.236
    fib382 = rangeCT * 0.382
    fib44 = rangeCT * 0.44
    fib500 = rangeCT * 0.5
    fib560 = rangeCT * 0.56
    fib618 = rangeCT * 0.618
    fib702 = rangeCT * 0.705
    fib744 = rangeCT * 0.7455
    fib786 = rangeCT * 0.786
    fib893 = rangeCT * 0.893
    
    level107 = hh - fib107
    level236 = hh - fib236
    level382 = hh - fib382 // Techo banda CT
    level44 = hh - fib44
    level500 = hh - fib500 // Centro CT
    level560 = hh - fib560
    level618 = hh - fib618 // Suelo banda CT
    level786 = hh - fib786
    level702 = hh - fib702
    level744 = hh - fib744
    level893 = hh - fib893
    
    // --- LÓGICA DE COLORES Y RELLENO (COLORBETWEEN) ---
    
    // 1. Banda Largo Plazo (LT) - Entre 38.2 y 61.8
    IF LTlevel500 > LTlevel500[1] THEN
       // Tendencia Alcista: Verde
       rLT = 0
       gLT = 255
       bLT = 0
    ELSIF LTlevel500 < LTlevel500[1] THEN
       // Tendencia Bajista: Rojo
       rLT = 255
       gLT = 0
       bLT = 0
    ENDIF
    
    COLORBETWEEN(LTlevel382, LTlevel618, rLT, gLT, bLT, alphaLevel)
    
    // 2. Banda Corto Plazo (CT) - Entre 38.2 y 61.8
    IF level500 > level500[1] THEN
       // Tendencia Alcista: Verde
       rCT = 0
       gCT = 255
       bCT = 0
    ELSIF level500 < level500[1] THEN
       // Tendencia Bajista: Rojo
       rCT = 255
       gCT = 0
       bCT = 0
    ENDIF
    
    COLORBETWEEN(level382, level618, rCT, gCT, bCT, alphaLevel)
    
    // --- DIBUJO DE TEXTOS (Solo en la última barra) ---
    
    IF IsLastBarUpdate THEN
       DRAWTEXT("                                                                <= LT HIGH", BarIndex, hhLT, SansSerif, Bold, 20) COLOURED(250,250,0)
       DRAWTEXT("                                                                <= LT 10,7", BarIndex, LTlevel107, SansSerif, Bold, 18) COLOURED(250,150,0)
       DRAWTEXT("                                                                <= LT 23,6", BarIndex, LTlevel236, SansSerif, Bold, 18) COLOURED(250,150,0)
       DRAWTEXT("                                                                <= LT 38,2", BarIndex, LTlevel382, SansSerif, Bold, 18) COLOURED(257,128,0)
       DRAWTEXT("                                                                 <= LT 50,0", BarIndex, LTlevel500, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                 <= LT 56,0", BarIndex, LTlevel560, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                  <= LT 61,8", BarIndex, LTlevel618, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                  <= LT 70,5", BarIndex, LTlevel702, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                  <= LT 78,6", BarIndex, LTlevel786, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                  <= LT 74,4", BarIndex, LTlevel744, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                <= LT 89.3", BarIndex, LTlevel893, SansSerif, Bold, 18) COLOURED(250,250,0)
       DRAWTEXT("                                                                <= LT LOW", BarIndex, llLT, SansSerif, Bold, 20) COLOURED(250,250,0)
       
       DRAWTEXT("                                                           < CT HIGH", BarIndex-1, hh) COLOURED(250,250,0)
       DRAWTEXT("                                                           < CT 10,7", BarIndex-1, level107) COLOURED(250,250,0)
       DRAWTEXT("                                                           < CT 23,6", BarIndex-1, level236) COLOURED(250,250,0)
       DRAWTEXT("                                                           < CT 38,2", BarIndex-1, level382) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 50,0", BarIndex-1, level500) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 56", BarIndex-1, level560) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 61,8", BarIndex-1, level618) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 78,6", BarIndex-1, level786) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 70,5", BarIndex-1, level702) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT 89,3", BarIndex-1, level893) COLOURED(250,250,0)
       DRAWTEXT("                                                          < CT LOW", BarIndex-1, ll) COLOURED(250,250,0)
    ENDIF
    
    RETURN hhLT COLOURED(0,0,250) STYLE(line,3) AS "LT HIGH", LTlevel236 COLOURED(250,105,180) STYLE(dottedline,1) AS "LT 23,6", LTlevel107 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 10,7", LTlevel382 COLOURED(257,105,180) STYLE(line,2) AS "LT 38,2", LTlevel44 COLOURED(257,250,250) STYLE(dottedline,1) AS "LT 44", LTlevel500 COLOURED(250,105,180) STYLE(line,3) AS "LT 50,0", LTlevel560 COLOURED(250,250,0) STYLE(dottedline,1) AS "LT 56,0", LTlevel702 COLOURED(250,250,250) STYLE(dottedline,2) AS "LT 70.50", LTlevel618 COLOURED(250,105,180) STYLE(line,2) AS "LT 61,8", LTlevel786 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 78,6", LTlevel744 COLOURED(250,250,250) STYLE(dottedline,3) AS "LT 74,4", LTlevel893 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 89.3", llLT COLOURED(0,0,250) STYLE(line,3) AS "LT LOW", hh STYLE(line,3) AS "SHT HIGH", level107 COLOURED(250,250,0) AS "SHT 10,7", level236 COLOURED(0,250,0) AS "SHT 23,6", level382 COLOURED(0,250,0) AS "SHT 38,2", level44 COLOURED(250,250,0) AS "SHT 44", level500 COLOURED(0,250,0) AS "SHT 50,0", level560 COLOURED(250,250,0) AS "SHT 56", level618 COLOURED(0,250,0) AS "SHT 61,8", level786 COLOURED(0,250,0) AS "SHT 78,6", level744 COLOURED(250,250,0) AS "SHT 74,4", level893 COLOURED(250,250,0) AS "SHT 89,3", level702 COLOURED(250,250,0) AS "SHT 70,5", ll STYLE(line,3) AS "SHT LOW"
    
    #258195 quote
    geroniman
    Participant
    Average

    merci bien GRACIAS Ivan. la modification que j aimerais avoir

    1- les textes des fibo s’affichent en plus à chaque barre donc c’est illisible. sur l indic “Fibo” de base, les fibo s’affichent une seule fois.

    2- il y a t’il la possibilité d’avoir un parametrage qui permet d’afficher soit le bandeau CT soit le bandeau LT en cliquant sur un bouton par exemple?

    Merci encore pour ton aide precieuse.

    ps: j ai changé la couleur les LT pour etre plus lisible.( en rose/bleu)

    MGC-17FEV1M.png MGC-17FEV1M.png
    #258199 quote
    Iván González
    Moderator
    Master

    Ah, d’accord. Pour le premier problème, saisissez ceci sur la première ligne : « DEFPARAM DrawOnLastBarOnly = true ».

    Pour le second, vous devrez créer 2 variables booléennes « ShowCT » et « ShowLT ».

    DEFPARAM DrawOnLastBarOnly = true
    
    // --- VISUALIZATION PARAMETERS ---
    // (Set these in the indicator settings window as "Boolean")
    ShowCT = 1 // Show CT
    ShowLT = 1 // Show LT
    
    // --- CALCULATION PARAMETERS ---
    ShorttermHH = 50
    ShorttermLL = 50
    LongtermHH = 200
    LongtermLL = 100
    
    // Fill transparency (0 = invisible, 255 = opaque)
    alphaLevel = 40
    
    // --------------------------------------
    // --- LONG TERM CALCULATIONS (LT) ---
    // --------------------------------------
    hhLT = Highest[LongtermHH](High)
    llLT = Lowest[LongtermLL](Low)
    rangeLT = hhLT - llLT
    
    // Mathematical calculations
    LTfib107 = rangeLT * 0.107
    LTfib236 = rangeLT * 0.236
    LTfib382 = rangeLT * 0.382
    LTfib44 = rangeLT * 0.44
    LTfib500 = rangeLT * 0.5
    LTfib560 = rangeLT * 0.56
    LTfib618 = rangeLT * 0.618
    LTfib702 = rangeLT * 0.705
    LTfib744 = rangeLT * 0.7455
    LTfib786 = rangeLT * 0.786
    LTfib893 = rangeLT * 0.893
    
    // LT Levels assignment
    LTlevel107 = hhLT - LTfib107
    LTlevel236 = hhLT - LTfib236
    LTlevel382 = hhLT - LTfib382
    LTlevel44 = hhLT - LTfib44
    LTlevel500 = hhLT - LTfib500
    LTlevel560 = hhLT - LTfib560
    LTlevel618 = hhLT - LTfib618
    LTlevel702 = hhLT - LTfib702
    LTlevel786 = hhLT - LTfib786
    LTlevel744 = hhLT - LTfib744
    LTlevel893 = hhLT - LTfib893
    
    // --------------------------------------
    // --- SHORT TERM CALCULATIONS (CT) ---
    // --------------------------------------
    hh = Highest[ShorttermHH](High)
    ll = Lowest[ShorttermLL](Low)
    rangeCT = hh - ll
    
    // Mathematical calculations
    fib107 = rangeCT * 0.107
    fib236 = rangeCT * 0.236
    fib382 = rangeCT * 0.382
    fib44 = rangeCT * 0.44
    fib500 = rangeCT * 0.5
    fib560 = rangeCT * 0.56
    fib618 = rangeCT * 0.618
    fib702 = rangeCT * 0.705
    fib744 = rangeCT * 0.7455
    fib786 = rangeCT * 0.786
    fib893 = rangeCT * 0.893
    
    // CT Levels assignment
    level107 = hh - fib107
    level236 = hh - fib236
    level382 = hh - fib382
    level44 = hh - fib44
    level500 = hh - fib500
    level560 = hh - fib560
    level618 = hh - fib618
    level786 = hh - fib786
    level702 = hh - fib702
    level744 = hh - fib744
    level893 = hh - fib893
    
    
    // --------------------------------------
    // --- VISUALIZATION LOGIC (ON/OFF) ---
    // --------------------------------------
    
    // 1. LONG TERM MANAGEMENT (LT)
    IF ShowLT THEN
       // LT Trend Colors
       IF LTlevel500 > LTlevel500[1] THEN
          rLT = 0
          gLT = 255
          bLT = 0
       ELSE
          rLT = 255
          gLT = 0
          bLT = 0
       ENDIF
       
       // LT Fill drawing
       COLORBETWEEN(LTlevel382, LTlevel618, rLT, gLT, bLT, alphaLevel)
       
    ELSE
       // If ShowLT is false, hide lines by assigning UNDEFINED
       hhLT = UNDEFINED
       llLT = UNDEFINED
       LTlevel107 = UNDEFINED
       LTlevel236 = UNDEFINED
       LTlevel382 = UNDEFINED
       LTlevel44 = UNDEFINED
       LTlevel500 = UNDEFINED
       LTlevel560 = UNDEFINED
       LTlevel618 = UNDEFINED
       LTlevel702 = UNDEFINED
       LTlevel744 = UNDEFINED
       LTlevel786 = UNDEFINED
       LTlevel893 = UNDEFINED
    ENDIF
    
    
    // 2. SHORT TERM MANAGEMENT (CT)
    IF ShowCT THEN
       // CT Trend Colors
       IF level500 > level500[1] THEN
          rCT = 0
          gCT = 255
          bCT = 0
       ELSE
          rCT = 255
          gCT = 0
          bCT = 0
       ENDIF
       
       // CT Fill drawing
       COLORBETWEEN(level382, level618, rCT, gCT, bCT, alphaLevel)
       
    ELSE
       // If ShowCT is false, hide lines by assigning UNDEFINED
       hh = UNDEFINED
       ll = UNDEFINED
       level107 = UNDEFINED
       level236 = UNDEFINED
       level382 = UNDEFINED
       level44 = UNDEFINED
       level500 = UNDEFINED
       level560 = UNDEFINED
       level618 = UNDEFINED
       level702 = UNDEFINED
       level744 = UNDEFINED
       level786 = UNDEFINED
       level893 = UNDEFINED
    ENDIF
    
    
    // --------------------------------------
    // --- TEXT DRAWING (Last bar only) ---
    // --------------------------------------
    
    IF IsLastBarUpdate THEN
       
       // LT Texts (Only if ShowLT is active)
       IF ShowLT THEN
          DRAWTEXT("                                                                <= LT HIGH", BarIndex, hhLT, SansSerif, Bold, 20) COLOURED(250,250,0)
          DRAWTEXT("                                                                <= LT 10,7", BarIndex, LTlevel107, SansSerif, Bold, 18) COLOURED(250,150,0)
          DRAWTEXT("                                                                <= LT 23,6", BarIndex, LTlevel236, SansSerif, Bold, 18) COLOURED(250,150,0)
          DRAWTEXT("                                                                <= LT 38,2", BarIndex, LTlevel382, SansSerif, Bold, 18) COLOURED(257,128,0)
          DRAWTEXT("                                                                 <= LT 50,0", BarIndex, LTlevel500, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                 <= LT 56,0", BarIndex, LTlevel560, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                  <= LT 61,8", BarIndex, LTlevel618, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                  <= LT 70,5", BarIndex, LTlevel702, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                  <= LT 78,6", BarIndex, LTlevel786, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                  <= LT 74,4", BarIndex, LTlevel744, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                <= LT 89.3", BarIndex, LTlevel893, SansSerif, Bold, 18) COLOURED(250,250,0)
          DRAWTEXT("                                                                <= LT LOW", BarIndex, llLT, SansSerif, Bold, 20) COLOURED(250,250,0)
       ENDIF
       
       // CT Texts (Only if ShowCT is active)
       IF ShowCT THEN
          DRAWTEXT("                                                           < CT HIGH", BarIndex-1, hh) COLOURED(250,250,0)
          DRAWTEXT("                                                           < CT 10,7", BarIndex-1, level107) COLOURED(250,250,0)
          DRAWTEXT("                                                           < CT 23,6", BarIndex-1, level236) COLOURED(250,250,0)
          DRAWTEXT("                                                           < CT 38,2", BarIndex-1, level382) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 50,0", BarIndex-1, level500) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 56", BarIndex-1, level560) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 61,8", BarIndex-1, level618) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 78,6", BarIndex-1, level786) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 70,5", BarIndex-1, level702) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT 89,3", BarIndex-1, level893) COLOURED(250,250,0)
          DRAWTEXT("                                                          < CT LOW", BarIndex-1, ll) COLOURED(250,250,0)
       ENDIF
    ENDIF
    
    RETURN hhLT COLOURED(0,0,250) STYLE(line,3) AS "LT HIGH", LTlevel236 COLOURED(250,105,180) STYLE(dottedline,1) AS "LT 23,6", LTlevel107 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 10,7", LTlevel382 COLOURED(257,105,180) STYLE(line,2) AS "LT 38,2", LTlevel44 COLOURED(257,250,250) STYLE(dottedline,1) AS "LT 44", LTlevel500 COLOURED(250,105,180) STYLE(line,3) AS "LT 50,0", LTlevel560 COLOURED(250,250,0) STYLE(dottedline,1) AS "LT 56,0", LTlevel702 COLOURED(250,250,250) STYLE(dottedline,2) AS "LT 70.50", LTlevel618 COLOURED(250,105,180) STYLE(line,2) AS "LT 61,8", LTlevel786 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 78,6", LTlevel744 COLOURED(250,250,250) STYLE(dottedline,3) AS "LT 74,4", LTlevel893 COLOURED(250,250,250) STYLE(dottedline,1) AS "LT 89.3", llLT COLOURED(0,0,250) STYLE(line,3) AS "LT LOW", hh STYLE(line,3) AS "SHT HIGH", level107 COLOURED(250,250,0) AS "SHT 10,7", level236 COLOURED(0,250,0) AS "SHT 23,6", level382 COLOURED(0,250,0) AS "SHT 38,2", level44 COLOURED(250,250,0) AS "SHT 44", level500 COLOURED(0,250,0) AS "SHT 50,0", level560 COLOURED(250,250,0) AS "SHT 56", level618 COLOURED(0,250,0) AS "SHT 61,8", level786 COLOURED(0,250,0) AS "SHT 78,6", level744 COLOURED(250,250,0) AS "SHT 74,4", level893 COLOURED(250,250,0) AS "SHT 89,3", level702 COLOURED(250,250,0) AS "SHT 70,5", ll STYLE(line,3) AS "SHT LOW"
    


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

Fibo dynamique : couleurs de bandeau CT/LT haussier ou baissier


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
geroniman @geroniman Participant
Summary

This topic contains 4 replies,
has 2 voices, and was last updated by Iván González
1 week, 3 days ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 02/16/2026
Status: Active
Attachments: 5 files
Logo Logo
Loading...