Variazione percentuale

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #121772 quote
    dollarieur
    Participant
    Senior

    Ciao,
    ti chiedo 2 regole per poter evidenziare titoli che, nelle ultime X candele abbiano avuto una variazione percentuale >= 30%.

    La prima regola mi dovrebbe elencare titoli che abbiano registrato un AUMENTO >= 30%, MENTRE la seconda regola mi dovrebbe elencare titoli che abbiano registrato una DIMINUZIONE del valore >= 30%.

    Circa il numero delle candele nelle quali “registrare” tale variazione è, se possibile, >=10 e <=20. Cioè…se la variazione percentuale si fosse verificata ad es. in 9 (o 21) candele, allora no..non da elencare ma, se al contrario tale variazione fosse avvenuta in un numero di candele compreso tra 10 e 20…allora si, titolo da elencare.

    In ultimo, la variazione deve essere calcolata tra i punti ESTREMI delle candele (minimi / massimi) e NON tra i prezzi di apertura / chiusura delle stesse.

    Grazie ciao

    #121776 quote
    robertogozzi
    Moderator
    Master
    MinCandele = 10     //10 candele almeno
    MaxCandele = 20     //20 candele massimo
    NumCandele = (MaxCandele - MinCandele) + 1
    PerCent    = 1.30   //30%
    HH         = highest[NumCandele](high[MinCandele - 1])
    LL         = lowest[NumCandele](low[MinCandele - 1])
    Diff       = HH - LL
    Bullish    = 1
    FOR i = MinCandele TO MaxCandele
       j = i - 1
       IF high[j] = HH THEN
          break
       ENDIF
       IF low[j] = LL THEN
          Bullish    = 0
          break
       ENDIF
    NEXT
    x = Diff * 100 / HH
    y = x >= PerCent
    IF Bullish = 0 THEN
       y = 0
    ENDIF
    SCREENER[y](x AS "%")
    MinCandele = 10     //10 candele almeno
    MaxCandele = 20     //20 candele massimo
    NumCandele = (MaxCandele - MinCandele) + 1
    PerCent    = 1.30   //30%
    HH         = highest[NumCandele](high[MinCandele - 1])
    LL         = lowest[NumCandele](low[MinCandele - 1])
    Diff       = abs(HH - LL)
    Bearish    = 1
    FOR i = MinCandele TO MaxCandele
       j = i - 1
       IF low[j] = LL THEN
          break
       ENDIF
       IF high[j] = HH THEN
          Bearish    = 0
          break
       ENDIF
    NEXT
    x = Diff * 100 / HH
    y = x >= PerCent
    IF Bearish = 0 THEN
       y = 0
    ENDIF
    SCREENER[y](x AS "%")

    Non le ho provate molto, solo una volta per vedere se c’erano errori di sintassi e se avevano un’apparenza corretta.

    #121782 quote
    dollarieur
    Participant
    Senior

    Ciao, molte grazie per la veloce risposta.

    Ho provato i due codici e funzionano entrambi. Tuttavia, ammetto di non capirne il funzionamento…ti faccio un esempio..or ora, a mercato MIB chiuso e con dati a fine giornata..ho appena effettuato la ricerca utilizzando la prima regola (CON CANDELE SETTIMANALI) : sinceramente, dopo il disastro borsistico di questi giorni mi aspettavo di trovare ZERO titoli….ed invece la regola me ne ha evidenziati, solo per il FTSE MIB..ben 25….! Utilizzo il primo titolo che compare..Azimut: il GAP massimo raggiunto tra il massimo della candela settimanale datata 20/1 ed oggi….è di -45.77%..ovviamente negativo…come è possibile che tale titolo rientri in tale lista? semmai dovvrebbe rientrare in quelli che hanno PERSO una percentuale >=30%..o sbaglio? In questo caso, in base a ciò che sto cercando, avrei voluto questo titolo comparisse nella SECONDA regola..non la prima nella quale, ads oggi…mi sarei aspettato ZERO titoli.

    Mi sono perso.. 🙂  Grazie!

    #121783 quote
    robertogozzi
    Moderator
    Master

    La Regola, 1 o 2 poco importa, guarda tra la candela 10 e 20 precedente, quindi a livello settimanale sono circa due mesi e mezzo fa.

    Penso sia quello.

    #121785 quote
    robertogozzi
    Moderator
    Master
    MinCandele = 10     //10 candele almeno
    MaxCandele = 20     //20 candele massimo
    drawrectangle(barindex[MinCandele - 1],HH,barindex[MaxCandele - 1],LL)
    return

    Metti questo indicatore sul grafico per  evidenziare le candele considerate.

    #121792 quote
    robertogozzi
    Moderator
    Master

    Scusami, l’indicatore corretto è:

    DEFPARAM DrawOnLastBarOnly = true
    MinCandele = 10     //10 candele almeno
    MaxCandele = 20     //20 candele massimo
    NumCandele = (MaxCandele - MinCandele) + 1
    HH         = highest[NumCandele](high[MinCandele - 1])
    LL         = lowest[NumCandele](low[MinCandele - 1])
    drawrectangle(barindex[MinCandele - 1],HH,barindex[MaxCandele - 1],LL)
    return
    #121793 quote
    robertogozzi
    Moderator
    Master

    Comunque hai ragione, c’è un errore alla riga 4 di entrambi, devi mettere 30 (non 1.30).

    Comunque l’indicatore ti può aiutare ad individuare chiaramente il periodo osservato.

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

Variazione percentuale


ProBuilder: Indicatori & Strumenti Personalizzati

New Reply
Author
author-avatar
dollarieur @dollarieur Participant
Summary

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

Topic Details
Forum: ProBuilder: Indicatori & Strumenti Personalizzati
Language: Italian
Started: 03/10/2020
Status: Active
Attachments: No files
Logo Logo
Loading...