Les scripts Pine prennent désormais en charge les empreintes de volume (volume footprint), vous offrant ainsi un accès direct aux flux d’ordres détaillés au sein de chaque barre de prix.
Cette mise à jour vous permet de créer des indicateurs d’empreinte personnalisés, d’extraire des mesures de volume précises et d’analyser l’activité intra-barre sans avoir recours à des solutions de contournement sur des périodes plus courtes.
Pourquoi utiliser les empreintes dans Pine?
Les requêtes d’empreintes vous permettent d’accéder instantanément à des données intra-barres avancées et de cartographier les niveaux de flux d’ordres importants sur le plan structurel, tels que:
- Répartitions granulaires du volume: totaux exacts des volumes «d’achat» (offre) et «de vente» (demande) pour l’ensemble de la barre et à des niveaux de prix spécifiques
- Delta de volume précis: la différence spécifique entre la pression d’achat et la pression de vente
- Niveaux clés d’enchères: accès immédiat au Point of Control (POC), au Value Area High (VAH) et au Value Area Low (VAL) de la barre
- Déséquilibres: données sur les déséquilibres entre l’achat et la vente à des niveaux de prix spécifiques
En combinant request.footprint() avec vos scripts personnalisés, vous pouvez surveiller par programmation les données approfondies sur le flux d’ordres tout en restant concentré sur la stratégie et l’exécution.
Fonctionnement des empreintes et des structures de données
La fonction request.footprint() est l’outil principal utilisé pour récupérer les informations relatives à l’empreinte de volume de la barre actuelle. Lorsqu’elle est appelée, elle renvoie un objet «footprint», qui contient toutes les données d’empreinte de volume récupérées pour cette barre spécifique.
Les données sont organisées en deux structures principales:
- Objets «footprint»: ils vous permettent d’accéder aux indicateurs globaux d’une barre. En utilisant les fonctions footprint.*(), vous pouvez récupérer des données telles que le volume total d’achat, le volume total de vente et le delta de volume.
- Objets volume_row: ils représentent des lignes de prix spécifiques au sein de l’empreinte, telles que le Point de Contrôle (POC) ou les limites de la Zone de Valeur. En utilisant les fonctions volume_row.*(), vous pouvez récupérer les niveaux de prix, les valeurs de volume, le delta de volume et les déséquilibres d’une ligne spécifique.
Remarque: si aucune donnée de footprint n’est disponible pour une barre donnée, la fonction request.footprint() renverra na.
Assurez-vous toujours que votre script vérifie que l’objet renvoyé est not na avant de tenter d’extraire des métriques à l’aide des fonctions footprint.*()ou volume_row.*().
Exemple d’utilisation
Vous trouverez ci-dessous un script simplifié illustrant comment demander l’empreinte et accéder aux données sous-jacentes:
//@version=6
indicator("Footprint Data Highlight", overlay = true)
// Request the footprint object for the current bar (100 ticks per row, 70% Value Area)
footprint reqFootprint = request.footprint(100, 70)
// We use a block to ensure we only process data when the footprint is available
if not na(reqFootprint)
// 1. Access overall bar metrics from the `footprint` object
float totalBuyVol = reqFootprint.buy_volume()
float totalSellVol = reqFootprint.sell_volume()
float volumeDelta = reqFootprint.delta()
// 2. Retrieve a specific `volume_row` object (the Point of Control)
volume_row pocRow = reqFootprint.poc()
// 3. Access specific price values from the `volume_row` object
float pocUpperPrice = pocRow.up_price()
float pocLowerPrice = pocRow.down_price()
// --- USING THE VARIABLES ---
// Use Buy/Sell Volume and Delta in a label
if barstate.islast
label.new(bar_index, high,
text = "Buy: " + str.tostring(totalBuyVol, format.volume) +
"\nSell: " + str.tostring(totalSellVol, format.volume) +
"\nDelta: " + str.tostring(volumeDelta, format.volume),
color = color.new(color.blue, 20),
textcolor = color.white,
style = label.style_label_down)
// Use POC prices to highlight the POC area on the chart
linefill.new(
line.new(bar_index, pocUpperPrice, bar_index[1], pocUpperPrice, color = color.orange),
line.new(bar_index, pocLowerPrice, bar_index[1], pocLowerPrice, color = color.orange),
color.new(color.orange, 80))
// Plotting the volume delta on a separate pane (if moved to non-overlay)
// or as a reference value in the Data Window
plot(not na(reqFootprint) ? reqFootprint.total_volume() : na, "Volume Delta", display = display.data_window)
Veuillez noter que pour pouvoir utiliser ces fonctionnalités liées aux empreintes, vous devez disposer d’un abonnement Premium ou Ultimate.
Pour rester informé/e des dernières améliorations apportées à l’expérience Pine Script®, consultez régulièrement les notes de mise à jour du manuel d’utilisation.
Nous espérons que vous trouverez ces fonctionnalités aussi utiles que nous le pensons, et n’hésitez pas à continuer à nous envoyer vos commentaires et suggestions afin que nous puissions améliorer la plateforme au maximum. Nous développons TradingView pour vous, et nous sommes toujours ravis de connaître votre avis.
L’équipe TradingView