Conversion Gradient Trend

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #252677 quote
    Gigi
    Participant
    Senior

    Bonsoir,

    serait il possible la conversion de cet indicateur? Par avance, merci.

    #252703 quote
    Iván González
    Moderator
    Master

    voici

    //---------------------------------------------
    //PRC_Gradient Trend Filter by ChartPrime
    //version = 0
    //17.10.2025
    //Iván González @ www.prorealcode.com
    //Sharing ProRealTime knowledge
    //---------------------------------------------
    // --- User Inputs ---
    //---------------------------------------------
    // Source is hardcoded to 'close' price
    length = 25
    // Period for the color gradient range
    gradientLength = 100
    //---------------------------------------------
    // --- Appearance ---
    //---------------------------------------------
    // Positive Color (Green)
    color1R = 34
    color1G = 200
    color1B = 120
    // Negative Color (Red)
    color2R = 200
    color2G = 34
    color2B = 78
    // Signal Diamond Color (Orange)
    signalColorR = 255
    signalColorG = 165
    signalColorB = 0
    //---------------------------------------------
    // --- Indicator Calculations ---
    //---------------------------------------------
    // 1. Calculate the base line
    nf1 = ExponentialAverage[length](close)
    nf2 = ExponentialAverage[length](nf1)
    base = ExponentialAverage[length](nf2)
    // 2. Calculate the val for bands
    valSource = high - low
    valNf1 = ExponentialAverage[length](valSource)
    valNf2 = ExponentialAverage[length](valNf1)
    val = ExponentialAverage[length](valNf2)
    // 3. Calculate the bands based on Fibonacci ratios
    upper3 = base + val * 0.618 * 2.5
    upper2 = base + val * 0.382 * 2
    upper1 = base + val * 0.236 * 1.5
    lower1 = base - val * 0.236 * 1.5
    lower2 = base - val * 0.382 * 2
    lower3 = base - val * 0.618 * 2.5
    // 4. Calculate the trend difference to determine direction
    diff = base - base[2]
    // 5. Generate Signals on crossover/crossunder
    signalUp = diff CROSSES OVER 0
    signalDn = diff CROSSES UNDER 0
    //---------------------------------------------
    // --- Visualization ---
    //---------------------------------------------
    // Draw signal diamonds
    IF signalUp THEN
       drawtext("▲",barindex[1], base[1]) COLOURED(signalColorR, signalColorG, signalColorB)
    ENDIF
    IF signalDn THEN
       drawtext("▼",barindex[1], base[1]) COLOURED(signalColorR, signalColorG, signalColorB)
    ENDIF
    // Split the base line into two variables for dynamic coloring
    baseUp = undefined
    IF diff >= 0 THEN
       baseUp = base
       r=color1R
       g=color1G
       b=color1B
    else
       baseDown = base
       r=color2R
       g=color2G
       b=color2B
    ENDIF
    //---------------------------------------------
    // --- Gradient Color Calculation ---
    //---------------------------------------------
    // Find the min and max of 'diff' over the last 'gradientLength' bars
    lowestDiff = lowest[gradientLength](diff)
    highestDiff = highest[gradientLength](diff)
    irange = highestDiff - lowestDiff
    
    factor = 0.5 // Default to a neutral color if range is zero
    IF irange > 0 THEN
       // Normalize the current diff value to a 0-1 range
       factor = (diff - lowestDiff) / irange
    ENDIF
    // Interpolate each RGB component based on the factor
    // factor = 0 -> color2 (Red)
    // factor = 1 -> color1 (Green)
    red = round(color2R + factor * (color1R - color2R))
    green = round(color2G + factor * (color1G - color2G))
    blue = round(color2B + factor * (color1B - color2B))
    alpha=45
    
    colorbetween(upper1,lower1,red,green,blue,alpha)
    colorbetween(upper2,lower2,red,green,blue,alpha)
    colorbetween(upper3,lower3,red,green,blue,alpha)
    //---------------------------------------------
    RETURN base COLOURED(r, g, b) STYLE(line, 2) AS "Trend", upper3 AS "Upper Band 3"COLOURED(red,green,blue,alpha), upper2 AS "Upper Band 2"COLOURED(red,green,blue,alpha), upper1 AS "Upper Band 1"COLOURED(red,green,blue,alpha), lower1 AS "Lower Band 1"COLOURED(red,green,blue,alpha), lower2 AS "Lower Band 2"COLOURED(red,green,blue,alpha), lower3 AS "Lower Band 3"COLOURED(red,green,blue,alpha)
    
Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.

Conversion Gradient Trend


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Gigi @gigi Participant
Summary

This topic contains 1 reply,
has 2 voices, and was last updated by Iván González
3 months, 2 weeks ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 10/16/2025
Status: Active
Attachments: 1 files
Logo Logo
Loading...