Comment créer un indicateur personnalisé sur TradingView avec Pine Script ?

Fini les graphiques complexes ! Dans ce guide complet, je vous montre comment créer étape par étape un indicateur technique personnalisé sur TradingView, avec le langage Pine Script. Vous n’avez pas besoin d’être programmeur pour exploiter pleinement cette outil d’analyse puissant.

Il est possible d’afficher dans TradingView des indicateurs techniques sur vos graphiques, soit directement sur la fenêtre du prix, soit dans une fenêtre séparée.

Elle propose une vaste sélection d’indicateurs intégrés, mais l’une des fonctionnalités les plus puissantes, est la capacité à créer votre propre indicateur technique, à partir de zéro ou d’optimiser un indicateur existant.

Ce guide sera divisé en quatre parties principales:

  • Nous aborderons les briques essentielles pour construire un indicateur.
  • Nous analyserons le code de l’indicateur moyenne mobile.
  • Nous optimiserons un indicateur très populaire : le Momentum.
  • Nous regrouperons plusieurs indicateurs en un seul (le must)

Avant de poursuivre, je vous recommande de lire la première partie de ce tutoriel consacrée à la présentation générale de TradingView.« 

1. Qu'est-ce que le langage Pine Script et comment fonctionne-t-il sur TradingView ?

1.1. Quel est le langage de programmation de TradingView ?

Si le monde de l’informatique et de la programmation vous semble intimidant, ne vous inquiétez pas, vous n’êtes pas seul. Je ne suis pas un programmeur dans l’âme non plus. Cependant, avec quelques bases essentielles et sans plonger dans les détails complexes des fonctions, il est tout à fait possible de créer des indicateurs avec un peu d’entraînement, surtout maintenant avec l’IA pour nous aider.

Pour démystifier l’anatomie d’un programme type sur TradingView, commençons par ouvrir la fenêtre de programmation.

Vous avez plusieurs façons de procéder:

  • En ajoutant au préalable un indicateur sur votre graphique.
    • Cliquez sur ajouter un indicateur dans le bandeau supérieur de la fenêtre.
    • Passez le curseur de votre souris sur le nom de l’indicateur en haut à gauche du graphique.
    • Cliquez sur les accolades, cela ouvre la fenêtre de programmation à droite de l’écran.
  • En cliquant sur l’icone avec 9 petits points en bas à gauche de la fenêtre.
    • Cliquez ensuite sur l’éditeur Pine.
    • Pensez à cliquer sur la petite étoile pour le mettre en favori. Il apparaitra ensuite directement dans le bandeau de droite.
Comment ajouter un indicateur technique sur la plateforme d'analyse graphique Tradingview
Comment ajouter un indicateur technique sur la plateforme d'analyse graphique Tradingview

Le terme « Pine » est le nom choisi par TradingView pour son langage de programmation. Vous rencontrerez donc fréquemment les termes « 

Pinescript » pour le langage lui-même et « PineCoder » pour désigner la communauté de programmeurs associée.

Sachez que la communauté autour de TradingView est vaste, avec de nombreuses ressources disponibles en anglais et en français.

aide Tradingview

Le manuel de référence du langage Pinescript en français détaille la signification de chaque opérateur, variable et fonction intégrée.

La version anglaise, quant à elle, offre des explications plus approfondies, incluant un guide d’utilisation rapide.

1.2. Comment ouvrir l'éditeur Pine et comprendre les lignes de code par défaut ?

Lorsque vous démarrez un nouveau script, vous accédez à cette interface. Commencez par nommer votre script. Chaque fois que vous partez d’un modèle vierge, les six premières lignes sont déjà écrites:

  • La première ligne est générique et décrit les termes de licence de vos futurs indicateurs.
  • La deuxième ligne indique votre nom d’utilisateur sur la plateforme.
  • La troisième est un saut de ligne pour aérer le code ; n’oubliez pas d’aérer votre code, cela le rend plus facile à lire.
  • La quatrième ligne indique le numéro de version du langage Pine Script utilisé (ici, la version 6, la dernière en date). Chaque version apporte son lot de nouveautés.
 

Il est important de noter les deux doubles barres obliques // devant les deux premières lignes.

