La fonction est utilisée pour le dessin personnalisé au moment de l'exécution de la stratégie en utilisant une méthode de dessin similaire à laPine
language.
L'objet de la carte.KLineChart()
fonction renvoie un objet graphique avec plusieurs méthodes, parmi lesquelles vous devez faire attention àbegin()
etclose()
L'opération de tirage doit commencer par unbegin()
appel de fonction et fin avec unclose()
appel de la fonction lors du traversement des données KLine pour effectuer l'opération de dessin.
objet
Le tableau KLine (options)
Leoptions
le paramètre est la configuration du graphique.
les options
vrai
objet, tableau d'objets
function main() {
// Call the KLineChart function to create a chart control object c
let c = KLineChart({
overlay: true
})
// Use the Spot Exchange object test to get K-line data. If you use the futures exchange object test, you need to set up the contract first.
let bars = exchange.GetRecords()
if (!bars) {
return
}
// Execute the drawing operation by traversing over the K-line data. The drawing operation must start with the ```c.begin(bar)``` function call and end with the ```c.close()``` function call.
bars.forEach(function(bar, index) {
c.begin(bar)
c.barcolor(bar.Close > bar.Open ? 'rgba(255, 0, 0, 0.2)' : 'rgba(0, 0, 0, 0.2)')
if (bar.Close > bar.Open) {
c.bgcolor('rgba(0, 255, 0, 0.5)')
}
let h = c.plot(bar.High, 'high')
let l = c.plot(bar.Low, 'low')
c.fill(h, l, {
color: bar.Close > bar.Open ? 'rgba(255, 0, 0, 0.2)' : 'rgba(255, 0, 0, 0.2)'
})
c.hline(bar.High)
c.plotarrow(bar.Close - bar.Open)
c.plotshape(bar.Low, {
style: 'diamond'
})
c.plotchar(bar.Close, {
char: 'X'
})
c.plotcandle(bar.Open*0.9, bar.High*0.9, bar.Low*0.9, bar.Close*0.9)
if (bar.Close > bar.Open) {
// long/short/closelong/closeshort
c.signal("long", bar.High, 1.5)
} else if (bar.Close < bar.Open) {
c.signal("closelong", bar.Low, 1.5)
}
c.close()
})
}
def main():
# Call the KLineChart function to create a chart control object c
c = KLineChart({
"overlay": True
})
# Use the Spot Exchange object test to get K-line data. If you use the futures exchange object test, you need to set up the contract first.
bars = exchange.GetRecords()
if not bars:
return
for bar in bars:
c.begin(bar)
c.barcolor('rgba(255, 0, 0, 0.2)' if bar.Close > bar.Open else 'rgba(0, 0, 0, 0.2)')
if bar.Close > bar.Open:
c.bgcolor('rgba(0, 255, 0, 0.5)')
h = c.plot(bar.High, 'high')
l = c.plot(bar.Low, 'low')
c.fill(h, l, 'rgba(255, 0, 0, 0.2)' if bar.Close > bar.Open else 'rgba(255, 0, 0, 0.2)')
c.hline(bar.High)
c.plotarrow(bar.Close - bar.Open)
c.plotshape(bar.Low, style = 'diamond')
c.plotchar(bar.Close, char = 'X')
c.plotcandle(bar.Open*0.9, bar.High*0.9, bar.Low*0.9, bar.Close*0.9)
if bar.Close > bar.Open:
# long/short/closelong/closeshort
c.signal("long", bar.High, 1.5)
elif bar.Close < bar.Open:
c.signal("closelong", bar.Low, 1.5)
c.close()
// Not supported for now
Si un objet de commande de graphique est nécessaire pour dessiner dans la zone de dessin personnalisé de la stratégie, utilisez leKLineChart()
Le paramètre de l'objet est le paramètre de la fonctionKLineChart()
la fonction est une structure de configuration de graphique, celle utilisée dans le code de référence est simple:{overlay: true}
. Cette structure de configuration de graphique définit uniquement le contenu de dessin à produire sur le graphique principal.overlay
est réglée sur une valeur false, par exemplefalse
Si vous avez besoin de spécifier une fonction de dessin pour dessiner sur le graphique principal, vous pouvez également spécifier le paramètreoverlay
comme valeur vraie dans l'appel de fonction spécifique, par exemple:true
.
c.barcolor(bar.Close > bar.Open ? 'rgba(255, 0, 0, 0.2)' : 'rgba(0, 0, 0, 0.2)') // Use the example illustrated in the reference code in this example, without further ado
c.barcolor('rgba(255, 0, 0, 0.2)' if bar.Close > bar.Open else 'rgba(0, 0, 0, 0.2)')
// Not supported for now
Les fonctions de l'interface de dessin duPine
les langues prises en charge dans l'opération de dessin sont:barcolor
, qui définit la couleur de la ligne K.
barcolor (couleur, décalage, modifiable, titre, affichage) les paramètres d'affichage sont facultatifs:
aucun , tous
c.bgcolor('rgba(0, 255, 0, 0.5)')
c.bgcolor('rgba(0, 255, 0, 0.5)')
// Not supported for now
bgcolor
, remplit le fond de la ligne K de la couleur spécifiée.
bgcolor ((couleur, décalage, modifiable, show_last, titre, affichage, superposition) les paramètres d'affichage sont facultatifs:
aucun , tous
c.plot(bar.High, 'high')
c.plot(bar.Open < bar.Close ? NaN : bar.Close, "Close", {style: "linebr"}) // Support for drawing discontinuous data lines
h = c.plot(bar.High, 'high')
h = c.plot(None if bar.Open < bar.Close else bar.Close, "Close", style = "linebr") # Support for drawing discontinuous data lines
// Not supported for now
plot
, tracez une série de données sur un graphique.
graphique (série, titre, couleur, largeur de ligne, style, trackprice, base de données, décalage, joint, modifiable, show_last, affichage) Les paramètres de style sont facultatifs:
stepline_diamond , stepline , cross , areabr , area , circles , columns , histogram , linebr , line les paramètres d'affichage sont facultatifs: aucun , tous
let h = c.plot(bar.High, 'high')
let l = c.plot(bar.Low, 'low')
c.fill(h, l, {color: bar.Close > bar.Open ? 'rgba(255, 0, 0, 0.2)' : 'rgba(255, 0, 0, 0.2)'})
h = c.plot(bar.High, 'high')
l = c.plot(bar.Low, 'low')
c.fill(h, l, color = 'rgba(255, 0, 0, 0.2)' if bar.Close > bar.Open else 'rgba(255, 0, 0, 0.2)'})
// Not supported for now
fill
, remplir l'arrière-plan entre deux graphiques ouhline
avec les couleurs fournies.
remplir ((ligne1, ligne2, couleur, titre, modifiable, remplissage, affichage) les paramètres d'affichage sont facultatifs:
aucun , tous
Depuis leJavaScript
le langage ne peut pas spécifier les paramètres entrants basés sur les noms des paramètres de fonction formels, pour résoudre ce problème, vous pouvez utiliser un{key: value}
structure pour spécifier les paramètres à passer à un nom de paramètre formel.
Par exemple, le code de référence{color: bar.Close > bar.Open ? 'rgba(255, 0, 0, 0, 0.2)' : 'rgba(255, 0, 0, 0, 0.2)'}
précise lecolor
paramètre dufill
fonction.
Si vous devez spécifier plusieurs paramètres avec des noms de paramètres de forme consécutifs, vous pouvez utiliser{key1: value1, key2: value2, key3: value3}
- Je ne sais pas.
Par exemple, dans cet exemple, un supplémenttitle
le paramètre est spécifié:{color: bar.Close > bar.Open ? 'rgba(255, 0, 0, 0, 0.2)' : 'rgba(255, 0, 0, 0, 0.2)', title: 'fill'}
- Je ne sais pas.
Pour la valeur de couleur, vous pouvez le définir avec'rgba(255, 0, 0, 0, 0.2)'
ou avec'#FF0000'
.
c.hline(bar.High)
c.hline(bar.High)
// Not supported for now
hline
, la ligne horizontale est présentée à un prix fixe donné.
ligne ((prix, titre, couleur, style de ligne, largeur de ligne, modifiable, affichage) Les paramètres de style de ligne sont facultatifs:
pointillés , pointillés , solides les paramètres d'affichage sont facultatifs: aucun , tous
c.plotarrow(bar.Close - bar.Open)
c.plotarrow(bar.Close - bar.Open)
// Not supported for now
plotarrow
, tracez des flèches vers le haut et vers le bas sur la carte.
Plotarrow ((série, titre, colorup, coloradown, décalage, minheight, maxheight, modifiable, show_last, affichage) les paramètres d'affichage sont facultatifs:
aucun , tous
c.plotshape(bar.Low, {style: 'diamond'})
c.plotshape(bar.Low, style = 'diamond')
// Not supported for now
plotshape
, dessiner des formes visuelles sur le graphique.
Plotshape (série, titre, style, emplacement, couleur, décalage, texte, couleur de texte, modifiable, taille, show_last, affichage) Les paramètres de style sont facultatifs:
diamond size.autoC'est une petite taille. les paramètres d'affichage sont facultatifs:, square , label_down , label_up , arrow_down , arrow_up , circle , flag , triangle_down , triangle_up , cross , xcross Les paramètres de localisation sont facultatifs: barre supérieure , barre inférieure , top , bottom , absolu Les paramètres de taille sont facultatifs: 10px , 14px , 20px , 40px , 80px , en comparant taille.petite, taille.petite, taille.normale, taille.grande, taille.énorme en langue Pine. aucun , tous
c.plotchar(bar.Close, {char: 'X'})
c.plotchar(bar.Close, char = 'X')
// Not supported for now
plotchar
, dessinez des formes visuelles sur le graphique en utilisant n'importe quel caractère Unicode donné.
graphique (série, titre, graphique, emplacement, couleur, décalage, texte, couleur de texte, modifiable, taille, show_last, affichage) Les paramètres de localisation sont facultatifs:
barre supérieure size.autoC'est une petite taille. les paramètres d'affichage sont facultatifs:, barre inférieure , top , bottom , absolu Les paramètres de taille sont facultatifs: 10px , 14px , 20px , 40px , 80px , en comparant taille.petite, taille.petite, taille.normale, taille.grande, taille.énorme en langue Pine. aucun , tous
c.plotcandle(bar.Open*0.9, bar.High*0.9, bar.Low*0.9, bar.Close*0.9)
c.plotcandle(bar.Open*0.9, bar.High*0.9, bar.Low*0.9, bar.Close*0.9)
// Not supported for now
plotcandle
, tracez un graphique de ligne K sur un graphique.
Plotcandle (ouvert, haut, bas, près, titre, couleur, couleur, éditable, show_last, bordure, affichage) les paramètres d'affichage sont facultatifs:
aucun , tous
c.signal("long", bar.High, 1.5)
c.signal("long", bar.High, 1.5)
// Not supported for now
signal
, une fonction qui n'est pas disponible dans le langage Pine, est utilisée pour tracer des signaux d'achat et de vente ici.
signal ((direction, prix, quantité, identifiant) Le paramètre
long est passé pour indiquer la direction de la transaction, vous pouvez choisir long , closelong , short , closeshort . bar.High
est la position de l'axe Y du signal de marquage. Le quatrième paramètre peut être passé pour remplacer le contenu de texte par défaut dessiné, et le texte par défaut du marqueur de signal dessiné est la direction de la transaction, par exemplecloselong .
c.reset()
c.reset()
// Not supported for now
reset
, une fonction qui n'est pas disponible dans le langage Pine, est utilisée pour vider les données du graphique.
Réinitialiser (résister) Le
reset()
la méthode peut prendre un paramètre,remain
, pour spécifier le nombre de données à conserver.remain
Cela signifie effacer toutes les données.
La stratégie de dessin personnalisé ne peut utiliser qu'une des façons deKLineChart()
fonction ouChart()
Pour certains paramètres de couleur et de style utilisés dans leKLineChart()
l'appel de fonction, veuillez vous référer à laUtilisez la fonction KLineChart pour faciliter la conception de dessins stratégiques.
{@fun/Log/Graphique graphique}
Graphique LogReset (réinitialisation du journal)