DRAWSEGMENT
DRAWSEGMENT in ProBuilder zeichnet ein Liniensegment zwischen zwei Chartpunkten, angegeben als Bar-Index- und Kurskoordinaten, mit optionaler COLOURED-Farbe.
Syntax
DRAWSEGMENT(x1, y1, x2, y2) COLOURED(R, G, B, a)Parameter
| Name | Typ | Standard | Beschreibung |
|---|---|---|---|
x1 | Ganzzahl | erforderlich | X-Koordinate des Startpunkts, normalerweise ein Bar-Index. |
y1 | Kurs | erforderlich | Y-Koordinate des Startpunkts, ein Kurs oder ein berechneter Wert. |
x2 | Ganzzahl | erforderlich | X-Koordinate des Endpunktes. |
y2 | Kurs | erforderlich | Y-Koordinate des Endpunktes. |
R, G, B | Ganzzahl | Plattformstandard | Optional COLOURED Rot-, Grün- und Blauanteile, 0 bis 255. |
a | Ganzzahl | 255 | Optionaler Alphawert (Transparenz), 0 vollständig transparent bis 255 vollständig deckend. |
So funktioniert es
DRAWSEGMENT ist ein Indikator-Befehl. Er zeichnet ein gerades Segment vom Startpunkt (x1, y1) zum Endpunkt (x2, y2). Die x-Werte sind Bar-Indizes entlang der horizontalen Achse und die y-Werte sind Kurse auf der vertikalen Achse. Im Gegensatz zu DRAWRAY, endet das Segment genau an seinen beiden Punkten und reicht nicht darüber hinaus.
Die x-Koordinaten stammen typischerweise aus BarIndex, und die y-Koordinaten aus Kursen oder Indikatorwerten. Da das Objekt auf jedem Bar neu gezeichnet wird, setzen die meisten Skripte DEFPARAM DrawOnLastBarOnly = true damit das Segment einmal gezeichnet wird. Der COLOURED Klausel ist optional und setzt Farbe und Transparenz.
Beispiele
Beispiel 1, Ein einzelnes farbiges Segment (Indikator)
// A semi-transparent red horizontal segment between two fixed points
DRAWSEGMENT(BarIndex-90, close, BarIndex, close) COLOURED(255, 0, 0, 150)
RETURNAus der ursprünglichen Idee übernommen: ein Segment, das zwischen zwei Koordinatenpaaren gezeichnet wird, rot gefärbt mit teilweiser Deckkraft.
Beispiel 2, Trendsegment zwischen zwei Tiefs (Indikator)
// Connect the two most recent lows within 30 bars
DEFPARAM DrawOnLastBarOnly = true
period = 30
y2 = Lowest[period](low)
FOR i = 0 TO period DO
IF low[i] = y2 THEN
x2 = BarIndex[i]
ELSIF low[i] < y2 THEN
y1 = low[i]
x1 = BarIndex[i]
ENDIF
NEXT
DRAWSEGMENT(x1, y1, x2, y2) COLOURED(0, 120, 255)
RETURNDie Schleife findet zwei Tiefpunkte und das Segment verbindet sie als Unterstützungslinie.
Beispiel 3, Segment plus Beschriftung (Indikator)
// Segment from the recent high to the current close, with a caption
DEFPARAM DrawOnLastBarOnly = true
hh = Highest[20](high)
DRAWSEGMENT(BarIndex-20, hh, BarIndex, close) COLOURED(200, 120, 0)
DRAWTEXT("range", BarIndex, close) COLOURED(200, 120, 0)
RETURNDRAWSEGMENT und DRAWTEXT ergänzen sich, um denselben Bereich zu markieren und zu beschriften.
Häufige Fehler und Stolperfallen
- Nur Indikator.
DRAWSEGMENTtut nichts in ProScreener, ProOrder oder ProBacktest. Behalten Sie es in einem ProBuilder Indikator. - X ist ein Bar-Index. Die Übergabe eines Preises an
x1oderx2platziert das Segment falsch. Verwenden SieBarIndexoder Abstände davon. - Kosten des Neuzeichnens. Ohne
DrawOnLastBarOnly = true, wird das Segment auf jedem Bar gezeichnet und bremst den Chart. - Begrenztes Segment. Sie endet an ihren Endpunkten. Für eine Linie, die über den zweiten Punkt hinausgeht, verwenden Sie
DRAWRAY.
Verwandte Befehle
DRAWLINE, zeichnet eine Linie zwischen zwei Punkten, im Verhalten ähnlich zuDRAWSEGMENT.DRAWHLINE, eine horizontale Linie auf einem Kursniveau.DRAWVLINE, eine vertikale Linie an einem Bar-Index.DRAWRAY, verläuft über seinen zweiten Punkt hinaus.COLOURED, legt Farbe und Transparenz fest.DrawOnLastBarOnly, beschränkt das Zeichnen aus Performancegründen auf den letzten Bar.BarIndex, liefert die x-Koordinaten.DRAWTEXT, fügt dem Segment eine Beschriftung hinzu.