Ces // transforment la ligne en un commentaire dans le programme. Vous pouvez y écrire ce que vous voulez, par exemple pour décrire une fonction. C’est très utile lorsque vous revenez sur le programme plus tard ou si une autre personne reprend votre code.

  • La 5ième « indicator» est la fonction qui définit le nom de notre script et initialise notre code. Ce nom s’affichera sur notre fenêtre graphique.
  • La 6ième « plot» est la fonction d’affichage de notre script. Elle permet sa représentation graphique.

1.3. Comment copier et modifier le code source d'un indicateur existant ?

Pour ouvrir le code source d’un indicateur déjà présent sur la plateforme, appuyez sur le bouton « indicateur » en haut de votre fenêtre graphique. Cela ouvrira un panneau qui centralise tous les indicateurs.

Vous trouverez plus de détails sur ce panneau dans la première partie de ce tutoriel.

Fini les graphiques complexes ! Comme pour moi, l’essayer c’est l’adopter!

1456x180Leaderboard

La solution pour des graphiques clairs et des décisions sereines

Retenez ici que la famille des indicateurs intégrés sont dans les « données techniques », ceux que l’on retrouve entre autres sur toutes les plateformes et dans les livres. Ils sont donc intégrés par défaut sur la plateforme et on ne peut pas directement éditer leur code ici.

Les indicateurs de la  communauté ont généralement leur code source disponible, mais c’est possible pour leur auteur de restreindre l’accès au code.

  • Si vous cliquez directement sur le titre de l’indicateur vous l’insérez sur votre graphique.
  • Décalez votre curseur sur la droite et cliquez sur l’icône à droite, vous l’ouvrirez dans l’éditeur directement en lecture seule (représenté par le cadenas à côté du nom).

C’est tout à fait normal, pour le modifier nous devrons créer notre propre copie en cliquant sur les 3 points à droite de la fenêtre. Il apparaitra dans nos scripts.

Pour les indicateurs intégrés c’est différent. Tout d’abord nous ne pouvons pas directement cliquer pour avoir le code, nous devrons nécessairement l’avoir affiché au préalable sur notre graphique. Dans les faits ce n’est pas embêtant.

Prenons l’exemple de la moyenne mobile exponentielle :

Celle-ci est affichée sur votre graphique, amenez votre curseur sur l’indicateur en haut à gauche de la fenêtre. Votre retrouverez le réglage de visibilité, la configuration et l’icône du code source. En cliquant dessus vous ouvrirez l’éditeur Pine sur le coté.

Le voici, en créant une copie nous pourrons ainsi le modifier en lui rajoutant des fonctions ou ajuster des paramètres qui ne sont pas disponibles dans l’onglet configuration de l’indicateur (sinon ce n’est pas la peine d’ouvrir le code).

Attention ces indicateurs peuvent utiliser des fonctions dans leur code directement programmé dans un autre langage de programmation comme le Javascript, en fait ils sont codés en « dur » dans la plateforme. Dans l’éditeur Pine vous ne pourrez récupérer que le résultat de cette fonction.

4. Analyse d'un script simple : Comment est codée la moyenne mobile ?

Etudions maintenant de plus près le code source d’un indicateur existant. Ici reprenons notre indicateur très simple dans sa construction : la moyenne mobile exponentielle. En récupérant son code après l’avoir affiché sur notre graphique, ouvrons-le dans l’éditeur Pine.

Voici le code source générique en anglais pour une moyenne mobile exponentielle. La fonction « ta.ema » est la fonction javascript de la moyenne exponentielle codé en dur dans TradingView. Pour information, la fonction de la moyenne arithmétique est « ta.sma »

Code source de la moyenne mobile exponentielle dans Tradingview

Sur la 1ere ligne nous retrouvons les éléments connus mais d’autres sont apparus.

  • Le terme « shorttitle » signifie le nom abrégé que nous pouvons donner au besoin.
  • Le terme « overlay » lui est très important. Il définit si notre indicateur doit s’afficher directement sur le graphique du prix ou alors dans une fenêtre séparée.
    • La valeur « true » l’indicateur s’affichera sur le prix

La valeur « false » dans une fenêtre séparée

C’est crucial, car des indicateurs comme une moyenne mobile, les bandes de Bollinger ou le volume utilisent directement la valeur du prix dans leur formule, ce qui permet de les afficher sans problème sur la fenêtre du prix.

En revanche, des indicateurs techniques comme le RSI, le Momentum ou le MACD utilisent des valeurs dérivées du prix. N’ayant pas la même échelle, ils sont donc affichés dans une fenêtre séparée avec la valeur « false »

