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

Yesterday

Yesterday gibt das Datum des Tages vor einem Bar zurück, in YYYYMMDD-Form. Yesterday akzeptiert einen Klammer-Offset wie Yesterday[5], um einen früheren Bar zu referenzieren.

Syntax

probuilder
Yesterday[N]

So funktioniert es

Yesterday gibt das Kalenderdatum des Tages vor dem referenzierten Bar zurück, gepackt als YYYYMMDD-Ganzzahl. Ein Wert von 20260707 steht für den 7. Juli 2026. Es liest das einem Bar zugeordnete Datum und geht einen Handelstag zurück, wobei handelsfreie Tage wie Wochenenden und Feiertage gemäß dem Datensatz übersprungen werden.

Der optionale Index N wählt einen Bar relativ zu dem gerade verarbeiteten aus. Yesterday[1] gibt das Datum des Tages unmittelbar vor dem aktuellen Bar. Ein größerer N blickt weiter zurück: Yesterday[5] gibt den Tag vor dem Bar fünf Positionen früher. Der Chart muss genug Historie für den angeforderten Versatz enthalten, sonst ist der Wert am linken Rand undefiniert.

Yesterday ruft nur Datumsinformationen ab. Es liest oder verändert keine Kurse. Für das Datum eines Bars selbst verwenden Sie Today, und für eine einzige monotone Tageszählung verwenden Sie Days. Da das Ergebnis eine gepackte YYYYMMDD-Ganzzahl ist, lassen sich zwei solche Werte direkt vergleichen, um zu prüfen, ob ein Datum vor einem anderen liegt.

Beispiele

Beispiel 1, Vorheriges Handelsdatum (Indikator)

probuilder
// Date of the day before the bar five periods back
dateFiveDaysAgo = Yesterday[5]
RETURN dateFiveDaysAgo

Der Indikator zeichnet das YYYYMMDD-Datum des Handelstages, der dem Bar fünf Positionen zurück vorausgeht, eine Stufenlinie, die jeweils um einen Handelstag voranschreitet.

Beispiel 2, Scan gegen ein Referenzdatum (ProScreener)

probuilder
// Match instruments whose prior trading day is on or after a chosen date
priorDay = Yesterday[1]
SCREENER[priorDay >= 20260101 AND close > Average[20](close)] (priorDay AS "PrevDate")

Der Screener gibt Instrumente zurück, deren vorheriger Handelstag in 2026 oder später fällt, mit diesem Datum daneben angezeigt, unter Verwendung der gepackten YYYYMMDD-Form für einen direkten Vergleich.

Beispiel 3, Erkennung einer neuen Sitzung (ProOrder)

probuilder
// Act on the first bar of a session, when the prior day differs from two bars back
DEFPARAM CumulateOrders = false
sessionStart = Yesterday[0] <> Yesterday[1]
IF sessionStart AND close CROSSES OVER Average[20](close) THEN
    BUY 1 CONTRACT AT MARKET
ENDIF

Wenn sich die Referenz "Vortag" zwischen aufeinanderfolgenden bars verschiebt, hat ein neuer Handelstag begonnen. Die Strategie nutzt das, um Einstiege auf die Eröffnung einer Sitzung zu beschränken.

Häufige Fehler und Stolperfallen

  • Gepacktes YYYYMMDD, keine Tageszählung. Yesterday gibt ein Datum wie 20260707 zurück, keine Anzahl von Tagen. Für einen laufenden Tageszähler verwenden Sie Days.
  • Handelstage, keine Kalendertage. Der Schritt zurück überspringt Wochenenden und Feiertage gemäß dem Datensatz, daher kann "gestern" über ein Wochenende hinweg mehrere Kalendertage früher liegen.
  • Nur Datum, kein Kurs. Yesterday berührt niemals Marktdaten; es gibt ein Datum zurück. Kombinieren Sie es mit einer Kursreihe, wenn Sie Bedingungen aufbauen.
  • Offset jenseits der Historie. Yesterday[N] benötigt N Bars Historie. Am linken Rand des Charts ist der Wert undefiniert.
  • Today, Datum des aktuellen Bars in der Form YYYYMMDD.
  • Day, Tag des Monats jedes Bars, 1 bis 31.
  • DayOfWeek, Wochentag jedes Bars, 1 für Montag bis 7 für Sonntag.
  • Days, vollständige Tage, die seit dem 1. Januar 1900 bis zu jedem Bar vergangen sind.
  • Month, Monat jedes Bars.
  • Year, vierstelliges Jahr jedes Bars.
  • Timestamp, UNIX-Zeit des Schlusses jedes Bars.
  • TIME, Schlusszeit jedes Bars als HHMMSS-Ganzzahl.