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
DRAWLINE(x1, y1, x2, y2) COLOURED(R, G, B, a)Parameters
| Naam | Type | Standaard | Beschrijving |
|---|---|---|---|
x1 | geheel getal | verplicht | X-coördinaat van het eerste punt, normaal een barindex zoals BarIndex. |
y1 | prijs | verplicht | Y-coördinaat van het eerste punt, een koers of berekende waarde. |
x2 | geheel getal | verplicht | X-coördinaat van het tweede punt. |
y2 | prijs | verplicht | Y-coördinaat van het tweede punt. |
R, G, B | geheel getal | platformstandaard | Optioneel COLOURED rood-, groen- en blauwcomponenten, 0 tot 255. |
a | geheel getal | 255 | Optionele 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)
// 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)
RETURNElke 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)
// 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)
RETURNDe loop zoekt de barindices van twee lage punten, waarna een enkele DRAWLINE verbindt ze als een trendlijn.
Voorbeeld 3, Een vaste afstand markeren (Indicator)
// 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)
RETURNEen minimale aanroep die letterlijke offsets gebruikt voor de x-coördinaten en koersen voor de y-coördinaten.
Veelvoorkomende fouten en valkuilen
- Alleen indicator.
DRAWLINEheeft 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
x1ofx2. De x-coördinaten plaatsen bars op de horizontale as, gebruikBarIndexof 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.
DRAWLINEstopt bij zijn twee punten. Voor een lijn die er voorbij doorloopt, gebruikDRAWRAY.
Gerelateerde instructies
DRAWSEGMENT, tekent een lijnsegment tussen twee punten, qua gedrag vergelijkbaar metDRAWLINE.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.