DRAWLINE
DRAWLINE in ProBuilder disegna una linea retta tra due punti del grafico indicati come coordinate di indice di bar e prezzo, con colore opzionale tramite COLOURED. Sintassi ed esempi.
Sintassi
DRAWLINE(x1, y1, x2, y2) COLOURED(R, G, B, a)Parametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
x1 | intero | obbligatorio | Coordinata X del primo punto, normalmente un indice di bar come BarIndex. |
y1 | prezzo | obbligatorio | Coordinata Y del primo punto, un prezzo o un valore calcolato. |
x2 | intero | obbligatorio | Coordinata X del secondo punto. |
y2 | prezzo | obbligatorio | Coordinata Y del secondo punto. |
R, G, B | intero | predefinito della piattaforma | Opzionale COLOURED componenti rosso, verde e blu, da 0 a 255. |
a | intero | 255 | Alpha opzionale (trasparenza), da 0 completamente trasparente a 255 completamente opaco. |
Come funziona
DRAWLINE funziona all'interno di un indicatore ProBuilder. Su ogni bar la piattaforma disegna una linea retta tra le due coppie di coordinate (x1, y1) e (x2, y2). Le coordinate x sono indici di bar, quindi BarIndex e BarIndex-1 collocano le estremità su bar specifiche, mentre le coordinate y sono prezzi sull'asse verticale.
La linea si estende esattamente tra i due punti indicati, a differenza di DRAWRAY, che si estende oltre di essi. Poiché disegnare su ogni barra ripete lo stesso oggetto molte volte, la maggior parte degli script fa precedere il codice da DEFPARAM DrawOnLastBarOnly = true così la linea viene disegnata una sola volta, sul bar corrente.
L'opzionale COLOURED clausola imposta il colore. Quando viene omessa si usa il colore predefinito della piattaforma.
Esempi
Esempio 1, Linee pivot di Fibonacci (Indicatore)
// 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)
RETURNOgni linea va dalla bar precedente alla bar corrente a un prezzo fisso, quindi si legge come un breve marcatore di livello.
Esempio 2, Collegare due minimi recenti (Indicatore)
// 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)
RETURNIl ciclo individua gli indici dei bars di due punti di minimo, poi un singolo DRAWLINE li collega come linea di tendenza.
Esempio 3, Segnare una distanza fissa (Indicatore)
// 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)
RETURNUna chiamata minima che usa offset letterali per le coordinate x e prezzi per le coordinate y.
Errori e insidie comuni
- Solo indicatori.
DRAWLINEnon ha effetto in ProScreener, ProOrder o ProBacktest. Mantieni il codice di disegno in un indicatore ProBuilder. - X è un indice di bar, non un prezzo. Un errore comune è passare un prezzo a
x1ox2. Le coordinate x individuano i bar sull'asse orizzontale, usaBarIndexo scostamenti da esso. - Costo del ridisegno. Senza
DrawOnLastBarOnly = true, la linea viene disegnata su ogni bar storica, il che rallenta il grafico. Impostala una sola volta in cima allo script. - Limitata, non infinita.
DRAWLINEsi ferma ai suoi due punti. Per una linea che si estende oltre usaDRAWRAY.
Istruzioni correlate
DRAWSEGMENT, disegna un segmento di linea tra due punti, simile nel comportamento aDRAWLINE.DRAWHLINE, una linea orizzontale a un livello di prezzo.DRAWVLINE, una linea verticale a un indice di bar.DRAWRAY, una linea che si estende oltre il suo secondo punto.COLOURED, imposta il colore e la trasparenza della linea.DrawOnLastBarOnly, limita il disegno all'ultima bar per motivi di prestazioni.BarIndex, fornisce le coordinate x.DRAWTEXT, etichetta la linea con un testo.