Calcolo di un determinato percentile su dati di un indicatore

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

    Buongiorno Roberto.  Mi sembra di capire che non esiste una funzione percentile. Vorrei sapere come scrivere un codice che mi permetta di farlo. Esempio: ho un indicatore che mi mostra la media mobile a 20 periodi dei volumi. Su questo indicatore (quindi sul valore della MM20) vorrei calcolare dei valori percentile a mio piacimento in base a due parametri: durata e valore del percentile, per esempio il 20esimo o 75esimo percentile su gli ultimi 50, 100, 200 dati e così via. Grazie in anticipo

    #245210 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    No, non esiste.

    Cercherò di fartelo appena possibile.

    #245217 quote
    Iván GonzálezIván González
    Moderator
    Legend

    Ciao. Avevo un calcolo di percentile rank che ho adattato alla tua richiesta.

    // --------------------------------------------
    // Parametri personalizzabili
    // --------------------------------------------
    windowSize = 100       // Numero di barre da considerare (es. 50, 100, 200)
    percentile = 75        // Percentile desiderato (es. 20, 75, ecc.)
    mmPeriod = 20          // Periodo della media mobile
    
    // --------------------------------------------
    // Calcolo della media mobile sul volume
    // --------------------------------------------
    mmVolume = average[mmPeriod](volume)
    
    // --------------------------------------------
    // Costruzione dell'array dei valori MM
    // --------------------------------------------
    FOR i = 0 TO windowSize - 1 DO
    $serie[i] = mmVolume[i]
    NEXT
    
    // Ordina l'array in ordine crescente
    ArraySort($serie, ASCEND)
    
    // Calcola la posizione del percentile
    indice = round((percentile / 100) * (windowSize - 1))
    indice = min(indice, LastSet($serie))  // Protezione da overflow
    
    // Valore percentile
    valorePercentile = $serie[indice]
    
    // --------------------------------------------
    // Visualizzazione
    // --------------------------------------------
    return mmVolume coloured("gray") style(histogram,1) as "MM Volumi",valorePercentile coloured("orange") style(dottedline,2) as "Percentile"
    
    robertogozzi and Nicolas thanked this post
    #245272 quote
    SuperpensionatoSuperpensionato
    Participant
    Junior

    Si funziona. Grazie mille

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

Calcolo di un determinato percentile su dati di un indicatore


ProBuilder: Indicatori & Strumenti Personalizzati

New Reply
Author
Summary

This topic contains 3 replies,
has 3 voices, and was last updated by SuperpensionatoSuperpensionato
1 year, 5 months ago.

Topic Details
Forum: ProBuilder: Indicatori & Strumenti Personalizzati
Language: Italian
Started: 03/24/2025
Status: Active
Attachments: No files
ProRealCode ProRealCode
Loading...