modifica codice da library Raghee horner grab candles
Forums › ProRealTime forum Italiano › Supporto ProBuilder › modifica codice da library Raghee horner grab candles
- This topic has 22 replies, 3 voices, and was last updated 1 year ago by Msport71.
-
-
02/17/2023 at 11:04 AM #209834
Buongiorno,
ho appena visto questo codice molto interessante che colora le candele in funzione della posizione della candela rispetto all’Ema a 34 periodi.
Sarebbe possibile farlo funzionare avendo come riferimento l’indicatore Magic trend, modificando le prime due righe con le variabili a) e b)
Ovvero :
colore rosso : candela sotto Magic Trend
Colore blu: Candela tocca magic trend
Colore verde : candela sopra magic trend.
Da quello che ho capito servirebbe la funzione “call”.
Grazie per il prezioso supporto.
https://www.prorealcode.com/prorealtime-indicators/raghee-horner-grab-candles/
https://www.prorealcode.com/prorealtime-indicators/magic-trend-indicator/
Raghee Horner Grab candles
123456789101112131415161718192021a=exponentialaverage [34] (high)b=exponentialaverage [34] (low)if close > a ThenDRAWCANDLE(open, high, low, close)COLOURED(0,255,0)endifif close<b thenDRAWCANDLE(open, high, low, close)COLOURED(255,0,0)endifif ( close >b and close<a) thenDRAWCANDLE(open, high, low, close)coloured(0,0,255)endifRETURN02/17/2023 at 11:37 AM #209835Eccolo:
123456789101112131415161718MT = CALL "Magic Trend custom"[20, 14, 1, 5]r = 255g = 0b = 0t = 255 //ROSSA se la candela chiude sotto MTIF low <= MT AND high >= MT THEN //BLU' se la candela è sia sopra che sotto MTr = 0b = 255ELSIF close > MT THEN //VERDE se la candela chiude sopra MTr = 0g = 255ELSIF close = MT THEN //GRIGIO se la candela chiude esattamente sulla linea MTr = 169g = 169b = 169ENDIFDrawCandle(Open,High,Low,Close) coloured(r,g,b,t)RETURN02/17/2023 at 2:33 PM #20984708/29/2023 at 8:49 AM #219984Roberto,
buongiorno.
Vorrei fare un esperimento e proporre una piccola modifica all’indicatore che mi hai gentilmente modificato qualche mese fa.
Attualmente l’indicatore evidenzia in colore blu tutte le candele che toccano il Magic Trend, senza distinguere quelle che lo toccano semplicemente (magari con uno spike) da
quelle che crossano al rialzo o al ribasso , a seguito del quale le candele successive cambianocolore (rosso al ribasso, verde al rialzo).
Vorrei che l’indicatore evidenziasse con un colore vivace (arancione ad esempio), quanto si presenta la seguente condizione:
– candela che interseca l’indicatore magic trend, il cui corpo sia per la maggior parte ( diciamo 55-60%) :
– sotto il magic trend (in caso ribassista)
– sopra il magic trend ( in caso rialzista).
Per maggior comprensione allego screenshot, dove ho evidenziato con rettangolo giallo le candele che mi sembra rispettino le condizioni che ho in mente.
Grazie e mille e buona giornata
08/29/2023 at 5:09 PM #220020@Msport71
Ho guardato questo.
Modificato da quello di Roberto sopra.
Penso che segua le tue specifiche.
Ci sono alcune linee alternative su 13,18,23 per 14,19,24 che potresti provare.
Potrebbe essere necessario perfezionarlo ulteriormente.
saluti.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152MT = CALL "Magic Trend custom"[20, 14, 1, 5]once MTdir = -1if MT > MT[1] thenMTdir = 1 //bullelsif MT < MT[1] thenMTdir = 0 // bearendift = 255 //ROSSA se la candela chiude sotto MTpercent = 57 // x% 55-60%//bodyX = (range/100)* percent //altbodyX = (abs(open-close)/100)* percentif MTdir <> -1 then//if open < MT and close < MT then //altif high < MT and low < MT thenr = 255g = 0b = 0//elsif open > MT and close > MT then //altelsif low > MT thenr = 0g = 255b = 0elser = 0g = 0b = 255endifif MTdir = 0 and (max(open,close)) >= MT+bodyX and min(open,close) <= MT then // bearr = 255g = 127b = 0elsif MTdir = 1 and (min(open,close)) <= MT-bodyX and max(open,close) >= MT then // bullr = 255g = 127b = 0endifDrawCandle(Open,High,Low,Close) coloured(r,g,b,t)//drawtext(MTdir,barindex, high+7)//drawtext(bodyX,barindex, high+5)endifRETURN//https://www.prorealcode.com/topic/modifica-codice-da-library-raghee-horner-grab-candles/08/30/2023 at 8:14 AM #220042Grazie e mille sei stato davvero gentilissimo!
Funziona abbastanza bene, ma ho bisogno di qualche idea per perfezionarlo.
Allego un primo screenshot che ci può aiutare visivamente, dove ho numerato le candele che trovo rilevanti.
Candela n.1 perfetto, rispetta i parametri ed osservo anche che si tratta esattamente della candela che precede il cambio di colore del magic trend.
Candela n.2 ok
Candela n.3 sarebbe fuori parametro in quanto il corpo è sotto il Magic trend per la maggior parte
Ho anche evidenziato con n.4 e 5 le candele blu che non sono evidenziate in arancio e che invece mi sembrano rispettino
i parametri ovvero intersecano la magic trend e sono sopra con il loro corpo rispetto alla magic trend.
Non capisco se è un problema di percentuale o di logica dell’indicatore.
Grazie per l’aiuto.
08/30/2023 at 8:45 PM #220092@Msport71
Osservando il prezzo prima che il trend [1] sembri “in rialzo”. Puoi facilmente vedere i pullback e le parti impulsive del trend. Il numero di barre nei pullback sembra inferiore al numero nell’impulso.
Quando il prezzo si ritira appena prima di [1], il numero/dimensione di queste candele è sufficiente per modificare il MT in modo da sopportare. Inoltre il 100EMA è rotto. E quando il prezzo inizia a tornare long e [1] incrocia MT, il numero/dimensione della candela è sufficiente per riportarlo al rialzo.
Ora, da un punto di vista commerciale [1] sembra l’ideale, fare trading con il trend, entrare subito dopo un pullback, il trend continua.
Altre cose su [1], pullback prima, test del livello di pivot dei giorni precedenti e il prezzo ripassa oltre 100EMA poco prima [1].
Sulla strada per [2] il MT è rialzista, ci sono una serie di pullback ma il numero/dimensione di queste candele non sono sufficienti per capovolgere il MT. [2] questa volta fa parte di un pullback. Un’altra nota su [2] il pullback si avvicina a 100EMA.
Quando il prezzo va long [3] si adatta alle specifiche di attraversare il MT con circa il 57% al di sotto del MT dal suo Toro. Quindi [3] è un falso segnale di orso poiché le specifiche non prevedono un incrocio allo stesso modo del MT.
Per quanto riguarda [4] questo non è arancione perché è codificato che il corpo deve attraversare la MT almeno del 55-60%. Il corpo di [4] ha attraversato il MT.
“– candela che interseca l’indicatore di tendenza magico, il cui corpo è per la maggior parte (diciamo 55-60%) :”
Capisco perché pensi che dovrebbe, perché dal momento che è blu, quindi deve intersecare il MT.
lo cambierò. Tuttavia [4] non sarebbe ancora arancione poiché non attraversa un MT orso.
Ma dopo aver cambiato il codice [5] sarebbe arancione, perché intercetta il MT dall’incrocio dal basso verso l’alto. rispetto a [1], il pullback appena prima che [5] incroci il MT, il MT diventa rialzista, con il trend, il trend continua.
Ho modificato il codice per includere l’intercettazione che hai indicato, questo ha lanciato molti segnali validi ma falsi
L’ho impostato in modo che solo il primo crossover dell’MT fosse valido.
Quindi si reimposta se cambia il MT o il prezzo ripassa completamente il MT nel caso in cui il MT non sia cambiato.
Inoltre ho cambiato il colore dei crossover dell’orso in rosa in modo da poter vedere la differenza tra loro.
Infine, [1] e [5] sembrano essere buoni segnali in questo caso, sia quando il MT è andato ribassista mentre si è verificato un pullback, poi cambiato in toro dopo il crossover.
Negoziando con la tendenza, la tendenza è continuata.
Non ho esaminato in modo approfondito dopo aver modificato il codice, segnala semplicemente eventuali problemi e li darò un’occhiata
saluti
roberto magic grab V1.02123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566MT = CALL "Magic Trend custom"[20, 14, 1, 5]once MTdir = -1if MT > MT[1] thenMTdir = 1 //bullelsif MT < MT[1] thenMTdir = 0 // bearendifonce orange = 0if MTdir[1] <> MTdir thenorange = 0endifif orange = 10 and high < MT thenorange = 0elsif orange = 11 and low > MT thenorange = 0endift = 255 //ROSSA se la candela chiude sotto MT//r = 0//g = 0//b = 0percent = 57 // x% 55-60%//bodyX = (range/100)* percent //altbodyX = (abs(open-close)/100)* percentif MTdir <> -1 then//if open < MT and close < MT then //altif high < MT and low < MT thenr = 255g = 0b = 0//elsif open > MT and close > MT then //altelsif low > MT thenr = 0g = 255b = 0elser = 0g = 0b = 255endifif orange = 0 and MTdir = 0 and (max(open,close)) >= MT+bodyX and min(low,min(open,close)) <= MT then // bearorange = 10r = 255g = 127b = 0elsif orange = 0 and MTdir = 1 and (min(open,close)) <= MT-bodyX and max(high,max(open,close)) >= MT then // bullorange = 11r = 255g = 0b = 255endifDrawCandle(Open,High,Low,Close) coloured(r,g,b,t)//drawtext(MTdir,barindex, high+7)//drawtext(bodyX,barindex, high+5)endifRETURN08/31/2023 at 12:37 PM #220123ti ringrazio tanto sia per le modifiche che per l’ampia spiegazione.
Faccio delle prove in altre giornate di borsa e vedo come si comporta.
Sicuramente quando il prezzo è “libero” di muoversi è piuttosto affidabile.
Quando si raggiungono livelli di prezzo sensibili (cross ema 100, ema 50 etc – pivot level, supporti e resistenze), meglio cercare di abbinare un indicatore di altro tipo che dia il segnale
che indica quando il prezzo, superate le incertezze è pronto a prendere una certa direzione, invece che cercare un fine tuning.
Ancora grazie tante.
08/31/2023 at 4:23 PM #220142ho identificato tre casi simili ( pur con leggere differenze) ma con esiti diversi, evidenziati con freccia verde
1)25 Agosto Dax 15 Min candela 9,00 Am, indicatore ok, corpo candela tocca MT
2)29 Agosto Dax 15 Min candela 15,30pm, indicatore ok, corpo candel tocca appena MT
3)31 Agosto Dax 15 Min candela 9,15 Am, candela non cambia colore, la candela sembra sfiorare MT ( ma forse no causa delay tra candela e paint di MT sul grafico) ma dovrebbe averla toccata con lo spike.
Pensi sia possibile armonizzare il caso del 31 Agosto ai primi due?
Si potrebbe pensare a una condizione del tipo, indicatore cambia colore della candela anche se il corpo non tocca ma solo con lo spike con sotto condizione che la candela sia maggiore di 25 punti .
Grazie e mille
09/01/2023 at 12:44 AM #220158@Msport71
1. Prendere questo segnale come ideale e come riferimento.
2. Il MT cambia nello stesso punto ma sento che il segnale avrebbe dovuto essere la candela blu prima di quella arancione. Potrebbe non essere stato un momento ideale per la fine delle barre poiché i periodi di tempo del grafico sono fissati rigidamente e potrebbero non essere allineati in modo ideale ogni volta.
Se l’ora di fine della barra fosse stata circa 5 minuti dopo, la candela blu potrebbe essere stata posizionata per essere il segnale. Il fatto che ci vorrebbe una barra in più per cambiare il MT potrebbe essere dovuto semplicemente al numero/dimensione delle candele dopo il pullback e poi il contrario.
3. Questo è un po’ diverso, anche se sembra un buon posto per uno scambio, le altre due erano candele rialziste che attraversavano un MT ribassista.
Questo è un toro che tocca il MT, la mossa è iniziata prima, mercoledì 30 agosto 2023, 11:00.
Ci penserò.
Sto lavorando su una nuova versione che cambia il modo in cui vengono identificati i segnali…
Ho sostituito il “55-60% body crossover” con la “prima candela da crossover”, quindi ho riportato la percentuale del corpo e l’ho usata per rimuovere eventuali candele appena sopra. Penso che sia praticamente lo stesso codice ma usato in modo diverso.
Se riduci la variabile ‘percent’ a 16 sulla tua versione, questo sposta il segnale di 2. e il precedente 3 sulla barra precedente.
Inoltre, nella nuova versione puoi attivare/disattivare i segnali quando il MT non cambia ma il prezzo continua a incrociarsi.
Non ancora finito verrà pubblicato il giorno successivo o giù di lì.
Hai qualche idea sulle posizioni di entrata/stop/target/uscita.
saluti
09/01/2023 at 8:36 AM #220166hai ragione , concentrato sulla candela/segnale nel caso 3, ho perso di vista il contesto.
Quindi se non capisco male, l’indicatore sta funzionando bene se il movimento inverte la sua direzione ( da bull a bear e viceversa) con un cross over di MT.
Non riesce invece a intercettare la candela di espansione in fase di prosecuzione del trend, dove non si verifica un crossover di MT , ma MT funge da supporto ( nel caso in oggetto 31 agosto).
Questo tipo di candela di prosecuzione, ho visto che viene intercettata dall’indicatore donchian bias, essendo la candela che crea un up shift del canale di donchian (superiore nel nostro caso) alla rottura dell’ultimo HH in uno scenario di compressione dei prezzi.
https://www.prorealcode.com/prorealtime-indicators/donchian-bias-determinator/
A livello trading, a grandi linee partirei con :
entry: candela successiva alla candela arancio (long) – viola ( short)
stop loss: 20 punti sotto la candela arancio (long) – viola ( short)
1st take profit : raggiungimento del pivot level o della prima resistenza o supporto a seconda della direzione del movimento.
Spero di averti dato utili indicazioni.
Saluti
09/02/2023 at 2:08 PM #220217@Msport71
di seguito, importa la nuova versione, dovrebbe mostrare gli stessi segnali con le stesse impostazioni, nell’impostazione dell’indicatore puoi modificare alcune variabili dalla finestra di impostazione dell’indicatore: –
1) onOff: cambia la combinazione di colori
2) riprova – mostra il segnale di attraversamento quando MT non cambia (punti!)
3) impostazioni percentuali ribassista/rialzista disegna anche la linea MT
Ho compilato una risposta più lunga riguardo ai tuoi commenti qui sopra ma, essendo scomparsa nel nulla, proveremo a recuperarla.
09/02/2023 at 10:19 PM #220229Scusate, perché usate sempre @ per mettere il post all’attenzione dell’altro, dal momento che siete solo voi due?
1 user thanked author for this post.
09/03/2023 at 6:10 AM #22023009/03/2023 at 12:08 PM #220243Roberto … Buon punto.
Per offrirti i miei rispetti, da ora in poi mi toglierò il “cappello” per te.
Quando si tratta di scrivere, sono dislessico e possono volerci ore per scrivere una risposta e, alla fine, per me sono come un’opera d’arte.
Non mi sembra di riuscire a fare cose chiare e concise, di solito finiscono per risultare lunghe, dettagliate e complicate. Ecco perché a volte pubblico semplicemente il codice, è logicamente più semplice.
Lo faremo, e ora, superando la barriera linguistica, è solo in cerca di guai.
Ho visto la @ usata in un altro post e, sebbene fosse una buona idea, non ci ho pensato molto.
Dev’essere una giornata lenta!, ora sei qui, fa tre, significa che posso continuare a usare @. lol.
Grazie per tutti i tuoi sforzi, ho imparato così tanto dalle tue risposte al codice.
Ti auguro il meglio.
Druby
1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on