Rejoignez-nous
Date et heure/probuilder · probacktest · proorder · proscreener

Year

Year renvoie l'année à quatre chiffres d'une bar sur le graphique, telle que 2026. Year accepte un décalage entre crochets tel que Year[10] pour lire l'année d'une bar antérieure.

Syntaxe

probuilder
Year[N]

Comment ça marche

Year renvoie l'année civile de la bar traitée, sous forme d'entier à quatre chiffres comme 2026. Elle lit la date rattachée à chaque bar, elle change donc le long de l'axe du temps : les bars de 2024 renvoient 2024, celles de 2025 renvoient 2025, et la valeur s'incrémente à chaque passage d'année.

L'index optionnel N sélectionne une bar par rapport à celle en cours de traitement. Year[0], ou simplement Year, est le bar actuel. Une valeur positive N remonte : Year[10] est l'année du bar situé dix positions plus tôt. Le graphique doit contenir assez d'historique pour le décalage demandé, sinon la valeur n'est pas définie au bord gauche. Year ne fonctionne que sur les graphiques basés sur le temps, où chaque bar porte une date.

Year est l'année de la bar. Ses équivalents sont CurrentYear, qui lit l'année de l'horloge au moment de l'exécution et est identique sur chaque bar, et OpenYear, qui lit l'année à l'ouverture de chaque bar. Associez Year à Month et Day lorsque vous devez tester une date calendaire complète.

Exemples

Exemple 1, année d'une bar antérieure (Indicateur)

probuilder
// Retrieve the year of the bar exactly 10 periods before the current bar
myYear = Year[10]
RETURN myYear

L'indicateur trace en chaque point l'année de la bar située dix positions en arrière, une ligne en escalier qui saute à chaque changement d'année, décalée de dix bars vers la droite.

Exemple 2, recherche par année (ProScreener)

probuilder
// Match instruments whose latest bar falls in 2026
thisYear = Year = 2026
SCREENER[thisYear AND close > Average[50](close)] (Year AS "Year")

Le screener ne renvoie que les instruments dont la bar la plus récente est datée de 2026, avec l'année affichée à côté, utile lorsque la dernière bar d'un graphique peut être en retard sur le calendrier.

Exemple 3, filtre d'entrée au changement d'année (ProOrder)

probuilder
// 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
ENDIF

La condition Year > Year[1] est vrai sur le premier bar d'une nouvelle année civile ; la stratégie l'utilise donc comme filtre d'entrée annuel pour les idées saisonnières.

Erreurs et pièges courants

  • Année à quatre chiffres. Year renvoie une année complète telle que 2026, pas une forme à deux chiffres. Les comparaisons doivent utiliser le nombre entier.
  • Graphiques basés sur le temps uniquement. Year a besoin de bars qui portent une date. Sur les graphiques non temporels, la valeur n'a pas de sens.
  • Par bar, pas l'horloge. Year lit la date de chaque bar et change le long de l'axe. Pour l'année de l'instant où le code s'exécute, utilisez CurrentYear.
  • Décalage au-delà de l'historique. Year[N] nécessite N bars d'historique. Près du bord gauche du graphique, la valeur n'est pas définie.
  • CurrentYear, année de l'horloge au moment de l'exécution.
  • OpenYear, année à l'ouverture de chaque bar.
  • Month, mois de chaque bar, se combine avec Year pour une date plus complète.
  • Day, jour du mois de chaque bar.
  • DayOfWeek, jour de la semaine de chaque bar, 1 pour lundi à 7 pour dimanche.
  • Days, nombre entier de jours écoulés depuis le 1 janvier 1900 jusqu'à chaque bar.
  • TIME, heure de clôture de chaque bar sous forme d'entier HHMMSS.
  • Timestamp, heure UNIX de la clôture de chaque bar.