Word nu lid
Datum en tijd/probuilder · probacktest · proorder · proscreener

OpenDay

OpenDay geeft de dag van de maand (1 tot 31) waarop de huidige bar opende in ProBuilder. Nuttig voor logica die aan specifieke kalenderdagen per maand is gebonden.

Syntaxis

probuilder
OpenDay

Hoe het werkt

OpenDay leest het openingstijdstempel van de huidige bar en geeft de dag-van-de-maand-component als een geheel getal tussen 1 en 31. Het sleutelwoord neemt geen parameters en heeft geen marktdata nodig, het werkt puur op de datum die aan de bar hangt.

Het keyword hoort bij de Open-familie, die beschrijft wanneer een bar is geopend. De kale tegenhanger Day beschrijft in plaats daarvan de slotdatum van de bar. Op intraday en dagbars komen de twee meestal overeen, maar op week- of maandbars, of op elke bar die middernacht overspant, kunnen de open- en sluitdag verschillen.

Omdat de waarde een dag van de maand is, zegt hij niets over de weekdag. Een conditie op OpenDay = 1 gaat af op de eerste kalenderdag die in de data aanwezig is, wat elke maand een andere weekdag kan zijn, en kan volledig worden overgeslagen wanneer de eerste in een weekend valt en er die dag geen bar opent.

Veelvoorkomende toepassingen zijn instappen aan het begin van de maand, ankers voor maandelijkse herbalancering, en onderzoek naar gedrag rond terugkerende kalenderdagen zoals optiegerelateerde datums.

Voorbeelden

Voorbeeld 1, Een bar detecteren die opent op de eerste van de maand (Indicator)

probuilder
// Check whether the current bar opened on day 1 of the month
iDay = OpenDay
if iDay = 1 then
  // code for bars opening on the first calendar day
  firstDay = 1
else
  firstDay = 0
endif
RETURN firstDay

De indicator plot 1 voor bars die op de eerste dag van een maand openden en anders 0, waardoor kalenderwisselingen op de grafiek zichtbaar worden.

Voorbeeld 2, Instap aan het begin van de maand (ProBacktest)

probuilder
// Buy on the first bar opening in the first three days of each month
startOfMonth = OpenDay <= 3 AND OpenDay[1] > 3

IF startOfMonth AND NOT LONGONMARKET THEN
  BUY 1 SHARES AT MARKET
ENDIF

Het vergelijken van de huidige en de vorige waarde vangt de overgang naar een nieuwe maand op, zelfs wanneer dag 1 in het weekend valt en de eerste verhandelde bar op dag 2 of 3 opent.

Voorbeeld 3, Alleen vroeg in de maand screenen (ProScreener)

probuilder
// Match strong instruments during the first week of the month
earlyMonth = OpenDay <= 7
strong = close > Average[50](close)

SCREENER[earlyMonth AND strong] (OpenDay AS "Open day")

De screener beperkt de resultaten tot bars die openen in de eerste zeven kalenderdagen, met de openingsdag als resultaatkolom.

Veelvoorkomende fouten en valkuilen

  • Openingsdag versus slotdag. OpenDay verwijst naar de openingsdatum van de bar. De verwante Day volgt de sluitdatum en kan verschillen op bars die middernacht of een maandgrens overspannen.
  • Dag 1 bestaat mogelijk niet in de data. Wanneer de eerste van de maand op een niet-handelsdag valt, opent er geen bar op dag 1. Test een klein bereik zoals OpenDay <= 3 gecombineerd met een overgangscontrole in plaats van exacte gelijkheid.
  • Kalenderdag, niet weekdag. Waarden 1 tot 31 geven de dag van de maand aan. Voor weekdaglogica zoals maandagfilters gebruik je OpenDayOfWeek.
  • Gaat af op elke overeenkomende bar. Op intraday grafieken, OpenDay = 1 is waar voor alle bars die op die dag openen. Combineer met een overgangstest of een tijdvoorwaarde om slechts één keer te handelen.
  • Day, dag van de maand van de slotdatum van een bar, de tegenhanger van OpenDay.
  • OpenDate, volledige openingsdatum van de huidige bar in YYYYMMDD-formaat.
  • OpenDayOfWeek, weekdag waarop de huidige bar opende.
  • OpenMonth, maandnummer waarin de huidige bar is geopend.
  • OpenYear, jaar waarin de huidige bar is geopend.
  • CurrentDayOfWeek, weekdag van de systeemklok.
  • Today, datum van de huidige bar in YYYYMMDD-formaat.