Hour
Hour returnerer timen (0 til 23) i lukketiden til en bar i ProBuilder. Bruk den med [N]-forskyvningen for å bygge filtre for tid på dagen i intraday strategier.
Syntaks
Hour[N]Parametere
| Navn | Type | Standard | Beskrivelse |
|---|---|---|---|
| N | heltall | 0 | Barforskyvning. 0 leser gjeldende bar, 1 den forrige baren, og så videre. Klammene kan utelates for å lese gjeldende bar. |
Slik fungerer det
Hour trekker ut timekomponenten fra tidsstemplet til en bar, uttrykt i 24-timers format. Verdien gjenspeiler barens lukketid, så på et diagram med 1 time rapporterer en bar som åpner 09:00 og lukker 10:00 Hour = 10. Søsternøkkelordet OpenHour leser i stedet åpningstidspunktet til samme bar, og det er derfor de to nøkkelordene kan avvike med én bars varighet på intraday-diagrammer.
Den valgfrie [N] indeksen går bakover gjennom historikken. Hour[1] er timen for forrige bars close, Hour[5] sluttimen fem barer tilbake. Dette gjør det mulig å sammenligne gjeldende tidsrom med tidligere uten å lagre verdier manuelt.
Timen som returneres avhenger av tidssonen som er konfigurert i plattformen, ikke av børsens lokale klokke. To brukere som kjører samme kode med ulike tidssoneinnstillinger kan se ulike verdier for samme bar.
Hour er mest meningsfull på intraday tidsrammer. På daglige eller høyere tidsrammer lukker hver bar på samme sesjonstidspunkt, så nøkkelordet gir ingen skillende informasjon der.
Eksempler
Eksempel 1, Finn lukketimen for forrige bar (Indikator)
// Flag bars whose previous bar closed during the 9 o'clock hour
IF (Hour[1] = 9) THEN
lasthourwasnine = 1
ELSE
lasthourwasnine = 0
ENDIF
RETURN lasthourwasnineIndikatoren plotter 1 når forrige bars sluttime var 9, og 0 ellers. Den [1] forskyvningen flytter avlesningen én bar tilbake i tid.
Eksempel 2, Begrens innganger til et handelsvindu (ProOrder)
// Only allow new long entries between 09:00 and 17:00
timeOK = Hour >= 9 AND Hour < 17
IF timeOK AND close CROSSES OVER Average[50](close) THEN
BUY 1 SHARES AT MARKET
ENDIFDen timeOK flagget styrer inngangene slik at systemet holder seg inaktivt utenfor de valgte sesjonstimene, en vanlig måte å unngå tynne nattmarkeder på.
Eksempel 3, Screen for momentum sent i sesjonen (ProScreener)
// Match instruments making a new 20-bar high after 15:00
lateSession = Hour >= 15
newHigh = close >= Highest[20](close)
SCREENER[lateSession AND newHigh] (Hour AS "Close hour")Screeneren returnerer bare instrumenter der den siste baren lukket klokken 15:00 eller senere samtidig som den satte en 20-barers closing-topp, og viser lukketimen som sorteringskolonne.
Vanlige feil og fallgruver
- Stengetid, ikke åpningstid. Hour leser barens avsluttende tidsstempel. På et 1-timesdiagram returnerer baren som dekker 09:00 til 10:00 verdien 10, ikke 9. Bruk
OpenHournår logikken skal styres av tidspunktet en bar startet. - Avhengighet av tidssone. Verdien følger tidssonen som er konfigurert i plattformen. Kode som hardkoder børstider svikter stille når den kjøres under en annen tidssoneinnstilling.
- Ubrukelig på dagsdiagrammer. På daglige og høyere tidsrammer rapporterer hver bar samme sluttime, så betingelser som
Hour = 9alltid eller aldri treffe. Bruk nøkkelordet på intraday-tidsrammer. - Overgang ved midnatt. Sesjoner som går over midnatt kan ikke testes med en enkelt intervallsjekk. Et vindu fra 22:00 til 02:00 krever
Hour >= 22 OR Hour < 2, ikke en AND-kombinasjon.
Relaterte instruksjoner
OpenHour, timen for åpningstiden til gjeldende bar, søskenformen til Hour.CurrentHour, timen på maskinklokken i stedet for et bar-tidsstempel.Minute, minuttkomponenten (0 til 59) i lukketiden til en bar.Month, månedsnummeret (1 til 12) i lukkedatoen til en bar.Day, dagen i måneden for en bars stengedato.DayOfWeek, ukedagen for en bars stengedato.TIME, full stengetid for en bar i HHMMSS-format.Today, datoen for gjeldende bar i YYYYMMDD-format.