Bli medlem idag
Datum och tid/probuilder · probacktest · proorder · proscreener

OpenHour

OpenHour returnerar timmen (0 till 23) då den aktuella baren öppnade, i plattformens lokala tid. Använd OpenHour i ProBuilder för regler om sessioner och tid på dagen.

Syntax

probuilder
OpenHour

Så fungerar det

OpenHour läser den aktuella barens öppningstidsstämpel och returnerar dess timkomponent i 24-timmarsformat. Nyckelordet tar inga parametrar.

Den är öppningstidens motsvarighet till det nakna nyckelordet Hour, som följer barens stängningstidsstämpel. På ett 1-timmesdiagram rapporterar baren som täcker 09:00 till 10:00 OpenHour = 9 och Hour = 10. När en regel ska utlösas baserat på tiden då en bar startar, till exempel genom att agera på den bar som öppnar cash-sessionen, är OpenHour den lämpliga formen.

Den returnerade timmen beror på tidszonen som är konfigurerad i plattformen, inte på börsens klocka. Samma kod kan därför bete sig olika för användare i olika tidszoner, vilket spelar roll när sessionsgränser är hårdkodade.

På dags- och högre tidsramar öppnar varje bar vid samma sessionstid, så nyckelordet skiljer bara på intraday-diagram. Liksom andra barserier kan tidigare värden läsas med ett index, till exempel OpenHour[1] för föregående bar.

Exempel

Exempel 1, Upptäck barer som öppnar vid 9 (Indikator)

probuilder
// Check whether the current bar opened during the 9 o'clock hour
iHour = OpenHour
if iHour = 9 then
  // logic tied to the market opening hour
  openingHour = 1
else
  openingHour = 0
endif
RETURN openingHour

Indikatorn ritar 1 på barer som öppnade mellan 09:00 och 09:59, vilket isolerar den första timmen av en typisk cash-session.

Exempel 2, Entryfönster endast på förmiddagen (ProOrder)

probuilder
// Allow entries only on bars opening between 08:00 and 10:59
window = OpenHour >= 8 AND OpenHour < 11

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

Nya positioner kan endast öppnas på barer som startar under förmiddagsfönstret, medan exits och hantering förblir aktiva dygnet runt.

Exempel 3, Screena öppningstimmen efter gap (ProScreener)

probuilder
// Match instruments gapping up on bars opening at 9
atOpen = OpenHour = 9
gapUp = open > close[1] * 1.01

SCREENER[atOpen AND gapUp] (((open / close[1]) - 1) * 100 AS "Gap %")

Screenern flaggar instrument vars bar klockan 9 öppnade mer än 1 procent över föregående stängning, sorterat efter gapets storlek.

Vanliga fel och fallgropar

  • Öppningstid, inte stängningstid. OpenHour följer barens öppningstidsstämpel. Syskonfunktionen Hour läser stängningen, så de två skiljer sig med en barlängd på intraday-diagram. Att blanda dem förskjuter varje tidsfilter med en bar.
  • Lokal tidszon. Värdet följer plattformens konfigurerade tidszon snarare än börstid. Hårdkodade sessionstimmar kan bli fel för användare med andra inställningar, eller efter en omställning till eller från sommartid.
  • Ingen åtskillnad på dagsdiagram. På dagliga och högre tidsramar öppnar varje bar vid samma timme, så villkor som OpenHour = 9 matcha varje bar eller ingen.
  • Fönster som sträcker sig över midnatt. En session från 22:00 till 02:00 behöver OpenHour >= 22 OR OpenHour < 2. AND-formen matchar aldrig.
  • Hour, timme för en bars stängningstid, syskonformen till OpenHour.
  • CurrentHour, timmen på maskinens klocka i stället för en tidsstämpel på en bar.
  • OpenMinute, minut då den aktuella baren öppnade.
  • OpenSecond, sekund då den aktuella baren öppnade.
  • OpenTime, den aktuella barens fullständiga öppningstid i formatet HHMMSS.
  • TIME, fullständig stängningstid för en bar i formatet HHMMSS.
  • CurrentTime, maskinens klocktid i formatet HHMMSS.