DRAWCANDLE
DRAWCANDLE i ProBuilder ritar en egen OHLC-candlestick från open-, high-, low- och close-värden, med valfri COLOURED-kropp och BORDERCOLOR. Syntax och exempel.
Syntax
DRAWCANDLE(open, high, low, close) COLOURED(R, G, B) BORDERCOLOR(R, G, B)Parametrar
| Namn | Typ | Standard | Beskrivning |
|---|---|---|---|
open | pris | obligatorisk | Öppningsvärde för candlens kropp. |
high | pris | obligatorisk | Högsta värdet, toppen av den övre veken. |
low | pris | obligatorisk | Lägsta värdet, botten av den nedre veken. |
close | pris | obligatorisk | Stängningsvärde för candlens kropp. |
R, G, B (COLOURED) | heltal | plattformens standard | Färgkomponenter för kroppens fyllning, 0 till 255. |
R, G, B (BORDERCOLOR) | heltal | plattformens standard | Färgkomponenter för kantlinjen, 0 till 255. |
Så fungerar det
DRAWCANDLE körs inuti en ProBuilder-indikator. Den ritar ett ljus på den aktuella baren utifrån de fyra värden som skickas in, vilka kan vara konstanter, variabler eller uttryck i stället för det råa priset. Det gör den till ett sätt att rita upp en härledd ljusserie, till exempel ett utjämnat ljus eller ett ljus av Heikin-Ashi-typ, ovanpå eller vid sidan av priset. Ljuset ritas en gång per bar den anropas på, så inget bar-indexargument behövs.
COLOURED ställer in kroppens fyllning och BORDERCOLOR sätter konturen. När båda utelämnas gäller plattformens standardfärger.
Exempel
Exempel 1, Utjämnade Heikin-Ashi-candles (Indikator)
// Build averaged Heikin-Ashi candles and colour by direction
period = 20
IF BarIndex > period THEN
avgO = Average[period](open)
avgH = Average[period](high)
avgL = Average[period](low)
avgC = Average[period](close)
HAClose = (avgO + avgH + avgL + avgC) / 4
HAOpen = (HAOpen[1] + HAClose[1]) / 2
HAHigh = MAX(avgH, MAX(HAOpen, HAClose))
HALow = MIN(avgL, MIN(HAOpen, HAClose))
IF avgO <= avgC THEN
DRAWCANDLE(HAOpen, HAHigh, HALow, HAClose) COLOURED(0, 255, 0)
ELSE
DRAWCANDLE(HAOpen, HAHigh, HALow, HAClose) COLOURED(255, 0, 0)
ENDIF
ENDIF
RETURNCandlen är grön när den genomsnittliga öppningen ligger på eller under den genomsnittliga stängningen, och röd annars.
Exempel 2, En rå candle omfärgad (Indikator)
// Redraw the current candle in a fixed colour
DRAWCANDLE(open, high, low, close) COLOURED(0, 120, 255) BORDERCOLOR(0, 0, 0)
RETURNAtt skicka in de råa OHLC-värdena återskapar baren med en vald fyllning och kantlinje.
Exempel 3, Candle från en förskjuten serie (Indikator)
// Draw a candle offset up by a fixed amount for comparison
off = 10 * pointsize
DRAWCANDLE(open + off, high + off, low + off, close + off) COLOURED(200, 200, 0)
RETURNAtt förskjuta varje värde med samma offset placerar en jämförelsecandle över priset.
Vanliga fel och fallgropar
- Endast indikator.
DRAWCANDLEhar ingen effekt i ProScreener, ProOrder eller ProBacktest. Behåll den i en ProBuilder-indikator. - Argumentordning. Ordningen är open, high, low, close. Att byta plats på high och low eller open och close ritar en felaktig candle.
- Inget barindexargument. Candlen ritas på den bar där anropet körs, så den placeras utifrån var i loopen den exekveras, inte utifrån en x-koordinat.
- Rekursiv open kräver ett skydd. Heikin-Ashi-liknande öppningar refererar till
HAOpen[1], så villkora blocket med ettBarIndextest för att undvika ett odefinierat första värde.
Relaterade instruktioner
DRAWBARCHART, ritar en egen OHLC-bar istället för en candle.Open, källan för öppningspriset.High, källan för högsta priset.Low, källan för lägsta priset.Close, källan för stängningspriset.COLOURED, sätter kroppens färg.DrawOnLastBarOnly, begränsar ritningen till den sista baren.Average, jämnar ut OHLC-värdena före ritningen.