Sur la ligne 3 et 4 nous avons le détail des variables de notre indicateur.

La ligne 5 ici est plus technique puisqu’elle gère le décalage que nous pouvons appliquer à la moyenne sur le graphique. Par défaut on affiche toujours la moyenne sans aucun décalage par rapport au prix, il est donc à 0. Vous pouvez appliquer par exemple une valeur de +50, votre moyenne sera alors en avance de 50 périodes sur le prix.

La ligne 6 gère le résultat de la moyenne avec la variable de la fonction intégré.

La ligne 7 est notre fonction d’affichage. Ici on gère la couleur par défaut, le titre et le décalage possible. Cette fonction d’affichage reprend toutes nos variables pour les afficher.

Comment investir en bourse sereinement (même si vous partez de zéro)

 5 étapes pour investir sans risquer vos économies

Guide pdf pour investir en bourse sans la peur de tout perdre

Recevez votre journal de trading + un indicateur de suivi de tendance

2. Exemple pratique : Comment modifier et personnaliser le code d'une Moyenne Mobile ?

Continuons avec le code de cette moyenne mobile exponentielle présent par défaut sur la plateforme. Il n’est pas compliqué à comprendre mais quand on débute il nécessite tout de même de se l’approprier.

C’est l’exercice que nous allons réaliser maintenant. Nous allons voir la distinction entre les variables et les fonctions puis renommer les variables avec nos propres termes.

Avant de vous lancer dans la programmation vous devrez toujours définir votre feuille de route.

  • Votre départ : Quelles données vous souhaitez utiliser ?
  • Votre arrivé : Sous quelles formes utiliser ces données.

Ecrire un programme ne constitue pas simplement à enchainer des fonctions dans n’importe quel sens pour avoir le résultat voulu. Il y a un ordre chronologique à respecter comme déclarer ses variables avant de demander au programme de les utiliser.

Cela reste logique, revenez toujours à vous-même, par exemple si on vous demande de réaliser une course, vous allez demander à la personne où vous rendre pour accomplir cette tâche sinon il y a erreur.

Il est donc primordial dans notre cas avant de commencer à réorganiser notre code de comprendre le fonctionnement théorique de la moyenne mobile simple.

Appropriez vous le code et comprenez son fonctionnement avant de mettre les mains dans le cambouis.

2.1. Comment utiliser les fonctions input() et plot() pour modifier les paramètres graphiques ?

Réaffichons le code d’une moyenne mobile arithmétique dans l’éditeur Pine. Ce code étant en lecture seul, cliquons sur « créer une copie fonctionnelle ».

Renommons notre indicateur, il n’est pas nécessaire de préciser la période puisque celle-ci sera paramétrable avec notre code.

Créer un indicateur personnalisé dans TradingView

Nous avons notre base de départ.

Notre code est coloré, en plus d’être visuel c’est surtout très utile pour la compréhension de celui-ci.

  • Le gris permet grâce aux // d’écrire du texte libre. Le programme ne le prendra pas en compte
  • Le vert permet de nommer des fonctions et des variables. On est libre d’écrire ce que l’on veut mais le programme le prendra en compte.
  • L’orange permet de rentrer des valeurs numériques et des conditions.
  • Le bleu concerne les fonctions du programme
  • Le noir nos variables et le reste.
  • Le rouge les types de paramètres que nous pouvons donner à nos fonctions.

Voici la page en anglais du manuel de Tradingview qui explique en détail ces fonctions.

Une astuce, laissez le curseur en place sur la fonction, une info bulle s’affichera.

Script personnalisé de la moyenne mobile exponentielle dans Tradingview

Les codes des différents indicateurs techniques présents par défaut dans la plateforme ont des titres de variable en anglais.

Pour ce 2ième exercice, après avoir compris le fonctionnement mathématique de l’indicateur (ici le principe d’une moyenne mobile) réécrivons ce code avec nos propres mots.

Sur la 2ième ligne nous renommons notre indicateur « Moyenne mobile » et pour le sous-titre « Notre MM ». Le sous-titre sera le nom de votre indicateur affiché sur le graphique du prix. « tittle » et « shorttitle » sont à converser puisque ce sont des variables que le programme sait interpréter, si nous les changeons nous aurons un message d’erreur.

La ligne 3 définit la variable période par défaut de notre moyenne, ici 9. La fonction « input » nous permettra d’agir sur cette période directement dans le panneau de configuration de l’indicateur.

