CurrentMinute
CurrentMinute returnerer minuttet på klokken ved kjøringstidspunktet, 0 til 59, identisk på hver bar i diagrammet. Bruk Minute for å lese minuttet ved hver bars slutt.
Syntaks
CurrentMinuteSlik fungerer det
CurrentMinute leser klokken i det øyeblikket koden kjører, og returnerer minuttet innenfor gjeldende time, fra 0 til 59. Referansen er tidssonen til instrumentets marked, som kan avvike fra den lokale maskinen. Konstanten tar ingen parametere og ingen forskyvning i klammeparentes.
Verdien tilhører Current-familien av dato- og tidskonstanter, som beskriver utførelsesøyeblikket og ikke noen bar i diagrammet. Hver bar i en beregning ser derfor samme tall: en indikator som oppdateres 14:20 returnerer 20 på hver historiske bar. Søskenkonstanten per bar er Minute, som returnerer minuttet for stengingen av hver bar som behandles og endrer seg langs tidsaksen. Sesjonsfiltre brukt på historiske data hører sammen med Minute eller TIME; CurrentMinute beskriver klokken nå.
I et live ProOrder-system er CurrentMinute meningsfull, siden koden kjøres i sanntid etter hvert som barene kommer inn. I en backtest gjenspeiler den minuttet testen kjøres, noe som gjør den uegnet for historiske inngangs- eller utgangsbetingelser.
Eksempler
Eksempel 1, Flagg ved timens start (Indikator)
// Set the flag when the script executes in the first minute of an hour
IF (CurrentMinute = 0) THEN
onTheHour = 1
ELSE
onTheHour = 0
ENDIF
RETURN onTheHourIndikatoren tegner 1 over hele diagrammet når den beregnes på nytt mellom minutt 0 og minutt 0 i gjeldende time, og 0 på alle andre tidspunkt i timen.
Eksempel 2, Skanning på et fast minutt (ProScreener)
// Return matches only during the first half of the current hour
inFirstHalf = CurrentMinute < 30
SCREENER[inFirstHalf AND close > Average[20](close)] (close AS "Close")Skanneren returnerer en tom liste når klokken har passert minutt 30, en måte å holde en planlagt skanning stille i andre halvdel av hver time.
Eksempel 3, Inngang justert etter minutt (ProOrder)
// Only allow entries near the top of the hour
DEFPARAM CumulateOrders = false
readyToTrade = CurrentMinute <= 5
IF readyToTrade AND close CROSSES OVER Average[20](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIFLive tar systemet bare signaler i de første fem minuttene av timen. Backtester kan ikke prøve ut denne grenen på en meningsfull måte, fordi CurrentMinute holder minuttet for testkjøringen på hver bar.
Vanlige feil og fallgruver
- Samme verdi på hver bar. CurrentMinute beskriver klokken, ikke diagrammet, så en betingelse som
CurrentMinute = 0er sann eller falsk for hele beregningen på én gang. Tidslogikk per bar trengerMinuteellerTIME. - Blindsone i backtest. I en backtest returnerer CurrentMinute minuttet testen kjøres, så filtre bygget på den slipper gjennom eller blokkerer alt under ett og gir resultater som ikke stemmer med live oppførsel.
- Markedets tidssone, ikke lokal tid. Minuttet refererer til instrumentets marked. Lesing av klokken justeres ikke for betrakterens lokale tidsforskjell.
- Ingen forskyvning i klammer.
CurrentMinute[1]kompilerer ikke. Bare konstanter per bar, somMinute[N]godtar en indeks.
Relaterte instruksjoner
Minute, minutt ved slutten av hver bar, søskenverdien per bar til denne konstanten.OpenMinute, minuttet ved åpningen av hver bar.CurrentHour, timen på klokken ved utførelsestidspunktet.CurrentSecond, sekundet på klokken ved utførelsestidspunktet.CurrentTime, full klokketid ved utførelse som et HHMMSS-heltall.CurrentYear, året på klokken ved utførelsestidspunktet.TIME, stengetiden for hver bar som et HHMMSS-heltall.Timestamp, UNIX-tid for stengingen av hver bar.