OpenTime
OpenTime devuelve la hora de apertura del bar actual como un entero HHMMSS en la zona horaria local de la plataforma. Se usa para condiciones basadas en el tiempo en ProBuilder.
Sintaxis
OpenTimeLa palabra clave no toma parámetros. Como otras constantes de fecha y hora, acepta un índice de historial opcional entre corchetes, por lo que OpenTime[1] lee la hora de apertura del bar anterior.
Cómo funciona
Cada bar de un gráfico registra el momento en que empezó a formarse. OpenTime expone ese momento como un único entero con formato HHMMSS: los dos primeros dígitos son la hora en formato de 24 horas, los dos siguientes los minutos y los dos últimos los segundos. Un bar que abre a las 09:30:00 devuelve por tanto 93000, y una que abre a las 14:05:30 da 140530.
El valor sigue la zona horaria local configurada en las preferencias de la plataforma ProRealTime™, no la zona horaria del mercado ni UTC. Dos usuarios que ejecuten código idéntico con configuraciones de zona horaria distintas pueden observar valores de OpenTime diferentes para el mismo bar.
OpenTime se combina de forma natural con TIME, que informa de la hora de cierre de un bar. En gráficos intraday ambos difieren en la duración del bar. Para un equivalente de la apertura del bar basado en epoch e independiente de la zona horaria, usa OpenTimestamp en su lugar.
Como el resultado es un entero simple, se puede comparar con literales (OpenTime >= 80000), almacenarse en variables o combinarse con otras expresiones dentro de cualquier sentencia condicional.
Ejemplos
Ejemplo 1, marcar el bar de apertura de la sesión (Indicador)
sessionStart = 0
// Flag the bar that opened at exactly 09:30:00
IF OpenTime = 93000 THEN
sessionStart = 1
ENDIF
RETURN sessionStartEl indicador dibuja 1 en el bar que abrió a las 9:30 AM hora local y 0 en todos los demás, una forma sencilla de marcar el inicio de una sesión de negociación.
Ejemplo 2, restringir las entradas a una ventana de la mañana (ProOrder)
// Allow new long entries only on bars opening between 08:00 and 11:30
IF OpenTime >= 80000 AND OpenTime <= 113000 THEN
IF NOT LongOnMarket AND close CROSSES OVER Average[50](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIF
ENDIF
SET STOP PLOSS 30La condición exterior actúa como filtro temporal, por lo que el cruce de medias móviles solo puede abrir una posición durante la ventana de la mañana definida.
Ejemplo 3, buscar bars de final de sesión (ProScreener)
// Match instruments whose current bar opened at or after 16:00
lateOpen = OpenTime >= 160000
SCREENER[lateOpen] ("Open time")El screener devuelve los instrumentos cuyo bar más reciente abrió durante el tramo final de la jornada de negociación, útil para separar los precios tardíos de los datos obsoletos.
Errores y trampas habituales
- Número de dígitos incorrecto en las comparaciones. 9:30 AM es
93000, no930o0930. El valor es un compuesto numérico HHMMSS, por lo que todo literal de comparación debe indicar horas, minutos y segundos. - Dependencia de la zona horaria. OpenTime refleja la configuración de zona horaria local de la plataforma. El código compartido entre usuarios de zonas horarias distintas, o ejecutado en un VPS con otro reloj, coincidirá con bars diferentes a menos que las configuraciones concuerden.
- Confundir las horas de apertura y de cierre.
TIMEinforma de cuándo cierra un bar, OpenTime informa de cuándo abre. En un gráfico de 1 hora ambos difieren en una hora, lo que basta para desplazar un filtro de entrada un bar completo. - Igualdad exacta en marcos temporales que no coinciden.
OpenTime = 93000solo coincide cuando un bar abre realmente en ese segundo. En un gráfico de 7 minutos o basado en ticks puede que ningún bar cumpla la igualdad, así que las comparaciones por rango son más seguras.
Instrucciones relacionadas
CurrentTime, hora actual del reloj en lugar de la apertura del bar.TIME, hora de cierre de un bar en el mismo formato HHMMSS.OpenTimestamp, marca de tiempo Unix de la apertura del bar, independiente de la zona horaria.Timestamp, marca de tiempo Unix del cierre del bar.OpenHour, componente de hora de la hora de apertura del bar.OpenMinute, componente de minutos de la hora de apertura del bar.OpenSecond, componente de segundos de la hora de apertura del bar.OpenDate, fecha en la que abrió el bar, en formato YYYYMMDD.