OpenDay
OpenDay restituisce il giorno del mese (da 1 a 31) in cui il bar corrente ha aperto in ProBuilder. Utile per logiche legate a giorni di calendario specifici di ogni mese.
Sintassi
OpenDayCome funziona
OpenDay legge il timestamp di apertura del bar corrente e restituisce la componente giorno del mese come numero intero compreso tra 1 e 31. La parola chiave non accetta parametri e non necessita di dati di mercato, opera puramente sulla data associata al bar.
La parola chiave appartiene alla famiglia Open, che descrive quando una bar si è aperta. Il corrispettivo semplice Day descrive invece la data di chiusura del bar. Sui bars intraday e giornalieri le due normalmente coincidono, ma sui bars settimanali o mensili, o su qualsiasi bar che attraversa la mezzanotte, il giorno di apertura e quello di chiusura possono differire.
Poiché il valore è un giorno del mese, non dice nulla sul giorno della settimana. Una condizione su OpenDay = 1 si attiva il primo giorno di calendario presente nei dati, che può essere un giorno della settimana diverso ogni mese, e può essere saltato del tutto quando il primo cade nel fine settimana e nessun bar apre quel giorno.
Le applicazioni comuni includono ingressi a inizio mese, punti di riferimento per il ribilanciamento mensile e studi del comportamento attorno a giorni di calendario ricorrenti come le date legate alle opzioni.
Esempi
Esempio 1, Rilevare un bar che apre il primo del mese (Indicatore)
// 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 firstDayL'indicatore traccia 1 per i bar che hanno aperto il primo giorno di un mese e 0 altrimenti, rendendo visibili sul grafico i cambi di calendario.
Esempio 2, Ingresso a inizio mese (ProBacktest)
// 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
ENDIFConfrontare il valore corrente con quello precedente individua il passaggio a un nuovo mese anche quando il giorno 1 cade nel fine settimana e il primo bar negoziato apre il giorno 2 o 3.
Esempio 3, Screening solo a inizio mese (ProScreener)
// 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")Lo screener limita i risultati ai bar che aprono nei primi sette giorni di calendario, con il giorno di apertura mostrato come colonna del risultato.
Errori e insidie comuni
- Giorno di apertura rispetto a giorno di chiusura. OpenDay si riferisce alla data di apertura del bar. L'istruzione affine
Daysegue la data di chiusura e può differire sulle bar che attraversano la mezzanotte o il confine di un mese. - Il giorno 1 può non esistere nei dati. Quando il primo del mese cade in un giorno non di contrattazione, nessuna bar apre il giorno 1. Testa un piccolo intervallo come
OpenDay <= 3combinato con un controllo di transizione invece dell'uguaglianza esatta. - Giorno di calendario, non giorno della settimana. I valori da 1 a 31 indicizzano il giorno del mese. Per logiche sui giorni della settimana come i filtri sul lunedì, usa
OpenDayOfWeek. - Scatta su ogni bar corrispondente. Sui grafici intraday,
OpenDay = 1è vero per tutte le bars che aprono in quel giorno. Combinalo con un test di transizione o una condizione di orario per agire una sola volta.
Istruzioni correlate
Day, giorno del mese della data di chiusura di un bar, la forma gemella di OpenDay.OpenDate, data di apertura completa della bar corrente in formato YYYYMMDD.OpenDayOfWeek, giorno della settimana in cui il bar corrente ha aperto.OpenMonth, numero del mese in cui si è aperta la bar corrente.OpenYear, anno in cui si è aperta la bar corrente.CurrentDayOfWeek, giorno della settimana dell'orologio della macchina.Today, data della bar corrente in formato YYYYMMDD.