Intraday Max/Low

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #116887 quote
    SAM
    Participant
    Senior

    Ciao a tutti, è possibile creare un indicatore che calcoli il max e mix della precedente candela a 4 ore, ed aggiungerlo al grafico dei prezzi con time-frame inferiori(5-10-15 min?)

    Grazie mille

    SAM

    #116900 quote
    robertogozzi
    Moderator
    Master

    Come deve mostrarteli, con un segmento, un testo… ?

    #116932 quote
    SAM
    Participant
    Senior

    Ciao Roberto, una linea orizzontale andrebbe benissimo..

    ti spiego cosa vorrei fare… vorrei testare un break-out o down di un grafico 5min o 1 min  calcolato sul Massimo o minimo della candela di 4 ore precedente…

    Grazie mille

    #116942 quote
    robertogozzi
    Moderator
    Master

    Eccolo:

    DEFPARAM CalculateOnLastBars = 1000
    DEFPARAM DrawOnLastBarOnly   = true
    IF (OpenHour MOD 4 = 1) AND (OpenHour <> OpenHour[1]) THEN
        Minimo  = low
        Massimo = high
        Barra   = barindex
    ENDIF
    Minimo  = min(low,Minimo)
    Massimo = max(high,Massimo)
    DRAWSEGMENT(Barra,Massimo,barindex,Massimo) coloured(0,128,0,255)
    DRAWSEGMENT(Barra,Minimo,barindex,Minimo)   coloured(255,0,0,255)
    RETURN
    x-5.jpg x-5.jpg
    #117010 quote
    SAM
    Participant
    Senior

    Grazie mille Roberto!!

    #117241 quote
    SAM
    Participant
    Senior

    Ciao Roberto, ti ringrazio moltissimo per il codice.

    Volevo segnalarti che però io avevo intenzione di creare un indicatore che mi segnasse il Max e Min. della candela di 4H precedente, non di quella in corso. In oltre se si poteva creare una indicatore con linee continue tipo quello che posto nell’esempio.

    Grazie mille…

    EURUSD-15-Minuti.png EURUSD-15-Minuti.png
    #117247 quote
    robertogozzi
    Moderator
    Master

    Meglio, la soluzione è più semplice.

    Colora te le linee tramite le proprietà:

    DEFPARAM CalculateOnLastBars = 1000
    IF (OpenHour MOD 4 = 1) AND (OpenHour <> OpenHour[1]) THEN
        MassimoPrec = Massimo
        MinimoPrec  = Minimo
        Minimo      = low
        Massimo     = high
    ENDIF
    Minimo  = min(low,Minimo)
    Massimo = max(high,Massimo)
    RETURN MinimoPrec as “Min”,MassimoPrec as “Massimo"

    edit: Ho variato il codice dopo averlo postato.

    #117428 quote
    SAM
    Participant
    Senior

    Ciao Roberto, ho provato a trasformare il codice che hai programmato in uno screener, ma sembra non funzionare….

    IF (OpenHour MOD 4= 1) AND (OpenHour <> OpenHour[1]) THEN
    Massimoprec= Massimo
    Minimoprec = Minimo
    Minimo = low
    Massimo = high
    ENDIF
    Minimo = min(low,Minimo)
    Massimo = max(high,Massimo)
    
    c1=close crosses over Massimoprec
    c2= close crosses under Minimoprec
    
    screener[c1 or c2]
    #117477 quote
    robertogozzi
    Moderator
    Master

    Anch’io non sono riuscito a farlo funzionare. Domattina chiedo a Nicolas.

    #117478 quote
    robertogozzi
    Moderator
    Master

    Ho risolto.

    ProScreener non supporta OpenHour, per cui devi sostituirlo con Hour.

    Ovviamente affinché combaci con l’indicatore devi sostituirlo anche in quest’ultimo, altrimenti i dati saranno parzialmente sfalzati.

    La differenza è che OpenHour restituisce l’ora all’APERTURA di una candela, mentre Hour restituisce quella alla CHIUSURA della candela.

    Ad esempio, per la candela a 10 minuti che apre alle 08:50, OpenHour restituirà 8, mentre Hour restituirà 9.

    #117552 quote
    SAM
    Participant
    Senior

    Ciao Roberto, ho cambiato OpenHour con Hour nello screener (come hai suggerito) ora lo screener mi restituisce dei risultati ma alcuni non sono corretti. Per questo ti allego alcune schermate e ti allego dei codici. Dalla foto screener1

    1. A sinistra trovi lo screener con i risultati su un grafico con time frame 15 min
    2. Di fianco a dx nel grafico del prezzo acandele ho inserito il tuo codice che mi disegna con il formato linea il max e il min della candela 4h precedente.
    3. Sotto al grafico dei prezzi ho inserito un indicatore “Boleano” che in indica 1 e -1 quando la chiusura supera il alto o in basso il MAx e il Min dela candela di 4H precedente. Cosi per verificare ad occhio se i risultati dello Screener sono corretti.

    Nella foto Screener1 come puoi notare ho selezionato fra i tanti risultati che mi restituisce la ricerca HD Supply Hidg Inc come -1 e il tutto è confermato dal mio indicatore sotto al grafico a candela che è -1

    Nella foto Screener2 ho selezionato una azione dallo screener come Break-out rialzista ed è nuovamente confermato dal mio indicatore sotto al prezzo

    Nella foto Screener3 e Screene4 invece ho selezionato delle azioni che lo screener me le dava come (+1) ma in realta i risultati dello screener erano sbagliati, perchè i prezzo effettivamente non avevano fatto un break-out.

    Anzi sono più i risultati errati che quelli giusti…

    Come mai secondo te?

    Screener1.jpg Screener1.jpg screener2.jpg screener2.jpg screener3.jpg screener3.jpg screener4.jpg screener4.jpg
    #117557 quote
    robertogozzi
    Moderator
    Master

    Te l’ho detto qual’è la differenza.

    Non ce ne sono altre. Se cambi sia screener che indicatore, l’unica differenza può essere solo sull’orario, tra chiusura e apertura.

    Se usi un TF a 1 minuto la differenza sarà poca, se usi 1H può essere notevole.

    #117575 quote
    SAM
    Participant
    Senior

    Ciao, si ho letto il tuo post, infatti sia nello screener che nell’indicatore uso sempre il comando Huor. Appunto per evitare risultati differenti.

    IF (Hour MOD 4 = 1) AND (Hour <> Hour[1]) THEN
    MassimoPrec = Massimo
    MinimoPrec  = Minimo
    Minimo      = low
    Massimo     = high
    ENDIF
    Minimo  = min(low,Minimo)
    Massimo = max(high,Massimo)
    RETURN MinimoPrec as "Min",MassimoPrec as "Massimo"
    IF (Hour MOD 4= 1) AND (Hour <> Hour[1]) THEN
    massimoprec = Massimo
    minimoprec  = Minimo
    Minimo      = low
    Massimo     = high
    ENDIF
    minimo = min(low,Minimo)
    massimo= max(high,Massimo)
    
    timeframe (default)
    su=close crosses over massimoprec
    giu= close crosses under minimoprec
    
    if su then
    direzione=1
    endif
    if giu then
    direzione=-1
    endif
    
    screener[su or giu](direzione)
    #117632 quote
    robertogozzi
    Moderator
    Master

    Ti faccio un esempio sulla candela a 4 ore che apre alle 9 e chiude alle 13 che tu osservi sul tuo grafico.

    Se usi un TF a 1 minuto, con Hour ti considererà il massimo ed il minimo tra le 8:59 e le 12:59 come apertura, perché sono quelle che CHIUDONO alle 9 ed alle 13. Essendo molto raro che i massimi ed i minimi si verifichino nell’ultimo minuto di una candela, la differenza potrebbe essere pochissima o assente.

    Se, invece, usi un TF ad 1 ora, considererà le candele che vanno dalle 8 alle 12 (perché chiudono alle 9 ed alle 13) e qui la differenza potrebbe esserci molto spesso.

    Se usi un TF di 2 ore, considererà le candele delle 7 e delle 11 (sempre perché chiudono alle 9 ed alle 13, che sono gli orari della candela a 4 ore) ed in tal caso lo sfalsamento è enorme!

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

Intraday Max/Low


ProBuilder: Indicatori & Strumenti Personalizzati

New Reply
Author
author-avatar
SAM @amos Participant
Summary

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

Topic Details
Forum: ProBuilder: Indicatori & Strumenti Personalizzati
Language: Italian
Started: 01/15/2020
Status: Active
Attachments: 6 files
Logo Logo
Loading...