Jetzt beitreten
Grafisch/probuilder

DRAWTRIANGLE

DRAWTRIANGLE in ProBuilder zeichnet ein Dreieck aus drei Eckpunkten, angegeben als Bar-Index- und Kurskoordinaten, mit optionaler COLOURED-Farbe und Transparenz.

Syntax

probuilder
DRAWTRIANGLE(x1, y1, x2, y2, x3, y3) COLOURED(R, G, B, a)

Parameter

NameTypStandardBeschreibung
x1, y1Ganzzahl, KurserforderlichBar-Index und Kurs des ersten Eckpunktes.
x2, y2Ganzzahl, KurserforderlichBar-Index und Kurs des zweiten Eckpunktes.
x3, y3Ganzzahl, KurserforderlichBar-Index und Kurs des dritten Eckpunktes.
R, G, BGanzzahlPlattformstandardOptional COLOURED Rot-, Grün- und Blauanteile, 0 bis 255.
aGanzzahl255Optionaler Alphawert (Transparenz), 0 vollständig transparent bis 255 vollständig deckend.

So funktioniert es

DRAWTRIANGLE läuft innerhalb eines ProBuilder-Indikators. Es verbindet drei Scheitelpunkte (x1, y1), (x2, y2) und (x3, y3) zu einem geschlossenen Dreieck. Jedes x ist ein Bar-Index auf der horizontalen Achse und jedes y ein Kurs auf der vertikalen Achse, sodass die Eckpunkte an Swing-Hochs, Swing-Tiefs oder dem aktuellen Bar platziert werden können. Das eignet sich zum Markieren von Mustern wie Wedges oder Measured Moves.

Der optionale COLOURED Klausel legt Farbe und Transparenz fest. Da das Dreieck auf jedem Bar neu gezeichnet wird, setzen Skripte üblicherweise DEFPARAM DrawOnLastBarOnly = true sodass es einmal gezeichnet wird.

Beispiele

Beispiel 1, Dreieck aus den Extremwerten einer Periode (Indikator)

probuilder
// Vertices at the highest high, the lowest low and the current low
DEFPARAM DrawOnLastBarOnly = true
period = 20
hh = Highest[period](high)
ll = Lowest[period](low)
FOR i = 1 TO period DO
    IF high[i] = hh THEN
        x1 = BarIndex[i]
    ENDIF
    IF low[i] = ll THEN
        x2 = BarIndex[i]
    ENDIF
NEXT
DRAWTRIANGLE(x1, hh, x2, ll, BarIndex, low) COLOURED(200, 120, 120, 255)
RETURN

Die Schleife findet die Bars der Extremkurse und das Dreieck verbindet sie mit dem aktuellen Tief.

Beispiel 2, Ein fester Dreiecksmarker (Indikator)

probuilder
// A small blue triangle above the current bar
DEFPARAM DrawOnLastBarOnly = true
DRAWTRIANGLE(BarIndex-1, high, BarIndex+1, high, BarIndex, high + 5 * pointsize) COLOURED(0, 120, 255)
RETURN

Drei Eckpunkte, die über Versätze vom aktuellen Bar festgelegt werden, ergeben einen kompakten Zeiger.

Beispiel 3, Gefülltes Dreieck (Indikator)

probuilder
// Outline in green, interior filled light green
DEFPARAM DrawOnLastBarOnly = true
DRAWTRIANGLE(BarIndex-5, low, BarIndex, high, BarIndex+5, low) COLOURED(0, 180, 0) FILLCOLOR(200, 255, 200)
RETURN

FILLCOLOR füllt das Innere, während COLOURED setzt den Rahmen.

Häufige Fehler und Stolperfallen

  • Nur Indikator. DRAWTRIANGLE hat keine Wirkung in ProScreener, ProOrder oder ProBacktest. Behalten Sie es in einem ProBuilder Indikator.
  • Sechs Werte, drei Eckpunkte. Die Argumente paaren sich zu drei (x, y) Eckpunkte. Zählt man sie falsch, verschiebt sich die Form.
  • X ist ein Bar-Index. Einen Preis an ein x-Argument zu übergeben, setzt diesen Scheitelpunkt falsch. Verwenden Sie BarIndex oder Abstände davon.
  • Kosten des Neuzeichnens. Ohne DrawOnLastBarOnly = true, wird das Dreieck auf jedem Bar gezeichnet und bremst den Chart.
  • DRAWRECTANGLE, zeichnet einen Kasten mit vier Ecken.
  • DRAWELLIPSE, zeichnet eine Ellipse in einem Begrenzungsrahmen.
  • DRAWLINE, zeichnet eine Linie zwischen zwei Punkten.
  • COLOURED, legt Umrissfarbe und Transparenz fest.
  • FILLCOLOR, legt die Füllfarbe im Inneren fest.
  • DrawOnLastBarOnly, beschränkt das Zeichnen aus Performancegründen auf den letzten Bar.
  • BarIndex, liefert die x-Koordinaten.
  • Highest, findet einen Eckpunktkurs zur Verwendung.