Jetzt beitreten
Datum und Uhrzeit/probuilder · probacktest · proorder · proscreener

OpenTimestamp

OpenTimestamp gibt in ProBuilder den Unix-Zeitstempel der Eröffnungszeit des aktuellen Bars zurück und zählt Sekunden seit 1 January 1970 UTC, unbeeinflusst von Zeitzonen.

Syntax

probuilder
OpenTimestamp

Das Schlüsselwort nimmt keine Parameter. Ein Historienindex in eckigen Klammern liest frühere Bars, daher OpenTimestamp[1] gibt den Eröffnungszeitstempel des vorherigen Bars.

So funktioniert es

Ein Unix-Zeitstempel zählt die Zeit als laufende Summe von Sekunden ab der Unix-Epoche, 1 January 1970 um 00:00:00 UTC. OpenTimestamp gibt diesen Zählwert für den Moment an, in dem die aktuelle Kerze eröffnet hat. Da die Skala an UTC verankert ist, ist der Wert für jeden Nutzer identisch, unabhängig von den Zeitzoneneinstellungen der Plattform oder von Sommerzeitumstellungen.

Das macht OpenTimestamp zum richtigen Werkzeug für Zeitdauerberechnungen. Die Subtraktion zweier Zeitstempel ergibt eine Differenz in ganzen Sekunden, was mit HHMMSS-Werten unsicher ist, etwa OpenTime, wobei die Ziffern Stunden und Minuten kodieren und keine lineare Zählung.

Das zugehörige Schlüsselwort Timestamp meldet die Unix-Zeit des Bar-Schlusses. Die Differenz Timestamp - OpenTimestamp entspricht daher auf abgeschlossenen Bars der Bar-Dauer und auf dem gerade entstehenden Bar dessen bisherigem Alter. Differenzen zwischen den Eröffnungszeitstempeln aufeinanderfolgender Bars legen Lücken in den Daten offen, etwa Übernachtpausen oder Wochenenden.

Beispiele

Beispiel 1, Verstrichene Sekunden innerhalb des aktuellen Bars (Indikator)

probuilder
// Seconds between the bar open and the bar timestamp
elapsed = Timestamp - OpenTimestamp
RETURN elapsed

Auf abgeschlossenen Bars entspricht die Darstellung der Bar-Dauer in Sekunden. Auf dem laufenden Bar zeigt sie, wie lange sich die Kerze schon bildet.

Beispiel 2, Eine Sitzungslücke zwischen Bars erkennen (ProOrder)

probuilder
// Detect a gap larger than 4 hours between consecutive bar opens
gapSeconds = OpenTimestamp - OpenTimestamp[1]
IF gapSeconds > 14400 AND NOT OnMarket THEN
  // The first bar after a long break, such as a new session
  BUY 1 CONTRACT AT MARKET
ENDIF
SET STOP PLOSS 40

Der Vergleich der Eröffnungszeitstempel zweier aufeinanderfolgender Bars misst die tatsächlich verstrichene Zeit zwischen ihnen, was den ersten Bar nach einer Übernacht- oder Wochenendpause identifiziert.

Beispiel 3, Veraltete Instrumente herausfiltern (ProScreener)

probuilder
// Match instruments whose current bar opened within the last 15 minutes
fresh = Timestamp - OpenTimestamp < 900
SCREENER[fresh] ("Fresh bar")

Der Screener behält Instrumente, deren jüngste Kerze weniger als 900 Sekunden alt ist, und verwirft jene, die keine aktuellen Daten geliefert haben.

Häufige Fehler und Stolperfallen

  • Sekunden, nicht Millisekunden. ProBuilder Unix-Zeitstempel zählen Sekunden. Konstanten, die aus anderen Umgebungen mit Millisekunden-Epochen kopiert werden, liegen um den Faktor 1000 daneben.
  • Zeitstempel- und HHMMSS-Systeme vermischen. OpenTimestamp liegt auf einer linearen UTC-Skala, während OpenTime ist ein zusammengesetzter HHMMSS-Wert in Lokalzeit. Werte der beiden Systeme zu vergleichen oder voneinander abzuziehen ergibt sinnlose Zahlen.
  • Lokale Zeit annehmen. Der Wert ist an UTC verankert. Sessiongrenzen, die in lokalen Stunden definiert sind, müssen behandelt werden mit OpenTime oder OpenHour, nicht durch Addition eines festen Offsets auf den Zeitstempel, da sich Offsets mit der Sommerzeit ändern.
  • Bar-Schluss gegenüber Uhrzeit. Auf historischen Bars, Timestamp ist die Schlusszeit dieses Bars, nicht der aktuelle Zeitpunkt. Timestamp - OpenTimestamp verfolgt ein laufendes Alter nur auf dem sich live bildenden Bar.
  • Timestamp, Unix-Zeitstempel des Bar-Schlusses.
  • OpenTime, Eröffnungszeit des Bars als lokale HHMMSS-Ganzzahl.
  • CurrentTime, aktuelle Uhrzeit im HHMMSS-Format.
  • TIME, Schlusszeit eines Bars im Format HHMMSS.
  • OpenDate, Datum, an dem der Bar eröffnet hat, im Format YYYYMMDD.
  • OpenHour, Stundenkomponente der Eröffnungszeit des Bars.
  • BarIndex, Anzahl der Bars seit Beginn der geladenen Historie.
  • IntradayBarIndex, Bar-Zähler, der zu Beginn jedes Tages zurückgesetzt wird.