Operazioni su range Daily
Forums › ProRealTime forum Italiano › Supporto ProOrder › Operazioni su range Daily
- This topic has 25 replies, 2 voices, and was last updated 3 years ago by robertogozzi.
-
-
08/27/2021 at 11:31 AM #176371
Come ti ho detto TIME è l’ora di chiusura della barra, mentre OPENTIME è quella di apertura.
Scegli te, se usi TIME indicando le 170000 farai riferimento alla chiusura della barra aperta alle 160000 (o 163000 sul 30 minuti), se invece usi OPENTIME (alla stessa ora) farai riferimento alla barra aperta alle 170000 (uguale sul 30 minuti).
In sostanza andava bene all’inizio, forse avevi interpretato male i dati visualizzati con GRAPH.
Se vuoi avere la possibilità di tornare indietro di più giorni devi usare un vettore (array) in modo da conservare tutti gli orari delle 173000 di ogni giorno:
123456ONCE $Prezzo1730[0] = 0ONCE Elemento = 0IF Time = 173000 THEN //Time è l'ora in cui una barra chiudeElemento = Elemento + 1$Prezzo1730[Elemento] = closeENDIFquindi se fai riferimento a:
1$Prezzo1730[Elemento]farai riferimento sempre all’ultimo, mentre per fare riferimento a quello precedente devi scrivere:
1$Prezzo1730[Elemento - 1]e per il 5o precedente:
1$Prezzo1730[Elemento - 5]e così via.
1 user thanked author for this post.
08/27/2021 at 12:00 PM #176373Grazie per la precisazione, proverò con calma gli array che mi sembrano meglio.
Un chiarimento: con gli array il prezzo fissato, es 17 di ieri, rimane fisso anche se lo utilizzo DOPO le 17 di oggi? (le altre formule, che operano per sostituzione, non andrebbero bene in quanto il prezzo di ieri delle 17 , cambierebbe oggi dopo le 17)
08/27/2021 at 12:40 PM #176376Si, ogni elemento resta invariato, a meno che tu non lo modifichi esplicitamente.
08/28/2021 at 9:48 AM #176403Stò provando le formule sugli array.
Per indicare (oggi, sabato 28) il prezzo di ieri (venerdi 27) alle 17 (che corrisponde al prezzo della chiusura della barra oraria delle 16) scrivo (vd sotto) e funziona (verificato con i graph)
123456ONCE $Prezzo1700[0] = 0ONCE Elemento = 0IF Time = 170000 THENElemento = Elemento + 1$Prezzo1700[Elemento-1] = closeENDIFche è uguale (verificato) alla formula:
123IF Time = 170000 THEN // è il prezzo di ieri dato dalla chiusura della candela oraria delle 160000PrezzoIeriOre17 = closeENDIFPERO’ non mi funziona con gli array (probabilmente sbaglio qualcosa se puoi controllare) se provo ad avere il prezzo delle 17000 dell’altro ieri (giovedi 26).
Mi ritorna sempre quello di ieri alle 17 = 15842.6, mentre dovrebbe essere 15782 (prezzo di chiusura della barra oraria delle 16 del giorno giovedi 26) .
La formula con gli array che non mi funziona per indicare il prezzo delle 17 di giovedi 26 è questa (ho solo cambiato “elemento” da -1 a -2):
123456ONCE $Prezzo1700[0] = 0ONCE Elemento = 0IF Time = 170000 THENElemento = Elemento + 1$Prezzo1700[Elemento-2] = closeENDIF08/28/2021 at 9:54 AM #176404Il prezzo di chiusura della barra oraria delle 160000 di giovedi 26 è 15782, si vede dal grafico ed anche da questa formula “classica” (verificata):
1234IF Time = 170000 THEN // è il prezzo dell'altro ieri dato dalla chiusura della candela oraria delle 160000prezzoAltroIeri = prezzoIeriprezzoIeri = closeENDIF1graph prezzoAltroIeri coloured (0,0,0) //nero08/30/2021 at 11:32 AM #176478Ho riprovato, ma confermo che questa formula degli array da -2 (compreso) in poi NON funziona, mentre se scrivo -1 mi riporta correttamente il valore di ieri.
ONCE $Prezzo1700[0] = 0
ONCE Elemento = 0
IF Time = 170000 THEN
Elemento = Elemento + 1
$Prezzo1700[Elemento-2] = close
ENDIF08/31/2021 at 10:21 AM #176522Nella riga
1$Prezzo1700[Elemento-1] = closedel post 176403, perché la usi? A che ti serve cambiare il giorno precedente mettendoci il CLOSE di oggi?
08/31/2021 at 10:37 AM #17652408/31/2021 at 11:19 AM #176528No, il problema non è close, vorrei capire a cosa serve il -1.
08/31/2021 at 11:31 AM #176530Non sono esperto di array. So solo:
A) che questa formula funziona, individua il prezzo di ieri alle 17 (chiusura barra oraria delle 16)
ONCE $Prezzo1700[0] = 0
ONCE Elemento = 0
IF Time = 170000 THEN
Elemento = Elemento + 1
$Prezzo1700[Elemento-1] = close
ENDIFB) se tolgo close non funziona più.
C) Non riesco ad ottenere il prezzo del close dell’altro ieri mettendo [Elemento -2] = close
D) In ogni caso posso sempre utilizzare la vecchia formula che funziona anche indietro di 5 candele
08/31/2021 at 11:38 AM #176532La risposta C è quello che volevo sapere.
Quando vuoi sapere il valore della chiusura del giorno prima è sufficiente usare $Prezzo1700[Elemento-1], senza asegnargli nessun valore, altrimenti lo cambi mettendoci il valore odierno. -
AuthorPosts
Find exclusive trading pro-tools on