Yesterday
Yesterday returnerer datoen for dagen før en bar, i YYYYMMDD-form. Yesterday godtar en klammeforskyvning som Yesterday[5] for å referere til en tidligere bar.
Syntaks
Yesterday[N]Slik fungerer det
Yesterday returnerer kalenderdatoen for dagen før baren det refereres til, pakket som et YYYYMMDD-heltall. En verdi på 20260707 står for 7. juli 2026. Den leser datoen som er knyttet til en bar og går ett handelsdøgn tilbake, og hopper over dager uten handel som helger og helligdager i henhold til datasettet.
Den valgfrie indeksen N velger en bar relativt til den som behandles. Yesterday[1] gir datoen for dagen rett før gjeldende bar. En større N ser lenger tilbake: Yesterday[5] gir dagen før baren fem posisjoner tidligere. Diagrammet må inneholde nok historikk for den forespørte forskyvningen, ellers er verdien udefinert ved venstre kant.
Yesterday henter bare datoinformasjon. Den leser eller endrer ikke pris. For datoen til en bar selv bruk Today, og for en enkel monoton dagstelling bruk Days. Fordi resultatet er et pakket YYYYMMDD-heltall, kan to slike verdier sammenlignes direkte for å teste om én dato kommer før en annen.
Eksempler
Eksempel 1, Forrige handelsdato (Indikator)
// Date of the day before the bar five periods back
dateFiveDaysAgo = Yesterday[5]
RETURN dateFiveDaysAgoIndikatoren tegner YYYYMMDD-datoen til handelsdagen før baren fem posisjoner tilbake, en trappelinje som rykker frem én handelsdag om gangen.
Eksempel 2, Skanning mot en referansedato (ProScreener)
// 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")Screeneren returnerer instrumenter der forrige handelsdag faller i 2026 eller senere, med den datoen vist ved siden, og bruker den pakkede YYYYMMDD-formen for en direkte sammenligning.
Eksempel 3, Deteksjon av ny sesjon (ProOrder)
// 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
ENDIFNår referansen for "dagen før" endrer seg mellom påfølgende barer, har en ny handelsdag begynt. Strategien bruker det til å begrense innganger til åpningen av en sesjon.
Vanlige feil og fallgruver
- Pakket YYYYMMDD, ikke et antall dager. Yesterday returnerer en dato som 20260707, ikke et antall dager. For en løpende dagtelling bruk
Days. - Handelsdager, ikke kalenderdager. Steget bakover hopper over helger og helligdager i henhold til datasettet, så "i går" kan være flere kalenderdager tidligere over en helg.
- Bare dato, ingen pris. Yesterday berører aldri markedsdata; den returnerer en dato. Kombiner den med en prisserie når du bygger betingelser.
- Forskyvning utover historikken.
Yesterday[N]trengerNbarer med historikk. Nær venstre kant av diagrammet er verdien udefinert.
Relaterte instruksjoner
Today, datoen for gjeldende bar i YYYYMMDD-form.Day, dagen i måneden for hver bar, 1 til 31.DayOfWeek, ukedagen for hver bar, 1 for mandag til 7 for søndag.Days, hele dager gått siden 1. januar 1900 fram til hver bar.Month, måneden for hver bar.Year, firesifret årstall for hver bar.Timestamp, UNIX-tid for stengingen av hver bar.TIME, stengetiden for hver bar som et HHMMSS-heltall.