Buongiorno,
volevo sapere come posso evidenziare una barra ad es. di 5 unità o pips dove l’apertura e la chiusura sono sopra la metà (es. apertura a 22300 min 22298 max 22303 chiusura 22302).
Volevo sapere se posso evidenziare le barre di un altro colore o con un triangolo sotto verde se rialzista rosso se ribassista.
Grazie
Nel tuo esempio sono 5 pips e la metà tra gli estremi è di 2.5 pips (metà) oltre il minimo, cioè 22300.5. Quindi tu vuoi eveidenziare quella candela la cui apertura E chiusura siano superiori a 22300.5, quindi da 22300.6 in poi. Quindi solo quelle rialziste?
Roberto
Buongiorno Roberto,
in realtà ribaltando il dato indicherò anche le ribassiste, per intenderci vorrei poter evidenziare o mettere un triangolo sotto la barra verde se rialzista rosso se ribassista dopo che si siano formate due barre FF ti allego un esempio.
Grazie
Questo è l’indicatore con le frecce Verdi/Rosse (allego anche il file ITF da importare, se lo preferisci al copia e incolla), verificane il funzionamento e fammi sapere.
DEFPARAM CalculateOnLastBars = 500
ONCE NumeroPips = 5 //Grandezza minima del range
ONCE Offset = 10 //Pips sotto il Minimo/Sopra il Massimo dove stampare FRECCE
a = range * pipsize
b = range / 2
IF a >= NumeroPips THEN
IF close > open THEN
IF open > (low + b) THEN
DRAWARROWUP(barindex,low - (offset * pipsize)) COLOURED(50,205,50)
ENDIF
ELSE
IF open < (high - b) THEN
DRAWARROWDOWN(barindex,high + (offset * pipsize)) COLOURED(255,0,0)
ENDIF
ENDIF
ENDIF
RETURN
Potrai variare i valori numerici secondo le tue necessità.
Per metterlo sul prezzo e non sotto, devi fare i 3 passaggi di cui all’immagine allegata:
- cliccare sulla parte Superiore Sinistra del grafico dove c’è scritto PREZZO con accanto la chiave inglese
- cliccare col mouse sulla voce PRESSO
- cliccare su AGGIUNGI INDICATORE poi, nel menù a tendina, selezionare l’indicatore.
Roberto
Grazie Roberto,
ma come vedi dall’allegato con range bars da 5 unità non funziona (vedi allegato) , inquanto dovrebbe evidenziare due barre o più consecutive la cui apertura e chiusura siano superiori o uguali a (max-min/2).
Nell’immagine ad esempio dovrebbero essere indicate le prime tre bars e le ultime due (con triangolo rialzista).
Grazie
L’importante sarebbe indicare le barre dopo che due consecutivi e quindi anche le successive che hanno apertura e chiusura sopra max-min/2.
Grazie
Ho provato a cambiare il codice così, provandolo dul DAX e su GBP/USD a 1 minuto:
DEFPARAM CalculateOnLastBars = 500
ONCE NumeroPips = 10 / pipsize //Grandezza minima del range
ONCE Offset = 10 //Pips sotto il Minimo/Sopra il Massimo dove stampare FRECCE
a = range / 2
IF Range >= NumeroPips THEN
IF close > open THEN
IF open > (low + a) THEN
DRAWARROWUP(barindex,low - (offset / pipsize)) COLOURED(50,205,50)
ENDIF
ELSE
IF open < (high - a) THEN
DRAWARROWDOWN(barindex,high + (offset / pipsize)) COLOURED(255,0,0)
ENDIF
ENDIF
ENDIF
RETURN
ma il risultato non cambia, effettivamente ci sono dei problemi nel riconoscimento del RANGE.
Non riesco proprio a capire, spero possa darci una mano Nicolas.
Cercate di modificare il calcolo di Numeropips come questo:
Numeropips= 10 * pointsize
Nicolas, ho provato ma non cambia niente.
Risco ad ottenere risultati migliori (ma comunque con vari errori di RANGE) con il TF di 1 ora, ma con TF inferiori sono più i risultati sbagliati di quelli corretti. Ho provato sul DAX ed Eur/Usd.
Mi dispiace, ma sono un po ‘perduta nella traduzione qui, non so cosa sia esattamente il problema 🙂 Tutto sembra funzionare correttamente, a parte io ho capito bene, che @Hendrix vuole solo dare segnale se le condizioni accade 2 volte consecutive?
Si Nicolas se ci sono due o più range bars con la condizione sopra descritta.
Grazie
Quello che vorrei Nicolas, è che la riga 5 venisse eseguita quando la condizione è vera, cioè quando il RANGE > 10 pips.
Invece non succede così, purtroppo IF…THEN viene eseguito anche quando il RANGE < 10 pips!
Nella mia foto allegata la candela viene indicata dalla freccia anche se il RANGE = 3.7 pips!
Non ho questo problema con la correzione di codice che ho proposto nel mio ultimo post. Mi dispiace vorrei aiutare qui 🙂
Nicolas, questo è il codice, variato come da te suggerito , ma come vedi dalla foto allegata (DAX, TF 5 minuti), oggi alle 15:15 la barra aveva un RANGE di 7.3 pips, quindi meno di 10, però la freccia è stata visualizzata, quindi la condizione della riga 5 è risultata vera, perché?
DEFPARAM CalculateOnLastBars = 500
ONCE NumeroPips = 10 * pipsize //Grandezza minima del range
ONCE Offset = 10 //Pips sotto il Minimo/Sopra il Massimo dove stampare FRECCE
a = range / 2
IF Range >= NumeroPips THEN
IF close > open THEN
IF open > (low + a) THEN
DRAWARROWUP(barindex,low - (offset / pipsize)) COLOURED(50,205,50)
ENDIF
ELSE
IF open < (high - a) THEN
DRAWARROWDOWN(barindex,high + (offset / pipsize)) COLOURED(255,0,0)
ENDIF
ENDIF
ENDIF
RETURN
Il problema è dovuto a “ONCE” quando viene utilizzato con “CalculateOnLastBars”, eliminando una di queste 2 istruzioni per risolvere il problema (o addirittura i 2), ma non dovrebbe essere un problema comunque. Mi riferisco a questo bug a prorealtime oggi.