Buon giorno a tutti,
ho realizzato in prorealtime un piccolo indicatore che mi traccia un istogramma in base all’incrocio di alcune medie. (lo potete vedere nell’immagine allegata).
Lo vorrei migliorare mettendo delle linee orizzontali e anche delle freccie in corrispondenza dei picchi minimi e massimi. In figura ho tracciato le linee che vorrei mettere e la posizione delle relative freccie, sia in negativo che in positivo.
Vorrei che queste linee fossero tracciate in corrispondenza dei massimi e minimi dell’istogramma, determinati dal confronto tra le ultime tre barre e quella successiva. (in pratica se la media della chiusura delle tre barre correnti e superiore alla chiusura della quarta barra allora traccia la linea in corrispondenza della barra più alta e viceversa se la media della chiusura delle tre barre correnti e inferiore alla chiusura della quarta barra allora traccia la linea in corrispondenza della barra più bassa).
Questo controllo dovrebbe essere fatto dalle ore 08:00 del mattino sino alle 22:00 del giorno corrente altrimenti ci sarebbero troppe linee e il grafico diverrebbe illegibile.
Il timeframe dell’indicatore è tick by tick.
Grazie mille in anticipo a quanti potranno aiutarmi.
Attendo con ansia.
Saluti
E’ molto facile farlo manualmente quando il grafico è completato, magari già da qualche barra, ma farlo candela dopo candela non lo è affatto perché non puoi mai sapere se la candela che si aprirà sarà maggiore/minore di quella che si sta chiudendo.
Come dalla sequenza delle foto allegate, x1-x2-x3-x4, rischi di avere il risultato evidenziato nell’ultima, una moltitudine di linee e frecce che rendono il grafico quasi illeggibile.
Una posibile soluzione è farlo quando viene formato un nuovo massimo rispetto alle ultime “n” candele (10, 20,…..). Il nuovo massimo si potrebbe rilevare quando è il più alto delle precedenti candele come ho detto E la barra successiva è inferiore!
Se vuoi provo a farlo così, oppure hai qualche altra idea?
Ciao Roberto,
piacere di fare la tua conoscienza.
Si certamente, va bene come vuoi fare tu.
L’importante è che funzioni sia lato positivo che lato negativo (ovvero max delle barre Blu e min delle barre rosse).
Grazie mille.
Salvatore
Prova questo (io ho usato il CCI per creare un istogramma, tu lo sostituirai con il tuo indicatore):
DEFPARAM CalculateOnLastBars = 120
//DEFPARAM DrawOnLastBarOnly = true
NumeroBarre = 30
Distanza = 30
MioCCI = cci[40](close)
Rialzista = MioCCI > MioCCI[1]
Ribassista = MioCCI < MioCCI[1]
MaxCCI = (MioCCI = highest[NumeroBarre](MioCCI))
MinCCI = (MioCCI = lowest[NumeroBarre](MioCCI))
IF Ribassista AND MaxCCI[1] THEN
x = max(MioCCI,MioCCI[1])
DRAWHLINE(x) COLOURED(0,0,255,255)
DRAWARROWDOWN(barindex[1],x + Distanza) COLOURED(255,0,0,100)
ELSIF Rialzista AND MinCCI[1] THEN
y = min(MioCCI,MioCCI[1])
DRAWHLINE(y) COLOURED(0,0,255,255)
DRAWARROWUP(barindex[1],y - Distanza) COLOURED(0,255,0,100)
ENDIF
RETURN MioCCI STYLE(Histogram,1)
La foto l’avevo fatta prima di correggere il codice, per cui le frecce risultano sfalzate di una posizione.
Grazie Roberto,
sei stato gentilissimo.
Con i dovuti adattamenti sono riuscito.
A presto.