Ciao Roberto,
come va ? spero che tu stia bene.
Ti coinvolgo per chiederti una consulenza su questo screener.
L’obiettivo è quello di evidenziare i titoli che hanno il prezzo di chiusura più alto rispetto alle ultime 52 settimane oltre ad altre condizioni. In realtà non sempre funziona, il grafico che allego dimostra come l’ultimo prezzo di chiusura, è inferiore al valore di chiusura di febbraio u.s. quindi condizione non rispettata in quanto il test avrebbe dovuto escludere il titolo dalla lista dei candidabili. Allego inoltre il risultato dello screener. Infine non mi è chiaro perché nella colonna “close”, vedo il prezzo dell’ultima chiusura invece delle ultime 52 settimane(variabile “prezzo52”) dove sbaglio ?
Grazie Raffaele
Timeframe (weekly)
//prezzo max nelle ultime 52 settimane o linea di resistenza
prezzo52 = highest[52](close[0])
Timeframe(daily)
cprezzo = close[0] >= prezzo52
mm20 = average[20,0](close)
mm50 = average[50,0](close)
mm200 = average[200,0](close)
c0 = (close > mm20) AND (close > mm50) AND (close > mm200) and cprezzo
REM trend a rialzo delle ultime 2 candele
rem summation: calcola la somma su un numero di barre da definire
NumeroCandele = 2
// LONG
IF (summation[NumeroCandele](close > open) = NumeroCandele) THEN
trend = 1
rem SHORT
elsIF (summation[NumeroCandele](close < open) = NumeroCandele) THEN
trend = 2
else
trend = 0
Endif
//Cabs = abs(close - open)
Rem - ABS valore assoluto
Rem - Range è la differenza fra High e Low di un valore
Corpo = abs(open-close)/range>=0.70
Corpo1 = abs(open[0]-close[0])=> abs(open[1]-close[1])
cVol = volume > Average[20](volume)
REM Chiusura superiore alla Bollinger Superiore
Cond1 = (Close > Bollingerup[20](Close))
REM Chiusura > Apertura
Cond2 = Close > Open
Cond0 = cond1 and cond2 and C0 and corpo and corpo1 and cvol and trend and cprezzo
SCREENER[Cond0 ] (prezzo52 as "close")
Prova a scrivere la riga 5 così:
cprezzo = close[0] >= prezzo52[1]
Allo screener non interessa ciò che è chiuso a Febbraio, ma la ultime 52 settimane, compresa quella corrente.
Grazie Roberto,
ho modificato il codice che riporto .
cprezzo = close[0] >= prezzo52[1]
Inoltre ho modificato la riga :
SCREENER[Cond0 ] (prezzo52[1] as “close”)
il risultato è identico, il titolo è ancora nella lista.
Posso aggiungere che nella colonna ” close ” dopo la modifica, il valore riportato(8,95) non mi sembra che corrisponda alla chiusura delle ultime 52 settimana .
Grazie
raffa58 – Argomento spostato nei forum italiani. Assicurati di pubblicare nel forum della lingua corretta con eventuali post futuri.
A me funziona bene. L’unuica spiegazione può essere che tu abbia i dati di fine giornata, quindi arretrati di 1 barra sis sul giornaliero che sul settimanale.
Scusa, ma perché la foto nel tuo primo post dici che è errata, l’ultimo prezzo di chiusura è il maggiore in assoluto delle ultime 52 settimane, c’hai pure fatto la riga verde!
Anche il prezzo riportato nella colonna CLOSE va benissimo.
scusa Roberto, hai ragione.
mi ha confuso la candela rossa di febbraio il cui valore massimo era di apertura e non di chiusura.
Tuttavia ho inserito questo codice così spero di prendere il valore massimo in assoluto nelle ultime 52 settimane, è corretto?
In questo modo, il titolo oggetto di confusione è stato escluso.
prezzo52 = highest[52](high[0])
Va bene, in questo modo non prende più la chiusura ma il massimo,