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
OpenTimestampDas 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)
// Seconds between the bar open and the bar timestamp
elapsed = Timestamp - OpenTimestamp
RETURN elapsedAuf 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)
// 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 40Der 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)
// 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.
OpenTimestampliegt auf einer linearen UTC-Skala, währendOpenTimeist 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
OpenTimeoderOpenHour, nicht durch Addition eines festen Offsets auf den Zeitstempel, da sich Offsets mit der Sommerzeit ändern. - Bar-Schluss gegenüber Uhrzeit. Auf historischen Bars,
Timestampist die Schlusszeit dieses Bars, nicht der aktuelle Zeitpunkt.Timestamp - OpenTimestampverfolgt ein laufendes Alter nur auf dem sich live bildenden Bar.
Verwandte Befehle
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.