Iscriviti ora
Data e ora/probuilder · probacktest · proorder · proscreener

Hour

Hour restituisce l'ora (da 0 a 23) dell'orario di chiusura di un bar in ProBuilder. Usalo con l'offset [N] per costruire filtri sull'ora del giorno per strategie intraday.

Sintassi

probuilder
Hour[N]

Parametri

NomeTipoPredefinitoDescrizione
Nintero0Offset del bar. 0 legge il bar corrente, 1 il bar precedente, e così via. Le parentesi quadre possono essere omesse per leggere il bar corrente.

Come funziona

Hour estrae la componente ora dal timestamp di un bar, espressa in formato 24 ore. Il valore riflette l'ora di chiusura del bar, quindi su un grafico a 1 ora un bar che apre alle 09:00 e chiude alle 10:00 riporta Hour = 10. La parola chiave gemella OpenHour legge invece il timestamp di apertura della stessa bar, ed è per questo che le due parole chiave possono discordare della durata di una bar sui grafici intraday.

L'opzionale [N] l'indice torna indietro nello storico. Hour[1] è l'ora del close della barra precedente, Hour[5] l'ora di chiusura di cinque bar prima. Questo permette di confrontare la fascia oraria corrente con quelle precedenti senza memorizzare i valori manualmente.

L'ora restituita dipende dal fuso orario configurato nella piattaforma, non dall'orologio locale della borsa. Due utenti che eseguono lo stesso codice con impostazioni di fuso orario diverse possono vedere valori diversi per lo stesso bar.

Hour è più significativo sui timeframe intraday. Sui timeframe giornalieri o superiori ogni bar chiude allo stesso orario di sessione, quindi in quel caso la parola chiave non aggiunge informazione discriminante.

Esempi

Esempio 1, Rilevare l'ora di chiusura del bar precedente (Indicatore)

probuilder
// Flag bars whose previous bar closed during the 9 o'clock hour
IF (Hour[1] = 9) THEN
  lasthourwasnine = 1
ELSE
  lasthourwasnine = 0
ENDIF
RETURN lasthourwasnine

L'indicatore traccia 1 ogni volta che l'ora di chiusura della bar precedente era 9, e 0 altrimenti. Il [1] l'offset sposta la lettura di un bar nel passato.

Esempio 2, Limitare gli ingressi a una finestra di trading (ProOrder)

probuilder
// Only allow new long entries between 09:00 and 17:00
timeOK = Hour >= 9 AND Hour < 17

IF timeOK AND close CROSSES OVER Average[50](close) THEN
  BUY 1 SHARES AT MARKET
ENDIF

Il timeOK il flag filtra gli ingressi in modo che il sistema resti inattivo fuori dagli orari di sessione scelti, un modo comune per evitare mercati notturni poco liquidi.

Esempio 3, Ricerca di momentum di fine sessione (ProScreener)

probuilder
// Match instruments making a new 20-bar high after 15:00
lateSession = Hour >= 15
newHigh = close >= Highest[20](close)

SCREENER[lateSession AND newHigh] (Hour AS "Close hour")

Lo screener restituisce solo gli strumenti il cui ultimo bar ha chiuso alle 15:00 o più tardi segnando al tempo stesso un massimo di chiusura a 20 bar, e mostra l'ora di chiusura come colonna di ordinamento.

Errori e insidie comuni

  • Orario di chiusura, non di apertura. Hour legge il timestamp di chiusura del bar. Su un grafico a 1 ora il bar che copre da 09:00 a 10:00 restituisce 10, non 9. Usa OpenHour quando la logica deve basarsi sull'ora di inizio di un bar.
  • Dipendenza dal fuso orario. Il valore segue il fuso orario configurato nella piattaforma. Il codice che fissa in modo rigido gli orari di borsa si rompe silenziosamente quando viene eseguito con un'impostazione di fuso orario diversa.
  • Inutile sui grafici giornalieri. Su timeframe giornalieri e superiori ogni bar riporta la stessa ora di chiusura, quindi condizioni come Hour = 9 corrispondono sempre oppure mai. Applica la keyword sui timeframe intraday.
  • Passaggio di mezzanotte. Le sessioni che attraversano la mezzanotte non possono essere testate con un singolo controllo di intervallo. Una finestra dalle 22:00 alle 02:00 richiede Hour >= 22 OR Hour < 2, non una combinazione AND.
  • OpenHour, ora dell'orario di apertura del bar corrente, la forma gemella di Hour.
  • CurrentHour, ora dell'orologio della macchina anziché il timestamp di una bar.
  • Minute, componente dei minuti (da 0 a 59) dell'orario di chiusura di un bar.
  • Month, numero del mese (da 1 a 12) della data di chiusura di un bar.
  • Day, giorno del mese della data di chiusura di una bar.
  • DayOfWeek, giorno della settimana della data di chiusura di una bar.
  • TIME, orario di chiusura completo di una bar in formato HHMMSS.
  • Today, data della bar corrente in formato YYYYMMDD.