DeutschEnglishEspañolFrançaisItalianoPortuguês
Rejoindre le forum

Tableaux ProBuilder : ranger et relire des valeurs dans ProRealTime

Les tableaux ProBuilder, fiche du guide ProRealTime d’andlil
· 8 min de lecture

Dans ProBuilder, le langage de ProRealTime, un tableau est une variable à plusieurs cases : son nom commence toujours par le signe $, ses cases sont numérotées de 0 à 999 999, et il contient donc jusqu’à un million de valeurs. On y range une valeur en écrivant $Tableau[Index] = valeur, on la relit en écrivant $Tableau[Index]. Le manuel ProBuilder, version 6.1.0 du 1er décembre 2025, lui donne six fonctions et une particularité à ne pas oublier : contrairement aux variables, un tableau n’est pas historisé.

Tableau ProBuilder avec le signe $, un million de valeurs et six fonctions
Ce que le manuel dit d’un tableau ProBuilder. Source : manuel ProBuilder 6.1.0, pages 44 et 45.

Qu’est-ce qu’un tableau dans ProBuilder ?

Un tableau ProBuilder est une rangée de cases numérotées, où chaque case contient une valeur. Le numéro d’une case s’appelle son index ; la première porte le numéro 0, la dernière le numéro 999 999. Pensez aux casiers d’une loge de concierge : un numéro sur chaque porte, un seul pli derrière.

Pour comprendre à quoi il sert, il faut dire un mot de la variable ordinaire. Une variable est un nom sous lequel on range un résultat. Dans ProBuilder, explique le manuel, elle fait plus que dans les autres langages : elle historise sa valeur à chaque chandelier, c’est-à-dire qu’elle garde une valeur par barre du graphique, et l’on retrouve les anciennes avec des crochets.

Le tableau répond à deux besoins que la variable ne couvre pas. Le manuel les nomme : stocker plusieurs valeurs sur un même chandelier, ou ne stocker des valeurs que lorsque cela est nécessaire. Un code peut contenir autant de tableaux que nécessaire.

Comment reconnaît-on un tableau dans un code ProBuilder ?

À son premier caractère : un tableau ProBuilder est toujours préfixé du symbole $. Le manuel met les deux écritures côte à côte : A est une variable, $A est un tableau. Une lettre contre un signe et une lettre : c’est toute la différence, et le signe n’est pas facultatif.

Comment écrire et lire une valeur dans un tableau ProBuilder ?

On écrit le nom du tableau, l’index entre crochets, le signe égal, puis la valeur. L’exemple du manuel range dans la case 0 du tableau A la moyenne mobile de période 20, calculée sur le prix de clôture.

$A[0] = Average[20](Close)

D’après le manuel ProBuilder, page 44.

La lecture suit le même principe, sans le signe égal : $A[0] rend ce que contient la case 0. Le manuel s’en sert pour construire une condition, qui vérifie que le prix de clôture est supérieur à la valeur de la première case.

Condition = Close > $A[0]

D’après le manuel ProBuilder, page 44.

Pour en faire un indicateur complet, il manque la ligne qui affiche le résultat. Dans ProBuilder, c’est RETURN, qui s’écrit une seule fois, à la dernière ligne du code.

$A[0] = Average[20](Close)
Condition = Close > $A[0]
RETURN Condition

Variante minimale : les deux lignes de la page 44 du manuel ProBuilder, suivies de l’instruction RETURN décrite page 31.

Ce programme illustre une écriture, rien de plus. Une moyenne mobile rangée dans un casier reste une moyenne mobile.

Que contiennent les cases d’un tableau ProBuilder que l’on n’a pas remplies ?

Des zéros, posés par ProBuilder lui-même. Lorsque vous insérez une valeur à un index n, le manuel indique que ProBuilder initialise à zéro tous les indices non définis de 0 à n-1. Si vous écrivez d’abord dans la case 5, les cases 0 à 4 existent donc, et valent zéro.

La nuance compte, car ces zéros de politesse ne sont pas des valeurs que vous avez rangées. Les fonctions des tableaux le savent, et les traitent à part : c’est tout l’intérêt du tableau qui suit.

Quelles sont les six fonctions des tableaux ProBuilder ?

Le manuel en donne six : ArrayMax, ArrayMin, ArraySort, IsSet, LastSet et UnSet. Elles cherchent la plus grande ou la plus petite valeur, trient, vérifient qu’une case a été remplie, donnent la dernière case remplie, ou vident le tout.

Les six fonctions des tableaux ProBuilder. Source : manuel ProBuilder de ProRealTime, version 6.1.0 du 1er décembre 2025, page 45, relevé le 12 novembre 2026.
Fonction Ce qu’elle fait Ce qu’elle fait des zéros posés par ProBuilder
ArrayMax($Tableau) Retourne la valeur la plus haute du tableau qui a été définie Ils ne sont pas pris en compte
ArrayMin($Tableau) Retourne la valeur la plus petite du tableau qui a été définie Ils ne sont pas pris en compte
ArraySort($Tableau, MODE) Trie le tableau de manière croissante (ASCEND) ou décroissante (DESCEND) Ils sont supprimés
IsSet($Tableau[index]) Retourne 1 si l’indice a été défini, 0 s’il ne l’a pas été Ils ne comptent pas comme définis : la fonction retourne 0
LastSet($Tableau) Retourne l’index défini le plus élevé ; -1 si aucun index n’a été défini —
UnSet($Tableau) Remet à 0 le tableau en supprimant complètement son contenu —