La ligne 4 définit la variable prix avec une fonction. Par défaut c’est la clôture du prix à la période.

La ligne 5 gère le décalage potentiel de notre moyenne sur le graphique du prix.

La ligne 6 correspond à la variable de sortie avec la fonction « ta.ema » pour « Exponential Moving Average ». Cette fonction reprend la fonction mathématique avec le prix divisé par le nombre de période et l’ajout des coefficients de pondération.

Enfin la ligne 7 sera notre fonction d’affichage et reprend la variable « sortie » de la ligne précédente avec une variable de couleur que nous pourrons également gérer depuis le panneau de configuration.

Code source de la moyenne mobile exponentielle dans Tradingview

Une fois que vous avez réécrit votre code, vous comprenez les briques essentielles et leur interaction. Attention lorsque vous nommez vos variables ne mettez pas d’accents et évitez les majuscules.

Sauvegardons notre code puis ajoutons le à notre graphique.

En cliquant sur la petite roue dentée nous ouvrons le panneau de configuration de l’indicateur. Grâce à nos fonctions « input » nous retrouvons nos paramètres de période, du prix et le décalage.

Par défaut la couleur est bleue comme spécifiée dans le code mais vous pouvez la changer en allant sur l’onglet « style » du panneau.

Fini les graphiques complexes ! Comme pour moi, l’essayer c’est l’adopter!

1456x180Leaderboard

La solution pour des graphiques clairs et des décisions sereines

3. Comment ajouter une moyenne mobile sur le code de l'indicateur Momentum ?

Sur Tradingview nous avons la possibilité de partir d’une feuille totalement vierge ou alors d’un code existant, puis lui rajouter des fonctions.

Pour notre 3ième exercice nous prendrons comme indicateur technique existant le »Momentum ». Encore une fois avant de se plonger brutalement dans le code prenez le temps de comprendre le fonctionnement mathématique de l’indicateur. La formule du Momentum est égale au prix actuel – le prix à n période en arrière.

Sur cet indicateur nous allons rajouter une moyenne mobile simple de la valeur du Momentum.

Le Momentum est un indicateur intégré, commençons par l’insérer sur notre fenêtre graphique. A la différence de la moyenne mobile celui-ci s’affiche dans une fenêtre séparée en dessous. En cliquant sur la petite roue dentée nous pouvons également agir sur la courbe.

Indicateur Momentum

Voici le code source de l’indicateur intégré. Nous reprenons la même démarche que pour la moyenne mobile en créant une copie pour travailler dessus.

Script indicateur Momentum

Appropriez-vous le code en l’écrivant avec vos termes, vous pouvez également insérer des lignes grisées avec des //, cela permet d’ajouter un commentaire pour la compréhension ou vous souvenir de votre réflexion pour le future. Ici dans notre cas le code reste simple.

Nous indicateur est personnalisé.

Nous avons toujours notre code du Momentum avec sa fonction d’affichage mais maintenant la différence est que nous allons ajouter un 2ième indicateur dans le 1er en insérant la fonction de la moyenne mobile avec comme paramètre ceux du Momentum.

Indicateur Momentum personnalisé

Une 2ième fonction d’affichage (« plot ») permet de la représenter sur le graphique.

Cet exercice reste simple mais vous ouvre de nombreuses portes de personnalisation pour vos indicateurs.

4. Comment fusionner et regrouper plusieurs indicateurs sur un seul graphique TradingView ?

La plateforme TradingView, dans ses versions gratuites ou Essential , limite le nombre d’indicateurs affichables sur le graphique (2 pour la version gratuite).

Une solution pour contourner cette limitation est de regrouper plusieurs indicateurs techniques existants en un seul. Nous pourrons ainsi les gérer depuis le même panneau de réglage, ce qui est très pratique puisque TradingView ne prendra en compte qu’un seul indicateur affiché.

Regroupement d'indicateur technique

Dans ce code nous gérons tout d’abord 3 moyennes mobiles avec par défaut des périodes à 200 – 50 et 20. Chaque moyenne est affichée indépendamment sur le graphique, vous pouvez donc changer leur réglage.

Ensuite nous avons le code pour intégrer les Bandes de Bollinger (pour comprendre le fonctionnement des bandes Bollinger), les afficher et une fonction « fill » de remplissage des bandes.

