Bli medlem i dag
Dato og tid/probuilder · probacktest · proorder · proscreener

OpenTime

OpenTime returnerer åpningstiden til den gjeldende baren som et HHMMSS-heltall i plattformens lokale tidssone. Brukes til tidsbaserte betingelser i ProBuilder.

Syntaks

probuilder
OpenTime

Nøkkelordet tar ingen parametere. Som andre dato- og tidskonstanter godtar det en valgfri historikkindeks i hakeparenteser, så OpenTime[1] leser åpningstiden til forrige bar.

Slik fungerer det

Hver bar i et diagram registrerer øyeblikket den begynte å dannes. OpenTime eksponerer det øyeblikket som ett enkelt heltall i HHMMSS-format: de to første sifrene er timen i 24-timers format, de to neste minuttene og de to siste sekundene. En bar som åpner 09:30:00 gir derfor 93000, og en som åpner 14:05:30 gir 140530.

Verdien følger den lokale tidssonen som er satt i plattforminnstillingene i ProRealTime™, ikke børsens tidssone eller UTC. To brukere som kjører identisk kode med ulike tidssoneinnstillinger kan observere ulike OpenTime-verdier for samme bar.

OpenTime hører naturlig sammen med TIME, som rapporterer lukketidspunktet til en bar. I intraday-diagrammer skiller de to seg med barens varighet. For en epokebasert, tidssoneuavhengig ekvivalent til barens åpning, bruk OpenTimestamp i stedet.

Fordi resultatet er et vanlig heltall, kan det sammenlignes med literaler (OpenTime >= 80000), lagres i variabler eller kombineres med andre uttrykk inne i enhver betinget setning.

Eksempler

Eksempel 1, Flagging av sesjonens åpningsbar (Indikator)

probuilder
sessionStart = 0
// Flag the bar that opened at exactly 09:30:00
IF OpenTime = 93000 THEN
  sessionStart = 1
ENDIF
RETURN sessionStart

Indikatoren plotter 1 på baren som åpnet 9:30 AM lokal tid og 0 overalt ellers, en enkel måte å markere starten på en handelssesjon.

Eksempel 2, Begrense inngangene til et morgenvindu (ProOrder)

probuilder
// 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 30

Den ytre betingelsen fungerer som et tidsfilter, slik at kryssingen av glidende gjennomsnitt bare kan utløse en posisjon i det definerte morgenvinduet.

Eksempel 3, Screening for barer sent i sesjonen (ProScreener)

probuilder
// Match instruments whose current bar opened at or after 16:00
lateOpen = OpenTime >= 160000
SCREENER[lateOpen] ("Open time")

Screeneren returnerer instrumenter der den siste baren åpnet i den siste delen av handelsdagen, nyttig for å skille sene kurser fra utdaterte data.

Vanlige feil og fallgruver

  • Feil antall sifre i sammenligninger. 9:30 AM er 93000, ikke 930 eller 0930. Verdien er en numerisk HHMMSS-sammensetning, så hver sammenligningsliteral må skrive ut timer, minutter og sekunder.
  • Avhengighet av tidssone. OpenTime gjenspeiler plattformens innstilling for lokal tidssone. Kode som deles mellom brukere i ulike tidssoner, eller som kjøres på en VPS med en annen klokke, vil treffe ulike barer med mindre innstillingene stemmer overens.
  • Å forveksle åpnings- og stengetider. TIME rapporterer når en bar stenger, OpenTime rapporterer når den åpner. På et 1-times diagram skiller de to seg med en time, nok til å forskyve et inngangsfilter med en hel bar.
  • Eksakt likhet på tidsrammer som ikke stemmer overens. OpenTime = 93000 stemmer bare når en bar faktisk åpner på det sekundet. På et 7-minutters eller tick-basert diagram kan det være at ingen bar oppfyller likheten, så sammenligninger med intervaller er tryggere.
  • CurrentTime, gjeldende klokketid i stedet for barens åpning.
  • TIME, stengetiden for en bar i samme HHMMSS-format.
  • OpenTimestamp, Unix-tidsstempel for barens åpning, uavhengig av tidssone.
  • Timestamp, Unix-tidsstempel for stengingen av baren.
  • OpenHour, timekomponenten i barens åpningstid.
  • OpenMinute, minuttkomponenten av barens åpningstid.
  • OpenSecond, sekundkomponenten av barens åpningstid.
  • OpenDate, datoen baren åpnet på, i YYYYMMDD-format.