Comment obtenir un signal dans l'histogramme avec ce code

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #99224 quote
    kallaganne
    Participant
    Junior

    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"
    
    #99234 quote
    Nicolas
    Keymaster
    Master

    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.

    #99255 quote
    kallaganne
    Participant
    Junior

    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

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

Comment obtenir un signal dans l'histogramme avec ce code


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
kallaganne @kallaganne Participant
Summary

This topic contains 2 replies,
has 2 voices, and was last updated by kallaganne
6 years, 9 months ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 05/23/2019
Status: Active
Attachments: No files
Logo Logo
Loading...