Notre indicateur est prêt, pensons à le sauvegarder puis ajoutons-le sur notre fenêtre graphique. Si notre code contient une erreur la console sous celui-ci nous indiquera le cas échéant la ou les lignes qui poseront problème.

Conclusion

Nous voici à la fin de ce tutoriel.

Nous avons appris les bases d’un indicateur simple avec la définition de nos variables puis des paramètres.

Nous avons également mit des fonctions (input) dans notre code pour pouvoir directement agir sur les paramètres dans le panneau de réglage de l’indicateur sans devoir rentrer dans le code à chaque fois.

Les différents exercices nous ont permis de comprendre la structure d’un code type puis d’optimiser celui d’un indicateur existant pour enfin arriver à créer notre propre indicateur répondant à nos besoins.

Si cet article vous a été utile n’hésitez pas à le partager.

Ma FAQ : Vos questions sur le code et les indicateurs TradingView

L’éditeur Pine est la console intégrée à TradingView qui permet d’écrire, de tester et de sauvegarder vos propres scripts.
Situé tout en bas de votre écran, il offre une interface simplifiée pour coder en Pine Script.
C’est ici que vous pouvez créer des indicateurs personnalisés (`indicator()`) ou des stratégies de trading complètes (`strategy()`)
capables de générer des signaux d’achat et de vente automatiques.

Non, c’est toute la force de Pine Script. Ce langage a été conçu spécifiquement pour le trading et utilise une syntaxe très intuitive.
De plus, TradingView permet d’accéder au code source de milliers d’indicateurs créés par la communauté. Pour débuter,
vous pouvez simplement copier un script existant et modifier quelques variables simples (comme les périodes ou les couleurs)
dans l’éditeur pour l’adapter à vos besoins, sans écrire une seule ligne de code complexe.

Un indicateur (déclaré par <code style= »background-color: #e9ecef; padding: 2px 4px; border-radius: 4px; »>indicator()</code> en version 5)
sert uniquement à afficher des données visuelles sur le graphique, comme des courbes ou des signaux visuels.
Une stratégie (déclarée par <code style= »background-color: #e9ecef; padding: 2px 4px; border-radius: 4px; »>strategy()</code>) inclut des fonctions de backtesting.
Elle simule des entrées et sorties de position selon vos règles et génère un rapport de performance complet (Profit factor, Drawdown, pourcentage de réussite) pour
vérifier si votre méthode est historiquement rentable.

Grâce au groupe de fonctions <code style= »background-color: #e9ecef; padding: 2px 4px; border-radius: 4px; »>input</code> (comme <code style= »background-color: #e9ecef;
padding: 2px 4px; border-radius: 4px; »>input.int()</code> ou <code style= »background-color: #e9ecef; padding: 2px 4px; border-radius: 4px; »>input.source()</code> en v5),
vous pouvez créer des menus de réglages personnalisés. Cela permet, une fois le script sauvegardé, de modifier les périodes d’une moyenne mobile ou le seuil d’un RSI
directement depuis la roue dentée de l’indicateur. C’est indispensable pour tester rapidement différentes configurations sur vos graphiques.

C’est l’un des plus grands avantages de la création personnalisée. Au lieu d’avoir 5 indicateurs qui saturent votre écran et bloquent la version gratuite,
vous pouvez coder un script unique qui regroupe, par exemple, le RSI, le MACD et des Moyennes Mobiles. Vous pouvez même programmer des alertes uniques qui ne se
déclenchent que lorsque toutes les conditions de ces différents indicateurs sont réunies simultanément.

Une fois votre script enregistré sous la forme d’une <code style= »background-color: #e9ecef; padding: 2px 4px; border-radius: 4px; »>strategy()</code>,
vous pouvez utiliser l’onglet « Testeur de stratégie » situé juste à côté de l’Éditeur Pine. TradingView analysera instantanément toutes les données passées
du graphique pour vous montrer les résultats théoriques de votre système. C’est l’étape cruciale pour éliminer les biais émotionnels et prouver statistiquement
l’efficacité de vos outils.

Développez votre capital : Dominez enfin l’exécution

Ne lisez pas 50 livres. Maîtrisez le système qui transforme vos graphiques en cash.

  • Stratégie breakout : Entrez au bon moment

  • Protection : Sécurisez votre capital

  • Contenu : 210 pages sans jargon.

0 0 votes
Évaluation de l'article
S’abonner
Notification pour

0 Commentaires
Le plus ancien
Le plus récent