Scanner ProRealTime per candele doji nelle mie liste

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #259435 quote
    ACHILLE2
    Participant
    Junior

    Vorrei una scansione che mi fornisce le candele doji su delle mie liste grazie

    #259478 quote
    Nicolas
    Keymaster
    Legend

    Lo screener che ti ho creato analizza le candele di tutti i strumenti presenti nelle tue liste e seleziona solo quelle che formano un pattern Doji. Il Doji è una candela particolare in cui il prezzo di apertura e quello di chiusura sono praticamente identici, il che crea  un corpo molto piccolo o quasi inesistente.


    Lo screener riconosce quattro varianti di Doji. Il Doji Standard ha ombre simili sia sopra che sotto e indica indecisione generale del mercato. Il Dragonfly Doji ha un’ombra lunga verso il basso e quasi nessuna ombra in alto, ed è considerato un segnale potenziale di  inversione rialzista. Il Gravestone Doji è il contrario, con un’ombra lunga verso l’alto e quasi nulla in basso, e suggerisce una possibile inversione ribassista. Il Long-legged Doji ha ombre lunghe sia sopra che sotto e indica una forte indecisione o volatilità durante la seduta.


    Il parametro principale da regolare è DojiPercent, impostato di default a 5. Questo valore rappresenta la percentuale massima che il corpo della candela può occupare rispetto al range totale della candela. Se lo abbassi a 3 lo screener sarà più severo e troverà solo i Doji più puri. Se lo alzi a 8 o 10 sarà più permissivo e troverà più risultati.


    Nello screener vengono mostrate anche alcune colonne aggiuntive come la percentuale del corpo, il range totale della candela e la lunghezza delle ombre superiore e inferiore, così puoi vedere subito di che tipo di Doji si tratta senza aprire il grafico.

    // ============================================
    // Screener Candele DOJI
    // Identifica tutti i principali pattern Doji:
    //   - Doji standard
    //   - Dragonfly Doji
    //   - Gravestone Doji
    //   - Long-legged Doji
    // ============================================
    
    
    // --- Parametro regolabile ---
    DojiPercent = 5 // % massima del corpo rispetto al range totale della candela
                                                                                                                                                                                                                                                                                     
    // --- Calcolo del range e del corpo ---
    iRange       = high - low
    Body        = abs(close - open)
    UpperShadow = high - max(close, open)
    LowerShadow = min(close, open) - low
                                                                                                                                                                                                                                                                                     
    // --- Condizione base: il corpo deve essere molto piccolo rispetto al range ---
    // Evita divisione per zero
    isDoji = (irange > 0) and (body <= irange * DojiPercent / 100)
                                                                                                                                                                                                                                                                                     
    // --- Doji Standard: ombre simili sopra e sotto ---
    isStandardDoji = isDoji and (uppershadow > 0) and (lowershadow > 0) and (abs(uppershadow - lowershadow) <= irange * 0.3)
                                                                                                                                                                                                                                                                                     
    // --- Dragonfly Doji: ombra lunga in basso, ombra superiore minima ---
    isDragonfly = isDoji and (lowershadow >= irange * 0.6) and (uppershadow <= irange * 0.1)
                                                                                                                                                                                                                                                                                     
    // --- Gravestone Doji: ombra lunga in alto, ombra inferiore minima ---
    isGravestone = isDoji and (uppershadow >= irange * 0.6) and (lowershadow <= irange * 0.1)
                                                                                                                                                                                                                                                                                     
    // --- Long-legged Doji: ombre lunghe sia sopra che sotto ---
    isLongLegged = isDoji and (uppershadow >= irange * 0.3) and (lowershadow >= irange * 0.3)
                                                                                                                                                                                                                                                                                     
    // --- Segnale finale: qualsiasi tipo di Doji ---
    Signal = isStandardDoji OR isDragonfly OR isGravestone OR isLongLegged
                                                                                                                                                                                                                                                                                     
    SCREENER[Signal] (body / range * 100 AS "Corpo %", Range AS "Range", uppershadow AS "Ombra Alta", lowershadow AS "Ombra Bassa")
    
    GraHal thanked this post
    #259623 quote
    ACHILLE2
    Participant
    Junior

    Mille grazie , vorrei profittare della sua disponibilità per chiedere se è possibile fare una ricerca delle doji per il long (aggiungendo nella ricerca che il prezzo sia minore della media a 20 periodi e maggiore della media a 50 periodi) e l’altro per lo short (aggiungendo nella ricerca che il prezzo sia maggiore della media a 20 periodi e minore della media a 50 periodi .

    Ancora Grazie Saluti

    #259625 quote
    AI-vy
    Moderator
    Junior

    @achille2, puoi ottenere esattamente quello che chiedi creando due screener distinti:

    • uno per i setup Long (prezzo < media 20 e > media 50)
    • uno per i setup Short (prezzo > media 20 e < media 50)

    Qui sotto trovi il codice completo del tuo screener Doji originale, esteso con le condizioni sulle medie mobili a 20 e 50 periodi.

    Screener DOJI per setup Long

    // ============================================
    // Screener Candele DOJI - Setup LONG
    // ============================================
    
    // --- Parametro regolabile ---
    DojiPercent = 5 // % massima del corpo rispetto al range totale della candela
    
    // --- Calcolo del range e del corpo ---
    iRange       = high - low
    Body         = abs(close - open)
    UpperShadow  = high - max(close, open)
    LowerShadow  = min(close, open) - low
    
    // --- Condizione base: il corpo deve essere molto piccolo rispetto al range ---
    // Evita divisione per zero
    isDoji = (iRange > 0) AND (Body <= iRange * DojiPercent / 100)
    
    // --- Doji Standard: ombre simili sopra e sotto ---
    isStandardDoji = isDoji AND (UpperShadow > 0) AND (LowerShadow > 0) AND (abs(UpperShadow - LowerShadow) <= iRange * 0.3)
    
    // --- Dragonfly Doji: ombra lunga in basso, ombra superiore minima ---
    isDragonfly = isDoji AND (LowerShadow >= iRange * 0.6) AND (UpperShadow <= iRange * 0.1)
    
    // --- Gravestone Doji: ombra lunga in alto, ombra inferiore minima ---
    isGravestone = isDoji AND (UpperShadow >= iRange * 0.6) AND (LowerShadow <= iRange * 0.1)
    
    // --- Long-legged Doji: ombre lunghe sia sopra che sotto ---
    isLongLegged = isDoji AND (UpperShadow >= iRange * 0.3) AND (LowerShadow >= iRange * 0.3)
    
    // --- Medie mobili ---
    MM20 = Average[20](close)
    MM50 = Average[50](close)
    
    // --- Condizione trend per il LONG ---
    // Prezzo minore della media a 20 periodi e maggiore della media a 50 periodi
    LongFilter = (close < MM20) AND (close > MM50)
    
    // --- Segnale finale: qualsiasi tipo di Doji + filtro LONG ---
    Signal = (isStandardDoji OR isDragonfly OR isGravestone OR isLongLegged) AND LongFilter
    
    SCREENER[Signal] (Body / iRange * 100 AS "Corpo %", iRange AS "Range", UpperShadow AS "Ombra Alta", LowerShadow AS "Ombra Bassa", MM20 AS "MM20", MM50 AS "MM50")

    Screener DOJI per setup Short

    // ============================================
    // Screener Candele DOJI - Setup SHORT
    // ============================================
    
    // --- Parametro regolabile ---
    DojiPercent = 5 // % massima del corpo rispetto al range totale della candela
    
    // --- Calcolo del range e del corpo ---
    iRange       = high - low
    Body         = abs(close - open)
    UpperShadow  = high - max(close, open)
    LowerShadow  = min(close, open) - low
    
    // --- Condizione base: il corpo deve essere molto piccolo rispetto al range ---
    // Evita divisione per zero
    isDoji = (iRange > 0) AND (Body <= iRange * DojiPercent / 100)
    
    // --- Doji Standard: ombre simili sopra e sotto ---
    isStandardDoji = isDoji AND (UpperShadow > 0) AND (LowerShadow > 0) AND (abs(UpperShadow - LowerShadow) <= iRange * 0.3)
    
    // --- Dragonfly Doji: ombra lunga in basso, ombra superiore minima ---
    isDragonfly = isDoji AND (LowerShadow >= iRange * 0.6) AND (UpperShadow <= iRange * 0.1)
    
    // --- Gravestone Doji: ombra lunga in alto, ombra inferiore minima ---
    isGravestone = isDoji AND (UpperShadow >= iRange * 0.6) AND (LowerShadow <= iRange * 0.1)
    
    // --- Long-legged Doji: ombre lunghe sia sopra che sotto ---
    isLongLegged = isDoji AND (UpperShadow >= iRange * 0.3) AND (LowerShadow >= iRange * 0.3)
    
    // --- Medie mobili ---
    MM20 = Average[20](close)
    MM50 = Average[50](close)
    
    // --- Condizione trend per lo SHORT ---
    // Prezzo maggiore della media a 20 periodi e minore della media a 50 periodi
    ShortFilter = (close > MM20) AND (close < MM50)
    
    // --- Segnale finale: qualsiasi tipo di Doji + filtro SHORT ---
    Signal = (isStandardDoji OR isDragonfly OR isGravestone OR isLongLegged) AND ShortFilter
    
    SCREENER[Signal] (Body / iRange * 100 AS "Corpo %", iRange AS "Range", UpperShadow AS "Ombra Alta", LowerShadow AS "Ombra Bassa", MM20 AS "MM20", MM50 AS "MM50")

    Logica in breve:

    • La parte iniziale è identica al tuo screener: calcola iRange, Body, UpperShadow, LowerShadow e riconosce i quattro tipi di Doji usando isStandardDoji, isDragonfly, isGravestone, isLongLegged.
    • Si aggiungono due medie mobili semplici: MM20 = Average[20](close) e MM50 = Average[50](close).
    • Per il Long si usa la condizione: close < MM20 e close > MM50.
    • Per lo Short la condizione opposta: close > MM20 e close < MM50.
    • Il segnale finale combina il pattern Doji con il filtro di trend: Signal = (qualunque Doji) AND filtroLong/Short.
Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Scanner ProRealTime per candele doji nelle mie liste


ProScreener: Scansione Mercati & Screener

New Reply
Author
author-avatar
ACHILLE2 @achille2 Participant
Summary

This topic contains 3 replies,
has 3 voices, and was last updated by AI-vy
5 months, 3 weeks ago.

Topic Details
Forum: ProScreener: Scansione Mercati & Screener
Language: Italian
Started: 03/25/2026
Status: Active
Attachments: No files
Logo Logo
Loading...