web-dev-qa-db-fra.com

Quel est l'équivalent de console.log en pin-script?

Comment fonctionne un console.log variables, ou les résultats des fonctions dans pine-script? Je voudrais convertir un pine-script script en javascript, et je voudrais vérifier que le script que je convertis est le même que l'original. Tous les contournements sont les bienvenus si cette fonctionnalité n'existe pas. Merci!

9
zero_cool

Il n'y a aucun moyen d'imprimer du texte ou des variables en pin sur n'importe quelle forme de "console". Mais vous pouvez utiliser plot pour imprimer, du texte très court au-dessus ou en dessous de chaque tick. Cependant, le texte est statique et vous ne pouvez pas utiliser de variables pour le modifier.

Vous pouvez également utiliser diverses astuces pour afficher les valeurs dans les champs d'indicateur très limités (en haut à gauche) de la fenêtre du graphique. Ou déplacer les lignes et les tracés hors du visible sont du graphique, mais toujours voir les reflets de l'axe.

Veuillez consulter leur wiki et consulter les milliers de scripts d'autres utilisateurs pour découvrir les détails sur la façon de le faire.

7
not2qubit

Avec Pine v.4, il existe une nouvelle façon d'imprimer du texte. Vous pouvez utiliser des étiquettes pour cela:

//@version=4
study("Print text values", overlay=true)
x = bar_index
y = close
txt = tostring(close)
label.new(x, y, txt) // print value of close
3
Michel_T.

Il existe en fait quelque chose de similaire à une console pour les développeurs de Pine; c'est la fenêtre de données . Nous l'utilisons constamment pour déboguer. L'idée est d'utiliser plotchar() de cette façon:

plotchar(bar_index, "Bar Index", "", location = location.top)

enter image description here

Cela ne perturbera pas l'échelle de l'indicateur et n'y imprimera rien, mais il affichera une valeur dans la fenêtre de données, comme expliqué dans la deuxième question de la section FAQ de PineCoders sur le débogage . Lorsque vous déplacez votre souris sur des barres de graphique, la valeur correspondante de la variable/expression s'affiche dans la fenêtre de données. Le FAQ explique d'autres techniques utiles qui peuvent être utilisées pour déboguer sur le graphique, car c'est parfois plus efficace.


Nous utilisons une macro AutoHotkey qui crée l'instruction plotchar() requise à partir d'une variable ou d'une expression précédemment copiée dans le presse-papiers. Voici la macro AHK:

^+C:: SendInput plotchar(%Clipboard%, "%Clipboard%", "", location.top){Return}  ; Creates plotchar() call with variable named in the clipboard.

La fenêtre de données est également une excellente option en tant que panneau d'affichage pour les scripts nécessitant l'affichage de nombreuses valeurs, comme notre Backtesting & Trading Engine , qui en fait un usage intensif: enter image description here

1
PineCoders-LucF