Bli medlem idag
ProScreener/proscreener

DATEFORMAT

DATEFORMAT är en visningsmodifierare i ProScreener som visar ett numeriskt YYYYMMDD-värde som ett läsbart datum i en resultatkolumn i SCREENER, till exempel 2 Dec 2022.

Syntax

probuilder
SCREENER(value AS "Column name" DATEFORMAT)

Så fungerar det

A SCREENER resultatkolumn visar normalt det råa numeriska värdet för det uttryck den fått. När uttrycket kodar ett datum är det råa talet svårt att läsa. Att placera DATEFORMAT efter den AS "Column name" klausulen talar om för resultattabellen att tolka talet som ett datum i YYYYMMDD formen och visar den i ett läsbart format.

Modifieraren ändrar endast presentationen. Det underliggande värdet förblir numeriskt, så sortering av kolumnen fungerar fortfarande på själva talet. Eftersom YYYYMMDD värden sorteras i samma ordning som de datum de representerar, fungerar kronologisk sortering som förväntat.

DATEFORMAT passar naturligt med språkets datum- och tidskonstanter. Värden som Today, Yesterday, och OpenDate returnerar redan tal i YYYYMMDD form, så att de kan skickas direkt in i en formaterad kolumn. Vilket annat numeriskt uttryck som helst accepteras, men bara värden som kodar ett giltigt kalenderdatum ger meningsfullt resultat.

Exempel

Exempel 1, Visa ett fast numeriskt datum (ProScreener)

probuilder
// A numeric value in YYYYMMDD form, here 2 December 2022
number = 20221202
SCREENER(number AS "Formatted Date" DATEFORMAT)

Kolumnen Formatted Date visar 2 Dec 2022 i stället för det råa talet 20221202. Detta är standardexemplet från den officiella referensen.

Exempel 2, Visa bardatumet för översålda aktier (ProScreener)

probuilder
// List oversold instruments together with the date of the scanned bar
myRSI = RSI[14](close)
oversold = myRSI < 30
barDate = OpenDate
SCREENER[oversold](barDate AS "Bar date" DATEFORMAT)

Varje matchande instrument visas med öppningsdatumet för sin senaste bar visat som ett läsbart datum, vilket är användbart när man skannar marknader vars senaste session kan skilja sig.

Exempel 3, Koppla skanningsdatumet till nya toppar (ProScreener)

probuilder
// Stamp each result with the date the scan was run
newHigh = close >= Highest[250](close)
SCREENER[newHigh](Today AS "Scan date" DATEFORMAT)

Instrument som gör en stängningstopp över 250 barer listas med det aktuella datumet som en formaterad kolumn, vilket hjälper vid export eller arkivering av screener-resultat.

Vanliga fel och fallgropar

  • Värdet måste koda YYYYMMDD. DATEFORMAT omvandlar inte tidsstämplar, dagräkningar eller arbiträra tal till datum. Ett värde som 1670000000 (en tidsstämpel i Unix-stil) eller 45123 visas som ett meningslöst datum. Bygg värdet som år gånger 10000 plus månad gånger 100 plus dag, eller använd konstanter som Today som redan returnerar den formen.
  • Ingen validering av datumet. Modifieraren formaterar de siffror den tar emot. Ett värde som 20221399 (månad 13, dag 99) avvisas inte vid kompilering och ger meningslös utdata. Verifiera uttrycket som matar kolumnen.
  • En formatmodifierare per kolumn. DATEFORMAT kan inte kombineras med NUMBERFORMAT, PERCENTFORMAT, eller STRINGFORMAT på samma kolumn. Välj den enda modifieraren som matchar datan.
  • Endast ProScreener. Nyckelordet kompilerar ingen annanstans. I en indikator hanteras datumvisning på annat sätt, vanligen med DRAWTEXT stilutdata, inte med DATEFORMAT.
  • NUMBERFORMAT, förkortar stora numeriska värden i en screenerkolumn.
  • PERCENTFORMAT, visar ett värde i en screenerkolumn som procent.
  • STRINGFORMAT, visar ett värde i en screenerkolumn exakt som det lagras.
  • SCREENER, definierar filtervillkoret och resultatkolumnen i en screener.
  • TIMEFRAME (PS), anger tidsramen som används av efterföljande screenerkod.
  • Today, det aktuella datumet i formen YYYYMMDD.
  • Yesterday, föregående kalenderdatum i formen YYYYMMDD.
  • OpenDate, öppningsdatumet för en bar i formen YYYYMMDD.