Bonjour à tous,
Je débute dans le code ProBuilder aussi acceptez d’avance mes excuses si je ne respecte pas les habitudes de ce forum.
Je travaille sur un indicateur personnalisé en ProBuilder, qui affiche des briques WL Bars (type Renko) basées sur des ticks. J’utilise DRAWCANDLE pour afficher chaque brique avec Open, High, Low, Close, mais je ne parviens pas à obtenir l’affichage correct des briques sur mon graphique.
📌 Mon objectif :
- Afficher des briques individuelles (comme du Renko), sans ligne continue.
- Colorer les briques en vert (hausse) et rouge (baisse).
- Utiliser
DRAWCANDLE pour tracer chaque brique avec les bons indices de temps (ticks).
📌 Problème rencontré :
J’ai utilisé la syntaxe suivante, mais les briques ne s’affichent pas :
Ou encore avec une autre indexation :
Dans les deux cas, les briques ne s’affichent pas sur le graphique.
📌 Ma question :
1️⃣ Quelle est la bonne syntaxe pour afficher une brique avec DRAWCANDLE en mode ticks ?
2️⃣ Comment s’assurer que l’indexation barIndex[i] est bien prise en compte pour positionner les briques sur l’axe du temps ?
3️⃣ Y a-t-il une option ou un paramètre à modifier dans ProRealTime pour afficher correctement ces bougies ?
// BRCK Bars en ticks avec affichage sous forme de briques (Renko-like)
// Paramètres personnalisables
BrickSize = 6 * pointsize // Taille des briques BRCK Bars (Renko)
ActivateEMA = 1 // 1 = Activer EMA, 0 = Désactiver
EMAperiod = 20 // Période de l'EMA
// Initialisation
ONCE RenkoBase = close
ONCE dir = 0
ONCE bar = 0
// Construction des WL Bars basées sur les ticks
IF high > RenkoBase + BrickSize THEN
WHILE high > RenkoBase + BrickSize DO
RenkoBase = RenkoBase + BrickSize
bar = bar + 1
$open[bar] = $close[max(0, bar-1)]
$barIndex[bar] = barindex - (bar - i) // Correction de l’indexation
$color[bar] = 1
$close[bar] = RenkoBase
$high[bar] = max($open[bar], $close[bar]) // Définition du plus haut
$low[bar] = min($open[bar], $close[bar]) // Définition du plus bas
dir = 1
WEND
ELSIF low < RenkoBase - BrickSize THEN
WHILE low < RenkoBase - BrickSize DO
RenkoBase = RenkoBase - BrickSize
bar = bar + 1
$open[bar] = $close[max(0, bar-1)]
$barIndex[bar] = barindex - (bar - i) // Correction de l’indexation
$color[bar] = -1
$close[bar] = RenkoBase
$high[bar] = max($open[bar], $close[bar]) // Définition du plus haut
$low[bar] = min($open[bar], $close[bar]) // Définition du plus bas
dir = -1
WEND
ENDIF
// Application de l'EMA si activée
IF ActivateEMA = 1 THEN
emaValue = Average[EMAperiod](close) // Correction de la syntaxe
FOR i = bar DOWNTO 1 DO
$close[i] = emaValue
NEXT
ENDIF
// Affichage des briques WL Bars avec DRAWCANDLE
IF islastbarupdate AND bar > 2 THEN
FOR i = bar DOWNTO 1 DO
// Affichage des briques haussières (vert)
IF $color[i] = 1 THEN
DRAWCANDLE($open[i],$high[i],$low[i],$close[i]) COLOURED(0,255,0)
ELSE
// Affichage des briques baissières (rouge)
DRAWCANDLE ($open[i],$high[i],$low[i],$close[i]) COLOURED(255,0,0)
ENDIF
NEXT
ENDIF
RETURN
Merci d’avance pour votre aide !
Cordialement,