Únete hoy
Fecha y hora/probuilder · probacktest · proorder · proscreener

Hour

Hour devuelve la hora (0 a 23) del cierre de un bar en ProBuilder. Úsalo con el desplazamiento [N] para construir filtros por hora del día en estrategias intraday.

Sintaxis

probuilder
Hour[N]

Parámetros

NombreTipoPor defectoDescripción
Nentero0Desplazamiento de bars. 0 lee el bar actual, 1 el bar anterior, y así sucesivamente. Se pueden omitir los corchetes para leer el bar actual.

Cómo funciona

Hour extrae el componente de hora de la marca de tiempo de un bar, expresado en formato de 24 horas. El valor refleja la hora de cierre del bar, por lo que en un gráfico de 1 hora un bar que abre a las 09:00 y cierra a las 10:00 indica Hour = 10. La palabra clave hermana OpenHour lee en cambio la marca de tiempo de apertura del mismo bar, razón por la cual las dos palabras clave pueden discrepar en la duración de un bar en gráficos intraday.

El opcional [N] el índice retrocede por el historial. Hour[1] es la hora del cierre de la bar anterior, Hour[5] la hora de cierre cinco bars atrás. Esto permite comparar la franja horaria actual con otras anteriores sin almacenar valores manualmente.

La hora devuelta depende de la zona horaria configurada en la plataforma, no del reloj local del mercado. Dos usuarios que ejecuten el mismo código con distintos ajustes de zona horaria pueden ver valores diferentes para el mismo bar.

Hour tiene más sentido en marcos temporales intraday. En marcos diarios o superiores todos los bars cierran a la misma hora de la sesión, por lo que ahí la palabra clave no aporta ninguna información que discrimine.

Ejemplos

Ejemplo 1, Detectar la hora de cierre del bar anterior (Indicador)

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

El indicador dibuja 1 cuando la hora de cierre de la bar anterior fue 9, y 0 en caso contrario. El [1] desplaza la lectura una barra hacia el pasado.

Ejemplo 2, Restringir las entradas a una ventana de negociación (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

El timeOK filtra las entradas para que el sistema permanezca inactivo fuera del horario de sesión elegido, una forma habitual de evitar mercados nocturnos poco profundos.

Ejemplo 3, Buscar momentum de final de sesión (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")

El screener solo devuelve los instrumentos cuyo último bar cerró a las 15:00 o más tarde marcando además un máximo de cierre de 20 bars, y muestra la hora de cierre como columna de ordenación.

Errores y trampas habituales

  • Hora de cierre, no hora de apertura. Hour lee la marca de tiempo de cierre del bar. En un gráfico de 1 hora el bar que cubre de 09:00 a 10:00 devuelve 10, no 9. Usa OpenHour cuando la lógica debe basarse en la hora en que empezó un bar.
  • Dependencia de la zona horaria. El valor sigue la zona horaria configurada en la plataforma. El código que fija de forma rígida las horas del mercado falla silenciosamente cuando se ejecuta con un ajuste de zona horaria diferente.
  • Inútil en gráficos diarios. En marcos temporales diarios y superiores cada bar informa de la misma hora de cierre, por lo que condiciones como Hour = 9 coincidir siempre o nunca. Aplica la palabra clave en marcos temporales intraday.
  • Paso por la medianoche. Las sesiones que cruzan la medianoche no pueden comprobarse con una única comprobación de rango. Una ventana de 22:00 a 02:00 necesita Hour >= 22 OR Hour < 2, no una combinación AND.
  • OpenHour, hora de apertura del bar actual, la forma hermana de Hour.
  • CurrentHour, hora del reloj de la máquina en lugar de la marca de tiempo de un bar.
  • Minute, componente de minutos (0 a 59) de la hora de cierre de un bar.
  • Month, número de mes (1 a 12) de la fecha de cierre de un bar.
  • Day, día del mes de la fecha de cierre de un bar.
  • DayOfWeek, día de la semana de la fecha de cierre de un bar.
  • TIME, hora de cierre completa de un bar en formato HHMMSS.
  • Today, fecha del bar actual en formato YYYYMMDD.