Word nu lid
Grafisch/probuilder

DRAWLINE

DRAWLINE tekent in ProBuilder een rechte lijn tussen twee punten op de grafiek, opgegeven als barindex- en koerscoördinaten, met een optionele COLOURED kleur. Syntaxis en voorbeelden.

Syntaxis

probuilder
DRAWLINE(x1, y1, x2, y2) COLOURED(R, G, B, a)

Parameters

NaamTypeStandaardBeschrijving
x1geheel getalverplichtX-coördinaat van het eerste punt, normaal een barindex zoals BarIndex.
y1prijsverplichtY-coördinaat van het eerste punt, een koers of berekende waarde.
x2geheel getalverplichtX-coördinaat van het tweede punt.
y2prijsverplichtY-coördinaat van het tweede punt.
R, G, Bgeheel getalplatformstandaardOptioneel COLOURED rood-, groen- en blauwcomponenten, 0 tot 255.
ageheel getal255Optionele alpha (transparantie), 0 volledig transparant tot 255 volledig dekkend.

Hoe het werkt

DRAWLINE werkt binnen een ProBuilder-indicator. Op elke bar tekent het platform een rechte lijn tussen de twee coördinatenparen (x1, y1) en (x2, y2). De x-coördinaten zijn barindices, dus BarIndex en BarIndex-1 plaatsen de uiteinden op specifieke bars, terwijl de y-coördinaten prijzen op de verticale as zijn.

De lijn loopt precies tussen de twee gegeven punten, anders dan DRAWRAY, die daarbuiten doorloopt. Omdat tekenen op elke bar hetzelfde object vele keren herhaalt, laten de meeste scripts de code voorafgaan door DEFPARAM DrawOnLastBarOnly = true zodat de lijn eenmaal wordt getekend, op de huidige bar.

De optionele COLOURED clausule stelt de kleur in. Wordt hij weggelaten, dan gebruikt het platform de standaardkleur.

Voorbeelden

Voorbeeld 1, Fibonacci-pivotlijnen (Indicator)

probuilder
// Draw pivot and Fibonacci support/resistance as short horizontal lines
DEFPARAM DrawOnLastBarOnly = true
dh = DHigh(1)
dl = DLow(1)
P = (dh + dl + DClose(1)) / 3
R1 = P + 0.382 * (dh - dl)
S1 = P - 0.382 * (dh - dl)
DRAWLINE(BarIndex-1, P,  BarIndex, P)  COLOURED(153, 153, 0)
DRAWLINE(BarIndex-1, R1, BarIndex, R1) COLOURED(0, 153, 0)
DRAWLINE(BarIndex-1, S1, BarIndex, S1) COLOURED(153, 0, 0)
RETURN

Elke lijn loopt van de vorige bar naar de huidige bar op een vaste koers, dus hij leest als een korte niveaumarkering.

Voorbeeld 2, Twee recente lows verbinden (Indicator)

probuilder
// Draw a line between the two most recent lowest points over 20 bars
DEFPARAM DrawOnLastBarOnly = true
period = 20
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
DRAWLINE(x1, y1, x2, y2)
RETURN

De loop zoekt de barindices van twee lage punten, waarna een enkele DRAWLINE verbindt ze als een trendlijn.

Voorbeeld 3, Een vaste afstand markeren (Indicator)

probuilder
// A green line from 10 bars back at the low to the current close
DEFPARAM DrawOnLastBarOnly = true
DRAWLINE(BarIndex-10, low[10], BarIndex, close) COLOURED(0, 200, 0, 200)
RETURN

Een minimale aanroep die letterlijke offsets gebruikt voor de x-coördinaten en koersen voor de y-coördinaten.

Veelvoorkomende fouten en valkuilen

  • Alleen indicator. DRAWLINE heeft geen effect in ProScreener, ProOrder of ProBacktest. Houd tekencode in een ProBuilder-indicator.
  • X is een bar-index, geen prijs. Een veelgemaakte fout is een prijs doorgeven aan x1 of x2. De x-coördinaten plaatsen bars op de horizontale as, gebruik BarIndex of offsets daarvan.
  • Kosten van opnieuw tekenen. Zonder DrawOnLastBarOnly = true, wordt de lijn op elke historische bar getekend, wat de grafiek vertraagt. Stel hem één keer bovenaan het script in.
  • Begrensd, niet oneindig. DRAWLINE stopt bij zijn twee punten. Voor een lijn die er voorbij doorloopt, gebruik DRAWRAY.
  • DRAWSEGMENT, tekent een lijnsegment tussen twee punten, qua gedrag vergelijkbaar met DRAWLINE.
  • DRAWHLINE, een horizontale lijn op één prijsniveau.
  • DRAWVLINE, een verticale lijn op één bar-index.
  • DRAWRAY, een lijn die voorbij zijn tweede punt doorloopt.
  • COLOURED, stelt de kleur en transparantie van de lijn in.
  • DrawOnLastBarOnly, beperkt het tekenen tot de laatste bar om prestatieredenen.
  • BarIndex, levert de x-coördinaten.
  • DRAWTEXT, voorziet de lijn van tekst.