Problema refresh indicatore
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Problema refresh indicatore
- This topic has 2 replies, 2 voices, and was last updated 3 years ago by
effegi.
-
-
02/04/2022 at 2:23 PM #187532
Buongiorno, ho scritto un indicatore che traccia alcuni livelli sensibili (da usare solo sul timeframe Daily), che fa uso di un ciclo FOR abbastanza semplice.
L’indicatore funziona perfettamente, nel senso che il codice traccia i livelli esattamente come li avevo in mente, ma in modo random ogni tanto si “blocca” quando cambio lo strumento sul grafico. Per esempio, se visualizzo il DAX e passo a SP500o o Nasdaq può capitare che:
- o non visualizza più alcun segmento
- o traccia segmenti e testi in punti completamente sfasati rispetto a com’è stato programmato
Per risolvere, sono costretto a cambiare il numero di barre visualizzate (cambiando fra numero di unità o mesi), oppure cambiando il numero di cicli FOR. Solo in questo modo l’indicatore è come se facesse un “refresh” e torna a calcolare tutto correttamente.
Ho provato a cambiare il parametro CALCULATEONLASTBARS all’inizio del codice (o anche a rimuoverlo), a ridurre il numero dei cicli for (di default 100 giorni di ricerca all’indietro), ma nulla.
Ho provato ad aggiungere anche l’istruzione “islastbarupdate” a monte di tutto, ma apparentemente senza effetto.
Sto un po’ impazzendo, non capisco perché solo quando si cambia lo strumento a volte si blocchi tutto, come se la piattaforma sbagliasse a caricare l’indicatore dall’inizio della barra del nuovo strumento selezionato
Non so cosa stia sbagliando, ho provato un po di tutto….. 🙂
Grazie a chi vorrà darmi qualche suggerimento/spiegazione in merito
(scusate ma non vedo il pulsante <b>”Insert PRT code” </b>)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465//T.F. V.0 - 08/01/2022 - Livelli comprati/venduti e min/max daily vergini - da usare solo su TF Dailydefparam DRAWONLASTBARONLY=truerem defparam CALCULATEONLASTBARS=101xx=100 //candele backrem if islastbarupdate then // prova ad inserire il comando islastbarupdatefor i=1 to xx do//livelli compratiif dclose(i)>dopen(i) then //LIVELLI COMPRATI VERDI - SOTTO IL CLOSE DI IERIif Dhigh(i+1)<dclose(i) and dhigh(i+1)>dlow(i) and dhigh(i+1)<=lowest[i](close)[1] thendrawsegment (barindex[i+1], dhigh(i+1), barindex+1, dhigh(i+1)) coloured (0,200,0) //max comprato 1gg primadrawtext("AC#i#",barindex+1,dhigh(i)) coloured (0,200,0)endifif Dhigh(i+1)<dclose(i) and Dhigh(i+2)<dclose(i) and dhigh(i+2)>dhigh(i+1) and dhigh(i+2)>dlow(i) and dhigh(i+2)<=lowest[i](close)[1] thendrawsegment (barindex[i+2], dhigh(i+2), barindex+1, dhigh(i+2)) coloured (0,200,0) //max comprato 2gg prima solo se è sopra dclose(i+1)drawtext("AC#i#",barindex+1,dhigh(i)) coloured (0,200,0)endifif (Dhigh(i+1)+Dlow(i+1))/2<dclose(1) and Dlow(i+1)>dlow(i) and dlow(i+1)<=lowest[i](close)[1] thendrawsegment (barindex[i+1], dlow(i+1), barindex+1, dlow(i+1)) coloured (0,200,0)//min comprato 1gg primadrawtext("AC#i#",barindex+1,dhigh(i)) coloured (0,200,0)endifif (Dhigh(i+2)+Dlow(i+2))/2<dclose(1) and Dlow(i+2)<dlow(i+1) and Dlow(i+2)>dlow(i) and dlow(i+2)<=lowest[i](close)[1] thendrawsegment (barindex[i+2], dlow(i+2), barindex+1, dlow(i+2)) coloured (0,200,0)//min comprato 2gg prima solo se è sotto dopen(i+1)drawtext("AC#i#",barindex+1,dhigh(i)) coloured (0,200,0)endifendif//livelli vendutiif dclose(i)<dopen(i) thenif Dlow(i+1)>dclose(i) and dlow(i+1)<dhigh(i) and dlow(i+1)>=highest[i](close)[1] thendrawsegment (barindex[i+1], dlow(i+1), barindex+1, dlow(i+1)) coloured (200,0,0) //min venduto 1gg primadrawtext("AV#i#",barindex+1,dhigh(i)) coloured (200,0,0)endifif Dlow(i+1)>dclose(i) and Dlow(i+2)>dclose(i) and dlow(i+2)<dlow(i+1) and dlow(i+2)<dhigh(i) and dlow(i+2)>=highest[i](close)[1] thendrawsegment (barindex[i+2], dlow(i+2), barindex+1, dlow(i+2)) coloured (200,0,0) //min venduto 2gg prima solo se è sotto dclose(i+1)drawtext("AV#i#",barindex+1,dhigh(i)) coloured (200,0,0)endifif (Dhigh(i+1)+Dlow(i+1))/2>dclose(1) and Dhigh(i+1)<dhigh(i) and dhigh(i+1)>=highest[i](close)[1] thendrawsegment (barindex[i+1], dhigh(i+1), barindex+1, dhigh(i+1)) coloured (200,0,0)//max venduto 1gg primadrawtext("AV#i#",barindex+1,dhigh(i)) coloured (200,0,0)endifif (Dhigh(i+2)+Dlow(i+2))/2>dclose(1) and Dhigh(i+2)>dhigh(i+1) and Dhigh(i+2)<high[i] and dhigh(i+2)>=highest[i](close)[1] thendrawsegment (barindex[i+2], dhigh(i+2), barindex+1, dhigh(i+2)) coloured (200,0,0)//max venduto 2gg prima solo se è sopra dopen(i+1)drawtext("AV#i#",barindex+1,dhigh(i)) coloured (200,0,0)endifendif////minimi e massimi verginiif dhigh(i)>highest[i](high) thendrawsegment (barindex[i], dhigh(i), barindex, dhigh(i)) coloured (0,0,200) //max verginedrawtext("DH#i#",barindex+1,dhigh(i)) coloured (0,0,200)endifif dlow(i)<lowest[i](low) thendrawsegment (barindex[i], dlow(i), barindex, dlow(i)) coloured (0,0,200) //min verginedrawtext("DL#i#",barindex+1,dlow(i)) coloured (0,0,200)endifnextreturn02/04/2022 at 5:42 PM #187547Cosa significa LOF ?
Qual’è lo strumento del grafico e la data della candela errata?
1 user thanked author for this post.
02/04/2022 at 6:24 PM #187551Risolto…. cioè, ho capito quando succede questo fenomeno random di freezing o a volte errata tracciatura dell’indicatore. Riporto per utilità della community:
Avevo più grafici collegati fra loro (5 per l’esattezza), dove su ognuno dei quali giravano altri indicatori con cicli FOR e WHILE. Cambiando lo strumento ad uno di essi, naturalmente anche gli altri commutavano sul nuovo strumento, e quindi partiva il ricalcolo su una serie di indicatori, tutti contemporaneamente.
Scollegando i grafici fra di loro, e quindi facendo cambiare (a mano) lo strumento singolarmente su ogni grafico… per magia l’anomalia è scomparsa :). Gli indicatori su ogni grafico vengono plottati sempre correttamente.
La mia ipotesi è che questo ricalcolo simultaneo di una decina di indicatori, sui 5 grafici e su diversi timeframe a volte può aver messo in crisi la piattaforma (oppure il problema è altrove… ma scollegando i grafici si è risolto, quindi tutto bene 🙂
Grazie ugualmente dell’attenzione.
🙂
1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on