Pine Script™ et les graphiques deviennent plus familiers

Jul 12, 2022

De nouveaux modules intégrés dans l’espace de noms chart offrent désormais aux scripts une meilleure visibilité sur les propriétés des graphiques. Avec eux, nous introduisons également un nouveau type de comportement pour vos scripts Pine, qui leur permet de recalculer et de redessiner sur les barres visibles uniquement, en se réajustant automatiquement lorsque les traders font défiler ou zooment sur leur graphique.

Propriétés des graphiques

Le nouvel élément intégré chart.bg_color renvoie la couleur de l’arrière-plan du graphique. Vous pouvez l’utiliser pour adapter le schéma de couleurs de votre script au contexte du graphique. Son compagnon chart.fg_color renvoie une couleur qui fournira un contraste optimal avec la couleur de fond du graphique, quelle qu’elle soit.

Un autre ensemble de nouveaux built-ins booléens permet de détecter le type de graphique sur lequel votre script est exécuté. Il s’agit de:

La dernière renverra vrai (true) sur tous les types de graphiques standard (ceux qui renvoient un prix de clôture non synthétique): barres, bougies, bougies creuses, colonnes, ligne, zone ou ligne de base.

Barres visibles et recalcul dynamique

Les nouveaux build-ins chart.left_visible_bar_time et chart.right_visible_bar_time renvoient l’heure d’ouverture des barres visibles les plus à gauche et les plus à droite du graphique. Lorsqu’un trader fait défiler ou zoome sur son graphique – ce qui entraîne une modification de la plage de barres visibles sur le graphique – les scripts utilisant l’un de ces nouveaux modules intégrés seront automatiquement réexécutés afin que les calculs et les visuels puissent s’adapter au nouveau contexte. Cela ouvre la porte à une toute nouvelle variété de scripts qui s’ajustent dynamiquement aux changements dans la plage des barres visibles.

Cet exemple dessine une flèche de l’ouverture de la première barre visible à la fermeture de la dernière, et montre le gain/la perte pour cette plage:

//@version=5
indicator("Chart gain/loss", "", true)

// Save the `open` of the leftmost visible bar.
var float chartOpen = na
if time == chart.left_visible_bar_time
    chartOpen := open
else if time == chart.right_visible_bar_time
    // Run the following code on the chart's rightmost visible bar.
    color arrowColor = close > chartOpen ? color.lime : color.fuchsia
    // Draw arrow once, then modify it.
    var line arrow = line.new(na, na, na, na, xloc.bar_time, extend.none, na, line.style_arrow_right, 3)
    line.set_xy1(arrow, chart.left_visible_bar_time, chartOpen)
    line.set_xy2(arrow, chart.right_visible_bar_time, close)
    line.set_color(arrow, arrowColor)
    // Draw percentage label once, then modify it.
    var label percentage = label.new(na, na, na, xloc.bar_time, yloc.price, #00000000, label.style_label_down, size = size.huge)
    int midTime = int(math.avg(chart.left_visible_bar_time, chart.right_visible_bar_time))
    label.set_xy(percentage, midTime, math.avg(chartOpen, close))
    label.set_text(percentage, str.tostring((close - chartOpen) / chartOpen * 100, format.percent))
    label.set_textcolor(percentage, arrowColor)

Notez qu’étant donné que les scripts utilisant cette fonctionnalité seront réexécutés plus souvent que les scripts normaux, il faut veiller à utiliser un code efficace et à garder les calculs légers si l’on veut préserver la réactivité habituelle des graphiques TradingView.

Nous avons publié un indicateur Chart VWAP comme exemple d’utilisation de cette nouvelle fonctionnalité. Il s’ancre automatiquement sur les barres visibles:

Le compte PineCoders a également publié une bibliothèque VisibleChart pour aider les programmeurs Pine Script™ à tirer le meilleur parti de cette nouvelle fonctionnalité.

Pour rester informés des nouvelles fonctionnalités de Pine Script™, gardez un œil sur les notes de publication du manuel d’utilisation. Le compte PineCoders diffuse également des mises à jour depuis sa Squawk Box sur Telegram, son compte Twitter et depuis le chat public  » Pine Script™ Q&A  » sur TradingView.

Nous espérons que vous trouverez ces fonctionnalités très demandées utiles. Continuez à nous envoyer vos commentaires et vos suggestions d’amélioration. Nous construisons TradingView pour vous, et nous sommes toujours ravis d’avoir de vos nouvelles.

Look first Then leap

TradingView est conçu pour vous, assurez-vous donc de profiter au maximum de nos fonctionnalités exceptionnelles
Ouvrir le graphique