Bonjour,
Dans le code suivant qui est issu de prorealcode comment obtenir un signal sous forme d’histogramme du style +1 et -1, plutôt que des chandeliers de couleur comme dans le code ci-dessous. Je cherche juste à remplacer le signal donné par les bougies de couleurs bleues et rouges, que les signaux apparaissent sous forme d’histogramme.
Merci d’avance pour votre aide.
Vincent
//Donchian bias determinator indicator
//05-11-2017
//Marcel van Vliet
// mmTYPE=1 (mm type)
//irsi = rsi[14]
Upper = HIGHEST[55](HIGH[1])
Lower = LOWEST[55](LOW[1])
Middle = (Upper + Lower) / 2
bodyhigh = max(open,close)
bodylow = min(open,close)
if(open<=close and close > Upper) then
LongWickUp = high
LongCandleUp = bodyHigh
LongWickDown = low
LongCandleDown = bodyLow
elsif(open>=close and close > Upper) then
LongWickUp = low
LongCandleUp = bodyLow
LongWickDown = high
LongCandleDown = bodyHigh
elsif(open<=close and close < Lower) then
ShortWickUp = high
ShortCandleUp = bodyHigh
ShortWickDown = low
ShortCandleDown = bodyLow
elsif(open>=close and close < Lower) then
ShortWickUp = low
ShortCandleUp = bodyLow
ShortWickDown = high
ShortCandleDown = bodyHigh
elsif(open<=close and close < Upper and close > Lower) then
RangeWickUp = high
RangeCandleUp = bodyHigh
RangeWickDown = low
RangeCandleDown = bodyLow
elsif(open>=close and close < Upper and close > Lower) then
RangeWickUp = low
RangeCandleUp = bodyLow
RangeWickDown = high
RangeCandleDown = bodyHigh
endif
//bullish candlesticks
if close>Upper then
DRAWCANDLE(LongCandleDown,LongWickUp,LongWickDown,LongCandleUp) coloured(0,0,102)
endif
//bearish candlesticks
if close<Lower then
DRAWCANDLE(ShortCandleDown,ShortWickUp,ShortWickDown,ShortCandleUp) coloured(102,0,0)
endif
//neutral candlesticks (Donchian channel)
if close<Upper and close>Lower then
DRAWCANDLE(RangeCandleDown,RangeWickUp,RangeWickDown,RangeCandleUp) coloured(150,150,150)
endif
RETURN upper AS "upper", lower AS "lower", middle AS "middle"
On remplacera simplement les instructions graphiques permettant de tracer des chandeliers par une variable auquelle on affectera la valeur 1 ou -1. (cf. la formation à la programmation : https://www.prorealcode.com/courses/premiers-pas-avec-la-programmation-pour-prorealtime/
//Donchian bias determinator indicator
//05-11-2017
//Marcel van Vliet
// mmTYPE=1 (mm type)
//irsi = rsi[14]
Upper = HIGHEST[55](HIGH[1])
Lower = LOWEST[55](LOW[1])
//Middle = (Upper + Lower) / 2
//bodyhigh = max(open,close)
//bodylow = min(open,close)
//
//if(open<=close and close > Upper) then
//LongWickUp = high
//LongCandleUp = bodyHigh
//LongWickDown = low
//LongCandleDown = bodyLow
//elsif(open>=close and close > Upper) then
//LongWickUp = low
//LongCandleUp = bodyLow
//LongWickDown = high
//LongCandleDown = bodyHigh
//elsif(open<=close and close < Lower) then
//ShortWickUp = high
//ShortCandleUp = bodyHigh
//ShortWickDown = low
//ShortCandleDown = bodyLow
//elsif(open>=close and close < Lower) then
//ShortWickUp = low
//ShortCandleUp = bodyLow
//ShortWickDown = high
//ShortCandleDown = bodyHigh
//elsif(open<=close and close < Upper and close > Lower) then
//RangeWickUp = high
//RangeCandleUp = bodyHigh
//RangeWickDown = low
//RangeCandleDown = bodyLow
//elsif(open>=close and close < Upper and close > Lower) then
//RangeWickUp = low
//RangeCandleUp = bodyLow
//RangeWickDown = high
//RangeCandleDown = bodyHigh
//endif
//bullish candlesticks
if close>Upper then
//DRAWCANDLE(LongCandleDown,LongWickUp,LongWickDown,LongCandleUp) coloured(0,0,102)
signal=1
endif
//bearish candlesticks
if close<Lower then
//DRAWCANDLE(ShortCandleDown,ShortWickUp,ShortWickDown,ShortCandleUp) coloured(102,0,0)
signal=-1
endif
//neutral candlesticks (Donchian channel)
if close<Upper and close>Lower then
//DRAWCANDLE(RangeCandleDown,RangeWickUp,RangeWickDown,RangeCandleUp) coloured(150,150,150)
signal=0
endif
RETURN signal//upper AS "upper", lower AS "lower", middle AS "middle"
Toutes les références aux variables nécessaires pour la construction des bougies ont aussi été supprimées.
Un grand merci Nicolas encore une fois, c’est super !!!
Juste une chose par rapport à mon autre topic sur les trendlines automatiques sur indicateur… vu qu’il est possible que certaines se dessinent automatiquement sur des indicateurs de divergences, comme tu l’as déjà codé sur des divergences de rsi par exemple, ce ne serait pas faisable pour détecter et relier des creux et des sommets sur l’indicateur TSI ?
Merci d’avance de ta réponse et encore pour ton aide sur ce dernier code.
Amicalement,
Vincent