IntradayBarIndex
IntradayBarIndex in ProBuilder conta le bar stampate dall'inizio della giornata di negoziazione, partendo da 0, e accetta un offset per leggere le sessioni precedenti.
Sintassi
IntradayBarIndex
IntradayBarIndex[N]Parametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
| N | intero | 0 | Offset del bar opzionale. IntradayBarIndex[1] legge il valore come era un bar prima. |
Come funziona
IntradayBarIndex numera le bar di ogni sessione di negoziazione. La prima bar dopo l'apertura giornaliera ha indice 0, la bar successiva 1, e così via fino alla fine della sessione, momento in cui il contatore riparte per il giorno successivo. Alla 50ª bar del giorno il valore è 49.
Il conteggio dipende dal timeframe del grafico. Su un grafico a 5 minuti di un mercato aperto per 8 ore, l'indice va da 0 a 95; su un grafico a 1 ora dello stesso mercato va da 0 a 7. Il codice che condiziona il comportamento a un indice specifico incorpora quindi un'ipotesi sul timeframe, che vale la pena indicare in un commento.
L'offset opzionale tra parentesi segue la consueta convenzione delle serie, leggendo il valore da una bar precedente. Mentre BarIndex conta le bar dall'inizio dei dati caricati e non si azzera mai, IntradayBarIndex è la controparte relativa alla sessione, il che lo rende lo strumento naturale per la logica legata all'apertura, come saltare le prime bar volatili del giorno o misurare la posizione all'interno della sessione.
Esempi
Esempio 1, Visualizzare il conteggio delle bar della sessione (Indicatore)
// Index of the current bar within today's session, first bar = 0
RETURN IntradayBarIndexIl tracciato sale di uno a ogni bar del giorno e torna a 0 quando inizia una nuova sessione, il che rende anche i confini di sessione visibili a prima vista.
Esempio 2, Saltare le prime bar del giorno (ProOrder)
// Only trade once 4 bars of the session have completed
IF IntradayBarIndex >= 4 AND NOT ONMARKET THEN
IF close CROSSES OVER Average[20](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIF
ENDIFLa condizione esterna blocca gli ingressi durante le prime quattro bar dopo l'apertura, un modo comune per evitare il movimento di prezzo erratico attorno all'inizio della sessione.
Esempio 3, Segnare ogni apertura di sessione (Indicatore)
// Draw a vertical line on the first bar of every trading day
IF IntradayBarIndex = 0 THEN
DRAWVLINE(BarIndex) COLOURED(128, 128, 128)
ENDIF
RETURNVerificare l'indice 0 identifica la prima bar del giorno, e DRAWVLINE la segna sul grafico, producendo una griglia visiva dei confini di sessione.
Errori e insidie comuni
- Conteggio a partire da zero. La prima bar del giorno è 0, non 1. Una condizione come
IntradayBarIndex = 1si attiva sul secondo bar della sessione. - Valori dipendenti dal timeframe. Lo stesso indice si riferisce a orari diversi su timeframe diversi. Spostare uno script da un grafico a 5 minuti a uno a 15 minuti cambia silenziosamente ciò che
IntradayBarIndex >= 4significa. - Confusione con BarIndex. BarIndex conta dall'inizio della cronologia caricata e non si azzera mai; IntradayBarIndex si azzera ogni giorno. Scambiarli produce condizioni vere quasi sempre o quasi mai.
- Grafici non intraday. Sui timeframe giornalieri o superiori ogni bar è la prima bar del suo giorno, quindi il valore non è significativo. Limitane l'uso ai timeframe intraday.
Istruzioni correlate
BarIndex, conteggio delle bar dall'inizio dei dati caricati, senza azzeramenti giornalieri.BarsSince, bar trascorse da quando una condizione è stata vera per l'ultima volta.TIME, ora della bar corrente, un modo alternativo per ancorare la logica intraday.CurrentTime, ora dell'orologio della macchina che esegue la piattaforma.CurrentHour, componente dell'ora dell'orario corrente.Today, costante di data per il giorno corrente.OpenTime, ora di apertura della bar corrente.