Indicateur de marubozu

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #259440 quote
    Deakkon
    Participant
    Junior

    Bonjour,

    Certainement le sujet a déjà été abordé mais dans 172 pages de forum, difficile de s’y retrouver (pas de barre de recherche pour mot clés ?)


    Existe t’il un indicateur configurable pour detecter un marubozu ?

    Marubozu dans le sens inverse de la bougie precedente ?

    Sur tout time frame et configurable en longueur de corps et longueur de meches (par exemple)



    Merci du coup de main.

    #259443 quote
    JC_Bywan
    Moderator
    Master

    Bonjour,

    dans le nouveau site, le moteur de recherche a été amélioré en performance, et se trouve dans le menu déroulant “help” en haut de la page. On peut aussi y accéder par le menu déroulant apparaissant en survolant son avatar en haut à droite.

    Lien direct: https://www.prorealcode.com/search/


    #259448 quote
    Nicolas
    Keymaster
    Master

    L’icône de la loupe à droite permet de lancer une recherche directement. Le lien vers la page de recherche est aussi disponible dans le menu Help de la barre de menu.

    Je devrais peut être penser à ajouter un widget de recherche supplémentaire dans la page principale des forums ? 🙂 Je le note !


    #259460 quote
    Deakkon
    Participant
    Junior

    Bonjour, merci pour cette réponse sur le moteur de recherche.

    Et pour mon indicateur Svp ?


    #259476 quote
    Nicolas
    Keymaster
    Master

    en repartant de ce code:

    Maribozu Indicator with Arrow and label

    voici la version qui détecte le marubozu avec quelques paramètres réglables comme requis dans ta demande et qui suit une bougie inverse:

    // ================================================
     // MARUBOZU INVERSE - Indicateur configurable
     // Détecte un Marubozu dans le sens inverse de la
     // bougie précédente, avec paramètres configurables
     // Compatible tous time frames
     // ================================================
                                                                                                                                                                                                                                                                                     
     // --- PARAMETRES CONFIGURABLES ---
     // Ratio minimal corps/range pour définir un Marubozu (ex: 80 = 80%)
     BodyRatioMin = 80
                                                                                                                                                                                                                                                                                     
     // Ratio maximal mèche haute / corps (ex: 10 = max 10% du corps)
     WickTopMaxPct = 10
                                                                                                                                                                                                                                                                                     
     // Ratio maximal mèche basse / corps (ex: 10 = max 10% du corps)
     WickBotMaxPct = 10
                                                                                                                                                                                                                                                                                     
     // Ratio minimal corps / ATR pour filtrer les mini-bougies (ex: 50 = 50% de l'ATR)
     MinBodyATRPct = 50
                                                                                                                                                                                                                                                                                     
     // Période ATR pour le filtre de taille
     ATRPeriod = 14
                                                                                                                                                                                                                                                                                     
     // Afficher le label texte (1=oui, 0=non)
     ShowLabel = 1
                                                                                                                                                                                                                                                                                     
     // --- CALCULS ---
     atr = AverageTrueRange[ATRPeriod](close)
                                                                                                                                                                                                                                                                                     
     // Corps brut et valeur absolue
     bodyRaw = close - open
     abody   = abs(bodyRaw)
                                                                                                                                                                                                                                                                                     
     // Range de la bougie
     rng = high - low
                                                                                                                                                                                                                                                                                     
     // Mèche haute et basse
     if close > open then
         wtop = high - close
         wbot = open - low
     else
         wtop = high - open
         wbot = close - low
     endif
                                                                                                                                                                                                                                                                                     
     // Ratio corps/range en pourcentage
     if rng > 0 then
         bodyRatio = (abody / rng) * 100
     else
         bodyRatio = 0
     endif
                                                                                                                                                                                                                                                                                     
     // Ratio mèches/corps en pourcentage
     if abody > 0 then
         wickTopRatio = (wtop / abody) * 100
         wickBotRatio = (wbot / abody) * 100
     else
         wickTopRatio = 999
         wickBotRatio = 999
     endif
                                                                                                                                                                                                                                                                                     
     // --- CONDITIONS MARUBOZU ---
     // 1. Corps suffisamment grand par rapport au range
     bigBody = (bodyRatio >= BodyRatioMin)
                                                                                                                                                                                                                                                                                     
     // 2. Mèches suffisamment petites par rapport au corps
     smallWicks = (wickTopRatio <= WickTopMaxPct) AND (wickBotRatio <= WickBotMaxPct)
                                                                                                                                                                                                                                                                                     
     // 3. Corps suffisamment grand par rapport à l'ATR
     bigEnough = (abody >= (atr * MinBodyATRPct / 100))
                                                                                                                                                                                                                                                                                     
     // 4. Marubozu haussier (bougie actuelle verte)
     isBullMarubozu = (bodyRaw > 0) AND bigBody AND smallWicks AND bigEnough
                                                                                                                                                                                                                                                                                     
     // 5. Marubozu baissier (bougie actuelle rouge)
     isBearMarubozu = (bodyRaw < 0) AND bigBody AND smallWicks AND bigEnough
                                                                                                                                                                                                                                                                                     
     // --- CONDITION INVERSE DE LA BOUGIE PRECEDENTE ---
     // Marubozu haussier APRES une bougie baissière
     bullishReversal = isBullMarubozu AND (close[1] < open[1])
                                                                                                                                                                                                                                                                                     
     // Marubozu baissier APRES une bougie haussière
     bearishReversal = isBearMarubozu AND (close[1] > open[1])
    
    
     // --- AFFICHAGE ---
     if bullishReversal then
         DRAWARROWUP(barindex, low - atr * 0.5) COLOURED(0, 200, 80)
         if ShowLabel then
             DRAWTEXT("Bull Marubozu", barindex, low - atr * 1.2, Dialog, Bold, 10) COLOURED(0, 200, 80)
         endif
     endif
                                                                                                                                                                                                                                                                                     
     if bearishReversal then
         DRAWARROWDOWN(barindex, high + atr * 0.5) COLOURED(220, 40, 40)
         if ShowLabel then
             DRAWTEXT("Bear Marubozu", barindex, high + atr * 1.2, Dialog, Bold, 10) COLOURED(220, 40, 40)
         endif
     endif
                                                                                                                                                                                                                                                                                     
     RETURN
    
    Iván González thanked this post
    marubozu-indicator.png marubozu-indicator.png
    #259517 quote
    Deakkon
    Participant
    Junior

    Je n’arrive pas a le faire fonctionner (pardon d’être débutant …)

    Je dois le mettre en tant que “nouvel indicateur” a creer ?

    ça m’affiche un nouveau panneau d’indicateur dans le bas de mon graphique … vide …

    #259520 quote
    JC_Bywan
    Moderator
    Master

    Bonjour,

    Il faut le mettre dans la fenêtre du prix, pas en indicateur ayant son panneau séparé en bas.

    • Soit tu es sur PRT version v12, et dans la fenêtre du code en bas à gauche, il faut choisir entre “sur prix” et “nouveau panneau” avant d’appliquer l’indicateur au graphique, sélectionne “sur prix”.
    • Soit tu es en version antérieure à la v12, et voici comment on faisait avant : https://www.prorealcode.com/topic/probleme-affichage-sur-graphique/


    Iván González thanked this post
    #259567 quote
    Deakkon
    Participant
    Junior

    c est 👌

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

Indicateur de marubozu


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Deakkon @deakkon Participant
Summary

This topic contains 7 replies,
has 3 voices, and was last updated by Deakkon
2 weeks, 6 days ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 03/26/2026
Status: Active
Attachments: 1 files
Logo Logo
Loading...