Ciao Roberto, vorrei cortesemente utilizzare uno screener che mi estragga i titoli il cui prezzo si trovi “intorno” al massimo o al minimo di almeno 90gg (parametro modificabile). Immagino che codificare il concetto di doppio max o min non sia facile. Allora pensavo ad un prezzo che si trovi al di sotto di un 1% dal massimo di periodo e al contrario un prezzo al di sopra di un 1% dal minimo di periodo. Time frame Settimanale.
In pratica la mia necessita’ sarebbe quella di selezionare titoli vicini al doppio massimo o minimo.
Grazie
Ecco lo screener:
// screener
N = 90 //90 periodi
PC = 1 //1.00% di tollereanza sopra/sotto il Massimo
HH = highest[N](max(open,close)) //HH massimo degli ultimi N periodi
X = (HH * PC / 100) //Tolleranza da aggiungere/sottrarre al Massimo
Sup = HH + X //Limite SUPeriore
Inf = HH - X //Limite INFeriore
Cond = (summation[N]((close <= Sup) AND (close >= Inf)) = N)
SCREENER[Cond]
e ti ho fatto anche l’indicatore così puoi vedere le linee (quella del massimo punteggiata):
DEFPARAM DrawOnLastBarOnly = true
N = 90 //90 periodi
PC = 1 //1.00% di tollereanza sopra/sotto il Massimo
HH = highest[N](max(open,close)) //HH massimo degli ultimi N periodi
X = (HH * PC / 100) //Tolleranza da aggiungere/sottrarre al Massimo
Sup = HH + X //Limite SUPeriore
Inf = HH - X //Limite INFeriore
Cond = (summation[N]((close <= Sup) AND (close >= Inf)) >= 2)
DrawHline(HH) coloured(0,0,0,255) style(DottedLine,1)
DrawHline(Sup) coloured(0,128,0,155) style(Line,2)
DrawHline(Inf) coloured(0,128,0,155) style(Line,2)
RETURN
Il massimo l’ho calcolato sui valori massimi tra Aperture e Chiusure degli ultimi N periodi. Se preferisci calcolarlo sui MASSIMI, sostituisci, in entrambi i codici, la riga 4 con questa:
HH = highest[N](high) //HH massimo degli ultimi N periodi
Roberto ti ringrazio. Anche l’indicatore con la linea tratteggiata è fantastico.
Scusami la domanda che potrebbe farti cascare le braccia: ma lo scrineer me lo hai codificato solo per il Doppio Max?
Si, certo.
Ho fatto lo screener, poi ne ho ricavato l’indicatore per verificarne i risultati.
Ciao Roberto, sarebbe possibile aggiornarmi l’indicatore aggiungendomi anche la ricerca dei titoli con i prezzi vicini ai minimi di 90gg (parametro modificabile), il tutto in un unico codice?
Grazie
Screener:
// screener
N = 90 //90 periodi
PC = 1 //1.00% di tollereanza sopra/sotto il Massimo
HH = highest[N](max(open,close)) //HH massimo degli ultimi N periodi
X = (HH * PC / 100) //Tolleranza da aggiungere/sottrarre al Massimo
Sup = HH + X //Limite SUPeriore
Inf = HH - X //Limite INFeriore
Cond1 = (summation[N]((close <= Sup) AND (close >= Inf)) >= 2)
Cond2 = close <= (Inf + (Inf / 100 * 0.05)) //Prezzo entro lo 0.05% dal limite inferiore
SCREENER[Cond1 AND Cond2]
Indicatore (anche se non cambia di fatto quello che stampa):
// indicatore
DEFPARAM DrawOnLastBarOnly = true
N = 90 //90 periodi
PC = 1 //1.00% di tollereanza sopra/sotto il Massimo
HH = highest[N](max(open,close)) //HH massimo degli ultimi N periodi
X = (HH * PC / 100) //Tolleranza da aggiungere/sottrarre al Massimo
Sup = HH + X //Limite SUPeriore
Inf = HH - X //Limite INFeriore
Cond1 = (summation[N]((close <= Sup) AND (close >= Inf)) >= 2)
Cond2 = close <= (Inf + (Inf / 100 * 0.05)) //Prezzo entro lo 0.05% dal limite inferiore
DrawHline(HH) coloured(0,0,0,255) style(DottedLine,1)
DrawHline(Sup) coloured(0,128,0,155) style(Line,2)
DrawHline(Inf) coloured(0,128,0,155) style(Line,2)
RETURN