Le glossaire du manuel montre l’écriture de chacune sur un tableau nommé $MyArray. Voici celle du tri croissant et celle de la vérification d’une case.

ArraySort($MyArray, ASCEND)
IsSet($MyArray[index])

D’après le glossaire du manuel ProBuilder, pages 54 et 57. Ce sont deux écritures, non un programme complet.

LastSet mérite qu’on s’y arrête. Puisque les index partent de 0, elle retourne 0 quand seule la première case est remplie, et -1 quand le tableau est vide. Ce -1 n’est pas une erreur : c’est la façon qu’a le langage de dire « personne ».

Pourquoi un tableau ProBuilder n’a-t-il pas d’historique ?

Parce qu’il n’est pas historisé : c’est la différence que le manuel signale deux fois, à la page 7 et à la page 45. Une variable ordinaire garde sa valeur de chaque chandelier, et MaVariable[3] rend celle d’il y a trois chandeliers. Un tableau ne garde que son contenu du moment.

La conséquence est écrite noir sur blanc : il n’est pas possible de récupérer la valeur d’une cellule d’un tableau calculée sur un chandelier antérieur. Le manuel donne même l’écriture qui ne marche pas, $MonTableau[MonIndice][3] : elle n’est pas valide et ne lit pas la case trois chandeliers dans le passé.

Les crochets n’ont donc pas le même sens des deux côtés. Derrière une variable, le nombre entre crochets remonte le temps. Derrière un tableau, il désigne une case. C’est le piège classique du débutant, et il a l’élégance d’être signalé par le manuel avant même le chapitre des tableaux.

Dans quelle version de ProRealTime écrit-on des tableaux ProBuilder ?

Le comparatif des offres de ProRealTime inscrit la ligne « Créer et importer des indicateurs personnalisés » pour la Complète et la Premium, pas pour la version Web, relevé le 12 novembre 2026. Dans ProRealTime 13, le menu « Graphiques » porte la commande « Éditeur de code ProBuilder », avec le raccourci Ctrl+Maj+P.

Un compte de démonstration suffit pour essayer : on range une valeur, on la relit, on regarde ce que répond LastSet. C’est en ouvrant les casiers qu’on comprend la loge.

Ouvrir un compte démo gratuit

Questions fréquentes sur les tableaux dans ProBuilder

Comment déclare-t-on un tableau dans ProBuilder ?

En faisant précéder son nom du signe $ : $A est un tableau, A une variable. On le remplit ensuite case par case, par exemple $A[0] = Average[20](Close).

Combien de valeurs un tableau ProBuilder peut-il contenir ?

Jusqu’à un million : les index vont de 0 à 999 999, d’après le manuel ProBuilder 6.1.0. Un code peut contenir autant de tableaux que nécessaire.

À quel index commence un tableau ProBuilder ?

À l’index 0. La première case est $A[0], et non $A[1].

Que retourne LastSet sur un tableau ProBuilder vide ?

La valeur -1. Sinon, la fonction retourne l’index défini le plus élevé du tableau.

Peut-on lire la valeur qu’avait un tableau ProBuilder trois chandeliers plus tôt ?

Non. Les tableaux ne sont pas historisés : l’écriture $MonTableau[MonIndice][3] n’est pas valide, précise le manuel.

Comment vider un tableau ProBuilder ?

Avec UnSet($Tableau), qui remet le tableau à 0 en supprimant complètement son contenu.

Sources de référence utilisées

2

Le nom de la commande « Éditeur de code ProBuilder » et son raccourci ont été relevés à l’écran dans ProRealTime Complète, version 13, le 12 novembre 2026. Les exemples de code viennent du manuel ; ils n’ont pas été exécutés pour cette fiche.

Pour aller plus loin

L’auteur

Benoist Rousseau

Trader indépendant · Membre du CME et du CBOT

Benoist Rousseau est trader depuis 1994 et membre du Chicago Mercantile Exchange (CME) et du Chicago Board of Trade (CBOT), où il détient deux sièges de membre individuel. Fondateur d'Andlil.com en 2010 et auteur de Devenez Trader Pro (2016), il a formé des centaines de traders à travers sa formation scalping. Dans la rubrique ProRealTime, il partage tutoriels, réglages et programmation ProBuilder, pour adapter la plateforme à sa méthode plutôt que l'inverse.

Découvrir mon parcours
À lire ensuite
Trader, ça s’apprend
2 étapes pour progresser
1ProRealTime —
La formation complète Gratuit

Le trading commence par les bons outils.

  • La formation complète à la plateforme
  • Mes Graphiques & Espaces de travail : accès exclusif à mes indicateurs, modèles et réglages personnalisés
  • Configuration guidée, pas à pas
2Mon École de Trading —
Quand vous serez prêt Pour aller plus loin

Formations, séminaires, webinaire et coaching privé. Je vous accompagne personnellement.

Découvrir l’École
Excellentsur Trustpilot · 590+ avis

0 commentaire

La discussion se poursuit sur le forum andlil.com.
Laisser un commentaire

Votre nom et votre commentaire seront publiés après relecture ; votre adresse e-mail ne le sera jamais. Votre adresse IP est conservée un an, comme la loi l’exige. Pour en savoir plus ou exercer vos droits : charte de confidentialité. Le formulaire est protégé contre les robots par Cloudflare Turnstile.

Newsletter · chaque soir

Recevez mon débrief, sans filtre.

3 000lecteurs, déjà.

S’inscrire

  • 3 min chaque soir
  • Gratuit
  • Désinscription en 1 clic