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

Month

Month renvoie le numéro du mois (1 à 12) de la date de clôture d'un bar dans ProBuilder. Utilisez le décalage [N] pour des filtres saisonniers et une logique de trading selon le mois de l'année.

Syntaxe

probuilder
Month[N]

Paramètres

NomTypePar défautDescription
Nentier0Décalage en bars. 0 lit le bar courant, 1 le bar précédent, et ainsi de suite. S'il est omis, le bar courant est lu.

Comment ça marche

Month extrait la composante mois de la date associée à un bar. La valeur provient de l'horodatage de clôture du bar, un bar hebdomadaire qui ouvre le 30 juin et clôture le 4 juillet indique donc Month = 7. Le mot-clé apparenté OpenMonth lit la date d'ouverture du même bar et indiquerait 6 dans ce cas. Sur la plupart des bars intraday et journaliers, les deux concordent, mais elles peuvent différer sur tout bar qui chevauche une limite de mois.

La valeur renvoyée est un entier de 1 (janvier) à 12 (décembre). Aucune donnée de marché n'intervient, le mot-clé opère uniquement sur l'horodatage attaché à chaque bar, il fonctionne donc de façon identique sur tout instrument.

Le [N] décalage lit le mois des bars antérieurs. Month[1] est le mois de la clôture de la bar précédente, ce qui est un moyen simple de détecter un changement de mois : lorsque Month <> Month[1] le bar actuel est le premier à clôturer dans un nouveau mois.

Les usages typiques incluent les études saisonnières, l'exclusion de mois spécifiques d'un backtest, et le déclenchement d'une logique de rééquilibrage mensuel.

Exemples

Exemple 1, Vérifier si le bar précédent a clôturé en décembre (Indicateur)

probuilder
// Read the closing month of the previous bar
lastMonth = Month[1]
IF lastMonth = 12 THEN
  itWereChristmasMonth = 1
ELSE
  itWereChristmasMonth = 0
ENDIF
RETURN itWereChristmasMonth

L'indicateur trace 1 quand la bar précédente a clôturé en décembre et 0 sinon. Le [1] décalage recule la lecture d'un bar.

Exemple 2, Fenêtre saisonnière long uniquement (ProBacktest)

probuilder
// Only hold longs from November through April
inSeason = Month >= 11 OR Month <= 4

IF inSeason AND close CROSSES OVER Average[100](close) THEN
  BUY 1 SHARES AT MARKET
ENDIF

IF NOT inSeason AND LONGONMARKET THEN
  SELL AT MARKET
ENDIF

La stratégie ne prend des entrées en tendance que pendant la fenêtre de novembre à avril et solde toute position long ouverte dès que le calendrier sort de la saison. Notez la combinaison avec OR, la fenêtre chevauche la fin d'année.

Exemple 3, Screener une clôture en janvier (ProScreener)

probuilder
// Match instruments whose latest bar closed in January above its 200-bar average
inJanuary = Month = 1
aboveTrend = close > Average[200](close)

SCREENER[inJanuary AND aboveTrend] (Month AS "Month")

Le screener renvoie les instruments cotant au-dessus de leur moyenne longue sur les bars qui ont clôturé en janvier, en affichant le numéro du mois comme colonne de résultat.

Erreurs et pièges courants

  • Date de clôture, pas date d'ouverture. Month lit l'horodatage de clôture de la bar. Les bars hebdomadaires ou mensuelles qui chevauchent une limite de mois rapportent le mois le plus récent. Utilisez OpenMonth lorsque la date d'ouverture est celle qui importe.
  • Les mois commencent à 1. La plage va de 1 à 12, il n'y a pas de mois 0. Des conditions comme Month = 0 ne correspondent jamais et les conversions décalées d'une unité depuis les systèmes à base zéro produisent des erreurs de logique silencieuses.
  • Les fenêtres de fin d'année nécessitent OR. Une saison comme novembre à avril chevauche le changement d'année. Month >= 11 AND Month <= 4 ne correspond jamais, la forme correcte est Month >= 11 OR Month <= 4.
  • Détecter les changements de mois. Comparer à une constante déclenche sur chaque bar de ce mois. Pour agir une fois par mois, comparez des bars consécutifs avec Month <> Month[1].
  • OpenMonth, mois de la date d'ouverture du bar courant, la forme jumelle de Month.
  • CurrentMonth, mois de l'horloge de la machine plutôt que de l'horodatage d'un bar.
  • Day, jour du mois de la date de clôture d'un bar.
  • Year, année de la date de clôture d'un bar.
  • Today, date du bar courant au format YYYYMMDD.
  • Hour, composante horaire de l'heure de clôture d'un bar.
  • DayOfWeek, jour de la semaine de la date de clôture d'un bar.