massimi e minimi
Forums › ProRealTime forum Italiano › Supporto ProBuilder › massimi e minimi
- This topic has 16 replies, 2 voices, and was last updated 3 years ago by
poldoposta.
-
-
10/10/2021 at 5:01 PM #179307
” non gira sotto versione 10.2 – non riconosce drawonlastbaronly” è semplicemente una serie di massimi e minimi da tracciare sul grafico” uso prorealtime e t3 webank – sulla prima è perfetto sulla seconda non funzione. Mi serve averla sulle due piatte e gira solo sulla prima” vi condivido il mio listato di due anni fà con la speranza che qualcuno sappia rattopparlo. Grazie “
defparam drawonlastbaronly = true
hk = highest[500](high)
lk = lowest[500](low)
hh = highest[250](high)
lH = lowest[250](low)
hs = highest[125](high)
ls = lowest[125](low)
hm = highest[22](high)
lm = lowest[22](low)
hw = highest[10](high)
lw = lowest[10](low)DRAWHLINE(dhigh(0))coloured(0,255,0)
DRAWHLINE(dhigh(1))coloured(0,255,0)
DRAWHLINE(dhigh(2))coloured(0,255,0)
DRAWHLINE(dhigh(3))coloured(0,255,0)
DRAWHLINE(dhigh(4))coloured(0,255,0)
DRAWHLINE(dhigh(5))coloured(0,255,0)DRAWHLINE(dlow(0))coloured(255,0,0)
DRAWHLINE(dlow(1))coloured(255,0,0)
DRAWHLINE(dlow(2))coloured(255,0,0)
DRAWHLINE(dlow(3))coloured(255,0,0)
DRAWHLINE(dlow(4))coloured(255,0,0)
DRAWHLINE(dlow(5))coloured(255,0,0)DRAWHLINE(hk)coloured(0,0,0)
DRAWHLINE(lk)coloured(0,0,0)
DRAWHLINE(hh)coloured(0,0,0)
DRAWHLINE(lH)coloured(0,0,0)
DRAWHLINE(hs)coloured(0,0,0)
DRAWHLINE(ls)coloured(0,0,0)
DRAWHLINE(hm)coloured(0,0,0)
DRAWHLINE(lm)coloured(0,0,0)
DRAWHLINE(hw)coloured(0,0,0)
DRAWHLINE(lw)coloured(0,0,0)
Voffset = 5*pipsize
DRAWTEXT(“MAX DUE ANNI”,barindex-60,hk+Voffset,SansSerif,Bold,16)coloured(153,153,0)
DRAWTEXT(“MIN DUE ANNI”,barindex-60,Lk+Voffset,SansSerif,Bold,16)coloured(255,0,0)
DRAWTEXT(“MAX ULTIMO ANNO”,barindex-40,hH+Voffset,SansSerif,Bold,16)coloured(153,153,0)
DRAWTEXT(“MIN ULTIMO ANNO”,barindex-40,LH+Voffset,SansSerif,Bold,16)coloured(255,0,0)
DRAWTEXT(“MAX SEMESTRE”,barindex-28,hS+Voffset,SansSerif,Bold,16)coloured(153,153,0)
DRAWTEXT(“MIN SEMESTRE”,barindex-28,LS+Voffset,SansSerif,Bold,16)coloured(255,0,0)
DRAWTEXT(“MAX MENSILE”,barindex-15,hM+Voffset,SansSerif,Bold,16)coloured(153,153,0)
DRAWTEXT(“MIN MENSILE”,barindex-15,LM+Voffset,SansSerif,Bold,16)coloured(255,0,0)
DRAWTEXT(“MAX SETTIMANALE”,barindex,hW+Voffset,SansSerif,Bold,16)coloured(153,153,0)
DRAWTEXT(“MIN SETTIMANALE”,barindex,LW+Voffset,SansSerif,Bold,16)coloured(255,0,0)DRAWTEXT(“MAX oggi”,barindex-0,dhigh(0)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MAX ieri”,barindex-1,dhigh(1)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MAX ieri-2”,barindex-2,dhigh(2)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MAX ieri-3”,barindex-3,dhigh(3)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MAX ieri-4”,barindex-4,dhigh(4)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MAX ieri-5”,barindex-5,dhigh(5)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
DRAWTEXT(“MIN oggi”,barindex-0,dlow(0)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
DRAWTEXT(“MIN ieri”,barindex-1,dlow(1)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
DRAWTEXT(“MIN ieri-2”,barindex-2,dlow(2)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
DRAWTEXT(“MIN ieri-3”,barindex-3,dlow(3)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
DRAWTEXT(“MIN ieri-4”,barindex-4,dlow(4)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
DRAWTEXT(“MIN ieri-5”,barindex-5,dlow(5)+Voffset,SansSerif,Bold,10)coloured(255,0,0)period = 500
Yhh = highest[period](high)
Yll = lowest[period](low)FOR i = 0 to period do
if high[i] = Yhh then
Xhh = barindex[i]
endif
if low[i] = Yll then
Xll = barindex[i]
endif
NEXTDRAWVLINE(Xhh)coloured(0,200,0)
DRAWVLINE(Xll)coloured(200,0,0)
period = 250Yhh = highest[period](high)
Yll = lowest[period](low)FOR i = 0 to period do
if high[i] = Yhh then
Xhh = barindex[i]
endif
if low[i] = Yll then
Xll = barindex[i]
endif
NEXTperiod = 125
Yhh = highest[period](high)
Yll = lowest[period](low)FOR i = 0 to period do
if high[i] = Yhh then
Xhh = barindex[i]
endif
if low[i] = Yll then
Xll = barindex[i]
endif
NEXTperiod = 22
Yhh = highest[period](high)
Yll = lowest[period](low)FOR i = 0 to period do
if high[i] = Yhh then
Xhh = barindex[i]
endif
if low[i] = Yll then
Xll = barindex[i]
endif
NEXTperiod = 10
Yhh = highest[period](high)
Yll = lowest[period](low)FOR i = 0 to period do
if high[i] = Yhh then
Xhh = barindex[i]
endif
if low[i] = Yll then
Xll = barindex[i]
endif
NEXTDRAWVLINE(Xhh)coloured(0,200,0)
DRAWVLINE(Xll)coloured(200,0,0)
DRAWVLINE(Xhh)coloured(0,200,0)
DRAWVLINE(Xll)coloured(200,0,0)
DRAWVLINE(Xhh)coloured(0,200,0)
DRAWVLINE(Xll)coloured(200,0,0)
DRAWVLINE(Xhh)coloured(0,200,0)
DRAWVLINE(Xll)coloured(200,0,0)
RETURN10/10/2021 at 6:52 PM #179309Due sono le possibilità:
- togliere la prima riga (defparam drawonlastbaronly = true)
- riscrivere l’indicatore limitandolo alle sole ultime righe, mediante una serie di IF (ma occorrerebbe verificare esattamente cosa deve fare l’indicatore).
10/10/2021 at 8:01 PM #179319dovrebbe semplicemente tracciare i max e min ——————–daily – weekly – montly
poi il resto lo ho allungato io aggiungendo i/ x day/ x weeks /x months e alche semestri e anni (ma la logica e sempre quella)
————————————————————————————————————————
bastano anche solo i max e min ——————–daily – weekly – montly
se puoi giusto qualche riga di esempio, ho il cervello atrofizzato dopo due anni. GRAZIE MILLE
10/13/2021 at 4:03 PM #179603Eccolo (Min+Max Giornalieri, Settimanali e Mensili):
1234567891011121314151617181920212223242526272829303132333435363738394041424344ONCE MaxDoggi = highONCE MinDoggi = lowONCE MaxWoggi = highONCE MinWOggi = lowONCE MaxMoggi = highONCE MinMOggi = lowONCE MaxDieri = highONCE MinDieri = lowONCE MaxWieri = highONCE MinWieri = lowONCE MaxMieri = highONCE MinMieri = low// aggiornamento mensileIF OpenMonth <> OpenMonth[1] THENMaxMieri = MaxMoggiMinMieri = MinMoggiMaxMoggi = highMinMoggi = lowENDIF// aggiornamento settimanaleIF OpenDayOfWeek < OpenDayOfWeek[1] THENMaxWieri = MaxWoggiMinWieri = MinWoggiMaxWoggi = highMinWoggi = lowENDIF// aggiornamento giornalieroIF OpenDay <> OpenDay[1] THENMaxDieri = MaxDoggiMinDieri = MinDoggiMaxDoggi = highMinDoggi = lowENDIF//MaxMoggi = max(high,MaxMoggi)Minmoggi = min(low, MinMoggi)//MaxWoggi = max(high,MaxWoggi)MinWoggi = min(low, MinWoggi)//MaxDoggi = max(high,MaxDoggi)MinDoggi = min(low, MinDoggi)//RETURN MaxMieri AS "Max M",MinMieri AS "Min M",MaxWieri AS "Max W",MinWieri AS "Min W",MaxDieri AS "Max D",MinDieri AS "Min D"1 user thanked author for this post.
10/13/2021 at 4:06 PM #179607I colori non li ho messi, così puoi sceglierli a tuop piacimento dalle proprietà.
1 user thanked author for this post.
10/14/2021 at 12:46 PM #179669Grazie mille per l’impegno. Funziona sotto la mi PRT ma non va sotto la T3 (anche se questo forum è per PRT)
Sei gentilissimo, ma la t3 mi chiede di dichiarare le tre variabili
OpenMonthOpenDayOfWeekOpenDayle ho dichiarate nell’apposita sezione dando valore 1, ma non funziona.SEI GENTILISSIMO A PRESCINDERE DALLA SOLUZIONE, GRAZIE MILLE10/14/2021 at 1:51 PM #179670Togli Open:
- Month
- DayOfWeek
- Day
è probabile che sfalzi un po’ qualcosa, perché con Open restituisce il valore all’apertura della candela, senza, invece, quello alla chiusura.Quindi alla chiusura della candela Giornaliera, OpenDay restituirà il giorno di apertura (cioè ieri), mentre Day il giorno alla chiusura (cioè oggi).1 user thanked author for this post.
10/14/2021 at 7:02 PM #179690questo restituisce con
OpenMonthOpenDayOfWeekOpenDay——————————————–se le cambio con- Month
- DayOfWeek
- Day mi dice addirittura “utilizza le variabili Month dayofweek day”
P.S. i valori che restituisce non sono ne mass ne min ne apert ne chius di nessun time frame.
Questa banale linea di codice sarebbe perfetta se permettesse di variare il numero di candele da analizzare (ad esempio le ultime 5 il venerdì sera per avere i max min op cl di una settimana)
n=0
return DOpen(n) as “Apertura” , DHigh(n) as “Massimo” , DLow(n) as “Minimo” , DClose(n) as “Chiusura”2 screenshot relativo a questa ipotesi
10/14/2021 at 7:09 PM #179692//SEMPLICE A x PERIODI
Periodi = 5
Preced = 0
Massimo = highest[Periodi](high[Preced])
Minimo = lowest[Periodi](low[Preced])
RETURN Massimo AS “Max”,Minimo AS “Min”Questo sarebbe perfetto se solo fosse realistico…………….restituisce forse bene i max e non i min (posso fare a meno delle open e close)….FUNZIONA SU TUTTI I TF SENZA VARIARE NULLA (solo i periodi a piacimento)
Io ti rompo le scatole, ma liberissimo di non rispondermi più………….GRAZIE MILLE
10/14/2021 at 10:19 PM #179697La versione che hai no ha le costanti di sistema Month, DayOfWeek e Day?
Allora non ho soluzioni da suggerirti.
1 user thanked author for this post.
10/15/2021 at 6:20 PM #179755Ho corretto BENE il codice come mi hai suggerito sopra ed ora funziona, ma sfalza le linee……….non trovo una logica precisa: ti riallego un screen shot grafico DAILY – dove i massimi ed i minimi Month sono in nero, in giallo i Weekly, in bordeaux i Day. Grazie per la pazienza, ma ora è diventata una questione di principio…………funziona, perchè sfalza????
Grazie ancora
—————————————————————————–
ONCE MaxDoggi = high
ONCE MinDoggi = low
ONCE MaxWoggi = high
ONCE MinWOggi = low
ONCE MaxMoggi = high
ONCE MinMOggi = low
ONCE MaxDieri = high
ONCE MinDieri = low
ONCE MaxWieri = high
ONCE MinWieri = low
ONCE MaxMieri = high
ONCE MinMieri = low
// aggiornamento mensile
IF Month <> Month[1] THEN
MaxMieri = MaxMoggi
MinMieri = MinMoggi
MaxMoggi = high
MinMoggi = low
ENDIF
// aggiornamento settimanale
IF DayOfWeek < DayOfWeek[1] THEN
MaxWieri = MaxWoggi
MinWieri = MinWoggi
MaxWoggi = high
MinWoggi = low
ENDIF
// aggiornamento giornaliero
IF Day <>Day[1] THEN
MaxDieri = MaxDoggi
MinDieri = MinDoggi
MaxDoggi = high
MinDoggi = low
ENDIF
//
MaxMoggi = max(high,MaxMoggi)
Minmoggi = min(low, MinMoggi)
//
MaxWoggi = max(high,MaxWoggi)
MinWoggi = min(low, MinWoggi)
//
MaxDoggi = max(high,MaxDoggi)
MinDoggi = min(low, MinDoggi)
//
RETURN MaxMieri AS “Max M”,MinMieri AS “Min M”,MaxWieri AS “Max W”,MinWieri AS “Min W”,MaxDieri AS “Max D”,MinDieri AS “Min D”10/16/2021 at 8:44 AM #17977210/16/2021 at 11:36 AM #179775Vedi lo screenshot ….. massimi e minimi segnati con i relativi colori. Se sbaglio ad interpretare corregimi. Grazie
10/16/2021 at 11:51 AM #17977810/16/2021 at 2:04 PM #179785Ho capito, io ti avevo calcolato i valori sulle candele chiuse, non sui dati correnti, qui sono indietro tutti di una candela (Mensile, Settimanale e Giornaliera).
Cambia l’ultima riga con questa:
1RETURN MaxMOggi AS “Max M”,MinMOggi AS “Min M”,MaxWOggi AS “Max W”,MinWOggi AS “Min W”,MaxDOggi AS “Max D”,MinDOggi AS “Min D”1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on