Conversion de code Pine Script
Forums › ProRealTime forum Français › Support ProBuilder › Conversion de code Pine Script
- This topic has 0 replies, 1 voice, and was last updated 12 hours ago by Gmx91.
-
-
12/18/2024 at 5:16 PM #241573
Bonjour, pouvez-vous m’aider à convertir ce code pine script en Probuilder pour PRT ?
//@version=5
indicator(title=’Heatmap Volume [xdecow]’, shorttitle=’HMV [xdecow]’, format=format.volume)
//——————————————————————————
// Inputslength = input.int(610, title=’MA Length’, minval = 2, tooltip = ‘Moving Average Length\n\n- Smaller values will respond more quickly and activate more frequently. (Best for short-term analysis)\n- Larger values will have a slower response, will be less sensitive to small volume variations, and will highlight large volumes. (Best for long-term analysis)\n\nFormula: How many stdev is the volume far from the Moving Average?’)
slength = input.int(610, title=’Standard Deviation Length’, minval=2, tooltip = ‘Standard Deviation lookback period.\n\nFormula: How many stdev is the volume far from the Moving Average?’)g_hmz = ‘Heatmap Threshold Multipliers’
thresholdExtraHigh = input.float(4, title=’Extra High Multiplier’, tooltip = ‘Volume Threshold Multiplier\neg: 4 = 400% or 4 x Stdev above the mean’, group=g_hmz)
thresholdHigh = input(2.5, title=’High Multiplier’, group=g_hmz)
thresholdMedium = input.float(1, title=’Medium Multiplier’, group=g_hmz)
thresholdNormal = input(-0.5, title=’Normal Multiplier’, group=g_hmz)//——————————————————————————
// Colors// config
g_color = ‘Color settings’
bcolor_enabled = input(true, ‘Colored bars’, group = g_color)
zmode = input.string(‘Backgrounds’, ‘Display Heatmap Zones as’, options=[‘None’, ‘Lines’, ‘Backgrounds’, ‘Both’], group = g_color)
cmode = input.string(‘Heatmap’, ‘Color Mode’, options=[‘Heatmap’, ‘Up/Down’], group = g_color, tooltip = ‘- Heatmap mode: colors based only on volume.\n- Up/Down mode: colors based on candle volume and direction.\nChange the cores below according to the selected mode.’)// heatmap colors
chm1 = #ff0000 // extra high red
chm2 = #ff7800 // high orange
chm3 = #ffcf03 // medium yellow
chm4 = #a0d6dc // normal
chm5 = #1f9cac // low// heatmap colors
g_mhcolor = ‘Heatmap colors’
chmthresholdExtraHigh = input(chm1, ‘Extra High’, group=g_mhcolor)
chmthresholdHigh = input(chm2, ‘High’, group=g_mhcolor)
chmthresholdMedium = input(chm3, ‘Medium’, group=g_mhcolor)
chmthresholdNormal = input(chm4, ‘Normal’, group=g_mhcolor)
chmthresholdLow = input(chm5, ‘Low’, group=g_mhcolor)// up colors
g_up = ‘Up colors’
cupthresholdExtraHigh = input(#00FF00, ‘Extra High’, group = g_up)
cupthresholdHigh = input(#30FF30, ‘High’, group = g_up)
cupthresholdMedium = input(#60FF60, ‘Medium’, group = g_up)
cupthresholdNormal = input(#8FFF8F, ‘Normal’, group = g_up)
cupthresholdLow = input(#BFFFBF, ‘Low’, group = g_up)// down colors
g_down = ‘Down colors’
cdnthresholdExtraHigh = input(#FF0000, ‘Extra High’, group = g_down)
cdnthresholdHigh = input(#FF3030, ‘High’, group = g_down)
cdnthresholdMedium = input(#FF6060, ‘Medium’, group = g_down)
cdnthresholdNormal = input(#FF8F8F, ‘Normal’, group = g_down)
cdnthresholdLow = input(#FFBFBF, ‘Low’, group = g_down)// threshold colors
cthresholdExtraHighUp = cmode == ‘Heatmap’ ? chmthresholdExtraHigh : cupthresholdExtraHigh
cthresholdHighUp = cmode == ‘Heatmap’ ? chmthresholdHigh : cupthresholdHigh
cthresholdMediumUp = cmode == ‘Heatmap’ ? chmthresholdMedium : cupthresholdMedium
cthresholdNormalUp = cmode == ‘Heatmap’ ? chmthresholdNormal : cupthresholdNormal
cthresholdLowUp = cmode == ‘Heatmap’ ? chmthresholdLow : cupthresholdLowcthresholdExtraHighDn = cmode == ‘Heatmap’ ? chmthresholdExtraHigh : cdnthresholdExtraHigh
cthresholdHighDn = cmode == ‘Heatmap’ ? chmthresholdHigh : cdnthresholdHigh
cthresholdMediumDn = cmode == ‘Heatmap’ ? chmthresholdMedium : cdnthresholdMedium
cthresholdNormalDn = cmode == ‘Heatmap’ ? chmthresholdNormal : cdnthresholdNormal
cthresholdLowDn = cmode == ‘Heatmap’ ? chmthresholdLow : cdnthresholdLow//——————————————————————————
// Calcslength := length > bar_index + 1 ? bar_index + 1 : length
slength := slength > bar_index + 1 ? bar_index + 1 : slengthdir = close > open
mean = ta.sma(volume, length)
std = ta.stdev(volume, slength)// how many stdev is the volume far from the mean?
// eg: stdbar = 2.5, is 2.5 * stdev above the mean (2.5 * stdev + mean)
stdbar = (volume – mean) / stdbcolor = stdbar > thresholdExtraHigh ? dir ? cthresholdExtraHighUp : cthresholdExtraHighDn : stdbar > thresholdHigh ? dir ? cthresholdHighUp : cthresholdHighDn : stdbar > thresholdMedium ? dir ? cthresholdMediumUp : cthresholdMediumDn : stdbar > thresholdNormal ? dir ? cthresholdNormalUp : cthresholdNormalDn : dir ? cthresholdLowUp : cthresholdLowDn
// heatmap lines
zshow_lines = zmode == ‘Lines’ or zmode == ‘Both’
zshow_backgrounds = zmode == ‘Backgrounds’ or zmode == ‘Both’ts1 = std * thresholdExtraHigh + mean
ts2 = std * thresholdHigh + mean
ts3 = std * thresholdMedium + mean
ts4 = std * thresholdNormal + mean
ts0 = 0tsDelta = ts1 – ts2
tst = ts1 + tsDelta//——————————————————————————
// Plotsbarcolor(bcolor_enabled ? bcolor : na, editable=false)
// hidden heatmap lines to fill
pt = plot(zshow_backgrounds ? tst : na, color=na, display=display.none, editable=false)
p0 = plot(zshow_backgrounds ? ts0 : na, color=na, display=display.none, editable=false)
p1 = plot(zshow_backgrounds ? ts1 : na, color=na, display=display.none, editable=false)
p2 = plot(zshow_backgrounds ? ts2 : na, color=na, display=display.none, editable=false)
p3 = plot(zshow_backgrounds ? ts3 : na, color=na, display=display.none, editable=false)
p4 = plot(zshow_backgrounds ? ts4 : na, color=na, display=display.none, editable=false)// heatmap fills
tpf = 85
fill(pt, p1, color.new(chm1, tpf), title=’Extra High heatmap zone’)
fill(p1, p2, color.new(chm2, tpf), title=’High heatmap zone’)
fill(p2, p3, color.new(chm3, tpf), title=’Medium heatmap zone’)
fill(p3, p4, color.new(chm4, tpf), title=’Normal heatmap zone’)
fill(p4, p0, color.new(chm5,tpf), title=’Low heatmap zone’)// volume
plot(volume, color=bcolor, style=plot.style_columns, title=’Volume’, editable=false)// moving average
plot(mean, color=color.new(#000000, 0), linewidth=2, title=’Moving Average’, style=plot.style_line, display=display.none)// heatmap lines
tpp = 50
plot(zshow_lines ? ts1 : na, color=color.new(chm1, tpp), title=’Extra High heatmap line’)
plot(zshow_lines ? ts2 : na, color=color.new(chm2, tpp), title=’High heatmap line’)
plot(zshow_lines ? ts3 : na, color=color.new(chm3, tpp), title=’Medium heatmap line’)
plot(zshow_lines ? ts4 : na, color=color.new(chm4, tpp), title=’Normal heatmap line’)//——————————————————————————
// AlertsconditionExtraHigh = stdbar > thresholdExtraHigh
conditionHigh = stdbar <= thresholdExtraHigh and stdbar > thresholdHigh
conditionMedium = stdbar <= thresholdHigh and stdbar > thresholdMedium
conditionNormal = stdbar <= thresholdMedium and stdbar > thresholdNormal
conditionLow = stdbar <= thresholdNormal alertcondition(conditionExtraHigh, title='Any Extra High Vol', message='Any Bar Extra High Volume Threshold') alertcondition(conditionExtraHigh and open < close, title='Up Extra High', message='Up Bar Extra High Volume Threshold') alertcondition(conditionExtraHigh and open > close, title=’Down Extra High’, message=’Down Bar Extra High Volume Threshold’)alertcondition(conditionHigh, title=’Any High Vol’, message=’Any Bar High Volume Threshold’)
alertcondition(conditionHigh and open < close, title='Up High Vol', message='Up Bar High Volume Threshold') alertcondition(conditionHigh and open > close, title=’Down High Vol’, message=’Down Bar High Volume Threshold’)alertcondition(conditionMedium, title=’Any Medium Vol’, message=’Any Bar Medium Volume Threshold’)
alertcondition(conditionMedium and open < close, title='Up Medium Vol', message='Up Bar Medium Volume Threshold') alertcondition(conditionMedium and open > close, title=’Down Medium Vol’, message=’Down Bar Medium Volume Threshold’) -
AuthorPosts
Find exclusive trading pro-tools on