Pine prend désormais en charge les remplissages entre les dessins de lignes

Jan 11, 2022

Les programmeurs Pine aiment avoir différentes options pour afficher les calculs des indicateurs sur les graphiques, et ce à juste titre. La façon dont nous présentons les informations est tout aussi importante que les informations elles-mêmes, car des visuels bien conçus rendent les indicateurs plus faciles à utiliser.

Notre dernier ajout à la boîte à outils Pine vous permet de remplir l’espace entre deux dessins de lignes en utilisant un nouveau type de dessin « linefill » et les fonctions qui l’accompagnent.

Les principes de base sont simples : pour remplir l’espace entre deux dessins de lignes, appelez la fonction linefill.new() avec leur ID et une couleur. Toute paire de deux lignes ne peut avoir qu’un seul remplissage entre elles, donc des appels successifs à linefill.new() sur la même paire de lignes remplacera le remplissage précédent par un nouveau.

Le comportement des remplissages de lignes dépend des lignes auxquelles ils sont attachés. Si les deux lignes s’étendent dans la même direction, le remplissage suivra leurs extensions, comme on peut le voir dans l’affichage du script suivant.

Dans l’exemple ci-dessous, notre indicateur trace deux lignes reliant les deux derniers points de pivot haut et bas du graphique. Nous étendons les lignes vers la droite pour projeter le mouvement à court terme du graphique, et remplissons l’espace entre elles pour améliorer la visibilité du canal que les lignes créent :

//@version=5
indicator("Channel", overlay = true)

LEN_LEFT = 15
LEN_RIGHT = 5
pH = ta.pivothigh(LEN_LEFT, LEN_RIGHT)
pL = ta.pivotlow(LEN_LEFT, LEN_RIGHT)

// Bar indices of pivot points
pH_x1 = ta.valuewhen(pH, bar_index, 1) - LEN_RIGHT
pH_x2 = ta.valuewhen(pH, bar_index, 0) - LEN_RIGHT
pL_x1 = ta.valuewhen(pL, bar_index, 1) - LEN_RIGHT
pL_x2 = ta.valuewhen(pL, bar_index, 0) - LEN_RIGHT
// Price values of pivot points
pH_y1 = ta.valuewhen(pH, pH, 1)
pH_y2 = ta.valuewhen(pH, pH, 0)
pL_y1 = ta.valuewhen(pL, pL, 1)
pL_y2 = ta.valuewhen(pL, pL, 0)

if barstate.islastconfirmedhistory
    // Lines
    lH = line.new(pH_x1, pH_y1, pH_x2, pH_y2, extend = extend.right)
    lL = line.new(pL_x1, pL_y1, pL_x2, pL_y2, extend = extend.right)
    // Fill
    fillColor = switch
        pH_y2 > pH_y1 and pL_y2 > pL_y1 => color.green
        pH_y2 < pH_y1 and pL_y2 < pL_y1 => color.red
        => color.silver
    linefill.new(lH, lL, color.new(fillColor, 90))

Vous pouvez en savoir plus sur la fonctionnalité de remplissage de lignes dans notre manuel de référence: il suffit de taper « remplissage de lignes » dans le champ de recherche pour faire apparaître toutes les fonctions associées. Ou, si vous préférez apprendre des Grands, les exemples suivants montrent comment certains de nos PineCoders ont utilisé les remplissages de lignes :

Gann Fan par LonesomeThe Blue

Average Lines par fikira

Auto Fib Time Zones and Trend-Based Fib Time par DGT (…par dgtrd)

Pour rester informé/e des nouvelles fonctionnalités de Pine, gardez un œil sur les notes de publication de notre manuel d’utilisation. Nos PineCoders diffusent également des mises à jour depuis la chaîne Telegram Squawk Box ,Twitter, et depuis le chat public Pine Script sur TradingView.

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

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