TIME
TIME gibt die Zeit zurück, zu der jeder Bar im Chart schließt, als HHMMSS-Ganzzahl. Verwenden Sie Time[N] in ProBuilder, um in Intraday-Skripten die Zeit früherer Bars zu lesen.
Syntax
Time
Time[N]Parameter
| Name | Typ | Standard | Beschreibung |
|---|---|---|---|
| N | Ganzzahl | 0 | Index des zu lesenden Bars. 0 ist der aktuelle Bar, 1 der vorherige Bar, und so weiter. |
So funktioniert es
TIME kodiert die Zeit jedes Bars als kompakte ganze Zahl im HHMMSS-Format. Ein Bar, der um 13:15:00 entsteht, ergibt 131500: die ersten beiden Stellen sind die Stunde im 24-Stunden-Format, die nächsten beiden die Minuten und die letzten beiden die Sekunden. Der Wert entspricht der Schlussseite des Bars; der Eröffnungsmoment wird separat bereitgestellt über OpenTime.
Der Wert folgt der in der ProRealTime™-Plattform konfigurierten lokalen Zeitzone, sodass identischer Code bei Nutzern mit unterschiedlichen Einstellungen auf verschiedene Bars zutreffen kann.
Da das Format positional und nicht linear ist, erfordert die Umwandlung für die Anzeige ein Aufteilen der Ziffern. Eine Division durch 10000 verschiebt die Stunde vor den Dezimalpunkt, sodass 131500 / 10000 ergibt 13.15, lesbar als 13:15. Das ist lediglich ein Darstellungstrick: Der Dezimalteil enthält Minuten, nicht einen Bruchteil einer Stunde, daher ist das Ergebnis für Zeitdauerberechnungen unbrauchbar. Berechnungen der verstrichenen Zeit gehören zu Timestamp und OpenTimestamp, die lineare Sekunden zählen.
Der Klammerindex gibt Zugriff auf die Historie. Time[1] liest die Zeit der vorherigen Bar, was Prüfungen wie das Erkennen der ersten Bar einer Sitzung durch Vergleich aufeinanderfolgender Werte ermöglicht.
Beispiele
Beispiel 1, Bar-Zeit in eine lesbare Zahl umwandeln (Indikator)
// Convert the current bar time into an HH.MM style number
myTime = Time[0] / 10000
RETURN myTimeWenn die aktuelle Bar-Zeit ist 131500, zeigt die Darstellung 13.15, was als 13:15 gelesen wird. Die Umrechnung dient nur der Anzeige.
Beispiel 2, Vor Sessionende flat gehen (ProOrder)
// Close any open position at or after 21:45
IF Time >= 214500 THEN
SELL AT MARKET
EXITSHORT AT MARKET
ENDIFDie Strategie schließt Long- und Short-Positionen, sobald die Bar-Zeit 21:45 erreicht, ein übliches Muster für Intraday-Systeme, die nicht über Nacht halten dürfen.
Beispiel 3, Screening nach Breakouts am Morgen (ProScreener)
// Match instruments breaking their 20-bar high during the morning
breakout = high >= Highest[20](high)
morning = Time >= 90000 AND Time <= 120000
SCREENER[breakout AND morning] ("Morning breakout")Der Screener kombiniert eine Kursbedingung mit einem TIME-Fenster, sodass nur Signale aufgeführt werden, die zwischen 09:00 und 12:00 erzeugt werden.
Häufige Fehler und Stolperfallen
- HHMMSS als linear behandeln.
120000 - 115900entspricht4100, nicht eine Minute. Subtraktion über Stunden- oder Minutengrenzen hinweg ist in diesem Format bedeutungslos; verwenden SieTimestampfür Zeitdauern. - Exakte Gleichheit verfehlt Bars.
Time = 100000trifft nur zu, wenn ein Bar genau um 10:00:00 schließt. Auf Zeiteinheiten, die nicht mit diesem Zeitpunkt zusammenfallen, löst die Bedingung nie aus. Bereichsvergleiche sind zuverlässiger. - Zeitzonenabhängigkeit. Die Werte folgen der lokalen Zeitzoneneinstellung der Plattform. Dasselbe Skript kann sich auf einem VPS oder dem Rechner eines anderen Nutzers anders verhalten, sofern die Einstellungen nicht übereinstimmen.
- Verwechslung von Eröffnung und Schluss. TIME beschreibt, wann ein Bar abgeschlossen ist,
OpenTimewenn er beginnt. Bei Stunden-Bars unterscheiden sich die beiden um eine ganze Stunde, genug, um Session-Filter um einen Bar zu verschieben.
Verwandte Befehle
CurrentTime, Echtzeituhr statt der Zeit eines Bars.OpenTime, Eröffnungszeit eines Bars im HHMMSS-Format.OpenTimestamp, Unix-Zeitstempel der Bar-Eröffnung für Dauerberechnungen.Timestamp, Unix-Zeitstempel des Bar-Schlusses in Sekunden.Hour, Stundenkomponente der Bar-Zeit.Minute, Minutenkomponente der Bar-Zeit.Second, Sekundenkomponente der Bar-Zeit.Today, Datum des aktuellen Bars im Format YYYYMMDD.