Bli medlem i dag
Grafisk/probuilder

DRAWRECTANGLE

DRAWRECTANGLE i ProBuilder tegner et rektangel fra to motstående hjørner oppgitt som barindeks og pris, med valgfri COLOURED-kontur og FILLCOLOR-fyll.

Syntaks

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

Parametere

NavnTypeStandardBeskrivelse
x1heltallpåkrevdX-koordinaten til det første hjørnet, normalt en barindeks.
y1prispåkrevdY-koordinaten til det første hjørnet, en pris eller beregnet verdi.
x2heltallpåkrevdX-koordinaten til det motstående hjørnet.
y2prispåkrevdY-koordinaten til det motstående hjørnet.
R, G, BheltallplattformstandardValgfritt COLOURED omriss rød, grønn og blå komponent, 0 til 255.
aheltall255Valgfri alfa (gjennomsiktighet) for konturen, 0 til 255.

Slik fungerer det

DRAWRECTANGLE kjører inne i en ProBuilder-indikator. Den tegner et rektangel der de to motstående hjørnene er (x1, y1) og (x2, y2). x-koordinatene er barindekser på den horisontale aksen og y-koordinatene er priser på den vertikale aksen, slik at rektangelet dekker et spenn i både tid og pris. Dette passer til å markere konsolideringssoner, breakout-områder eller diagrammønstre.

Den valgfrie COLOURED klausulen setter konturfarge og gjennomsiktighet, og FILLCOLOR setter den indre fyllingen. Fordi objektet tegnes på nytt på hver bar, setter skript vanligvis DEFPARAM DrawOnLastBarOnly = true.

Eksempler

Eksempel 1, Marker et stramt område (Indikator)

probuilder
// Draw a red box around a 20-bar range if it stays inside a height limit
DEFPARAM DrawOnLastBarOnly = true
period = 20
boxheight = 20
hh = Highest[period](high)
ll = Lowest[period](low)
IF hh - ll <= boxheight * pointsize THEN
    FOR i = 0 TO period DO
        IF high[i] = hh THEN
            x2 = BarIndex[i]
        ENDIF
        IF low[i] = ll THEN
            x1 = BarIndex[i]
        ENDIF
    NEXT
    IF ABS(x2 - x1) >= period THEN
        DRAWRECTANGLE(x1, ll, x2, hh) COLOURED(255, 10, 10)
    ENDIF
ENDIF
RETURN

Boksen tegnes bare når området er smalt nok og ekstremverdiene ligger langt nok fra hverandre.

Eksempel 2, Rektangel med fylt innside (Indikator)

probuilder
// Green outline, purple fill, spanning the last five bars
DEFPARAM DrawOnLastBarOnly = true
DRAWRECTANGLE(BarIndex, close, BarIndex[5], close[5]) COLOURED(0, 200, 0) FILLCOLOR(255, 0, 255)
RETURN

FILLCOLOR skyggelegger innsiden mens COLOURED setter rammen.

Eksempel 3, Fast referansesone (Indikator)

probuilder
// A grey semi-transparent zone between two price levels
DEFPARAM DrawOnLastBarOnly = true
upper = Highest[50](high)
lower = upper - 30 * pointsize
DRAWRECTANGLE(BarIndex-50, lower, BarIndex, upper) COLOURED(128, 128, 128, 120)
RETURN

Et enkelt kall markerer et fast bånd over de siste 50 barene.

Vanlige feil og fallgruver

  • Kun for indikatorer. DRAWRECTANGLE har ingen effekt i ProScreener, ProOrder eller ProBacktest. Behold den i en ProBuilder-indikator.
  • X er en barindeks. Å sende en pris inn i x1 eller x2 plasserer boksen feil horisontalt. Bruk BarIndex eller forskyvninger fra den.
  • Hjørner, ikke bredde og høyde. De fire verdiene er to motstående hjørner, ikke en posisjon og en størrelse.
  • Kostnad ved omtegning. Uten DrawOnLastBarOnly = true, tegnes rektangelet på hver bar og gjør diagrammet tregere.
  • DRAWELLIPSE, tegner en ellipse inne i samme type avgrensningsboks.
  • DRAWTRIANGLE, tegner en form med tre hjørnepunkter.
  • DRAWLINE, tegner en linje mellom to punkter.
  • COLOURED, setter kantfargen og gjennomsiktigheten.
  • FILLCOLOR, setter den innvendige fyllfargen.
  • DrawOnLastBarOnly, begrenser tegning til siste bar av ytelsesgrunner.
  • BarIndex, angir x-koordinatene.
  • Highest, finner toppen av en range å omslutte.