Year
Year restituisce l'anno a quattro cifre di una bar sul grafico, come 2026. Year accetta un offset tra parentesi quadre come Year[10] per leggere l'anno di una bar precedente.
Sintassi
Year[N]Come funziona
Year restituisce l'anno di calendario del bar in elaborazione, come intero a quattro cifre, ad esempio 2026. Legge la data associata a ciascun bar, quindi cambia lungo l'asse temporale: i bar del 2024 restituiscono 2024, i bar del 2025 restituiscono 2025, e il valore si incrementa a ogni cambio d'anno.
L'indice opzionale N seleziona un bar relativo a quello in elaborazione. Year[0], o semplice Year, è il bar attuale. Un positivo N guarda indietro: Year[10] è l'anno del bar dieci posizioni prima. Il grafico deve contenere storico sufficiente per l'offset richiesto, altrimenti il valore è indefinito sul bordo sinistro. Year funziona solo sui grafici basati sul tempo, dove ogni bar porta una data.
Year è l'anno della singola barra. I suoi affini sono CurrentYear, che legge l'anno dell'orologio al momento dell'esecuzione ed è identico su ogni bar, e OpenYear, che legge l'anno all'apertura di ogni bar. Abbina Year a Month e Day quando devi verificare una data di calendario completa.
Esempi
Esempio 1, Anno di una bar precedente (Indicatore)
// Retrieve the year of the bar exactly 10 periods before the current bar
myYear = Year[10]
RETURN myYearL'indicatore traccia in ogni punto l'anno della bar dieci posizioni indietro, una linea a gradini che salta a ogni confine di anno spostato di dieci bar verso destra.
Esempio 2, Scansione per anno (ProScreener)
// Match instruments whose latest bar falls in 2026
thisYear = Year = 2026
SCREENER[thisYear AND close > Average[50](close)] (Year AS "Year")Lo screener restituisce solo gli strumenti la cui bar più recente è datata 2026, con l'anno mostrato a fianco, utile quando l'ultima bar di un grafico può essere in ritardo rispetto al calendario.
Esempio 3, Filtro di ingresso al cambio d'anno (ProOrder)
// Allow entries only on the first bar of a new year
DEFPARAM CumulateOrders = false
newYear = Year > Year[1]
IF newYear AND close CROSSES OVER Average[20](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIFLa condizione Year > Year[1] è vero sul primo bar di un nuovo anno di calendario, quindi la strategia lo usa come filtro di ingresso annuale per idee stagionali.
Errori e insidie comuni
- Anno a quattro cifre. Year restituisce un anno completo come 2026, non una forma a due cifre. I confronti devono usare il numero intero.
- Solo grafici basati sul tempo. Year ha bisogno di bar che portino una data. Sui grafici non temporali il valore non è significativo.
- Per bar, non l'orologio. Year legge la data di ogni bar e cambia lungo l'asse. Per l'anno dell'istante in cui il codice viene eseguito, usa
CurrentYear. - Offset oltre lo storico.
Year[N]richiedeNbar di storico. Vicino al bordo sinistro del grafico il valore non è definito.
Istruzioni correlate
CurrentYear, anno dell'orologio al momento dell'esecuzione.OpenYear, anno all'apertura di ogni bar.Month, mese di ogni bar, si abbina a Year per una data più completa.Day, giorno del mese di ogni bar.DayOfWeek, giorno della settimana di ogni bar, da 1 per lunedì a 7 per domenica.Days, giorni interi trascorsi dal 1 gennaio 1900 fino a ogni bar.TIME, orario di chiusura di ogni bar come intero HHMMSS.Timestamp, tempo UNIX della chiusura di ogni bar.