Buongiorno,
sono alle prime armi con la programmazione di ProScreener. Ho provato a cercare sui manuali, ma non sono riuscito a trovare una soluzione.
Dovrei formulare un unico comando con tutte le condizioni di seguito:
1° Il prezzo massimo del giorno deve essere salito sui massimi degli ultimi 10 giorni.
2° Il range di giornata cioè la differenza tra massimo e minimo deve essere maggiore del range medio degli ultimi 5 giorni.
3° Il volume di giornata deve essere maggiore del volume medio degli ultimi 5 giorni.
4° La chiusura di giornata deve collocarsi sopra il 25% più alto del range di giornata.
Ho trovato una soluzione per il 1° e 4° quesito, ammesso sia giusto. Mi manca il 2° e 3°. Potreste aiutarmi per favore? Ve ne sarei molto grato.
r = High = highest[10] AND Close > (High – ((High – Low) / 4))
SCREENER [r]
Grazie infinite
Per favore
- usa sempre il pulsante “Insert PRT code” quando inserisci il codice nei tuoi post per facilitare la lettura degli altri.
come ben evidenziato nel riquadro giallo delle regole basilari.
Grazie 🙂
Quanto alla tua domanda vorrei capire perché vuoi mettere tutte le 4 condizioni in un unico comando! Intanto è sconsigliato, meglio utilizzare più righe con comandi semplici che meno righe con comandi lunghi e complicati, inoltre in questo caso è impossibile a causa dei vari passaggi da fare.
Eccolo:
c1 = high >= highest[10](high[1])
c2 = range > average[5,0](range)
c3 = volume > average[5,0](volume)
c4 = close > (low + (range * 0.75))
x = c1 AND c2 AND c3 AND c4
SCREENER[x]
La riga 4 può anche essere scritta come hai fatto tu, a parte l’uso più semplice di RANGE:
close > (high - (range * 0.25))
Ti rispondo ulteriormente per comprendere le meccaniche.
Se volessi dire al programma che il range giornaliero è stato il più piccolo del range delle ultime 5 giornate dovrei fare cosi?
c1 = range < (range)[5]
SCREENER [c1]
E’ corretta come sintassi? Grazie
Nel caso di prima non ho capito questa sintassi:
c2 = range > average[5,0](range)
Non ho capito perché abbiamo utilizzato [5,0]. Sta per gli ultimi 5 giorni, dal giorno 0 al giorno 5? Mentre se scrivo solo [5] vorrebbe dire, anche se non ha senso, la media di range del quinto giorno precedente a quello attuale?
La prima non è corretta, così com’è confronta il RANGE di 5 barre fa (le parentesi tonde non servono).
La riga corretta è:
c1 = range < highest[5](high)
Lo 0 dopo la virgola indica il tipo di media quando per comodità non vuoi usare il loro nome specifico, vedi https://www.prorealcode.com/documentation/average/.
Buongiorno Dott. Gozzi,
ho quasi completato tutti gli screening di cui avevo bisogno. Ne mancano 3, poi non la disturbo più 🙂
Uno di questi è la candela HAMMER con 5 step:
- Minimo più basso degli ultimi 10 giorni
- Piccolo real body che si colloca nel 25% superiore del range
- Una lunghezza della lower shadow almeno doppia rispetto al real body (Punto dolente)
- Una lunghezza della upper shadow piccola (non saprei neppure da dove partire)
- Il volume di giornata deve essere maggiore del volume medio degli ultimi 5 giorni.
L’ho costruita parzialmente. Mi manca il pezzo 3 e 4
c1 = low <= lowest[10](low)
c2 = close > (low + (range * 0.75))
c3 = open > (low + (range * 0.75))
c4 =
c5 =
c6 = Volume > average[5,0](Volume)
x = c1 AND c2 AND c3 AND c4 AND c5 AND c6
SCREENER[x]
Grazie mille 🙂
Prima occorono le definizioni di corpo o body e delle ombre o shadow o wick
Corpo = abs(close - open)
OmbraSup = high - max(open,close)
OmbraInf = min(close,open) - low
c1 = low <= lowest[10](low)
c2 = close > (low + (range * 0.75))
c3 = open > (low + (range * 0.75))
c4 = OmbraInf >= (Corpo * 2)
c5 = OmbraSup <= (Corpo * 0.20)
c6 = Volume > average[5,0](Volume)
x = c1 AND c2 AND c3 AND c4 AND c5 AND c6
SCREENER[x]
per C6 ho messo un massimo del 20% del corpo, metti te il valore che ritieni più confacente.
Lascia perdere Dott…. (non lo sono, ) ecc… Roberto è tutto quello che serve!