Iscriviti ora
Istruzioni/probuilder

ColorBetween

ColorBetween riempie con un colore l'area tra due curve o valori nei grafici ProBuilder. Definisci il riempimento con componenti RGB oppure con un nome di colore e un alpha.

Sintassi

probuilder
ColorBetween(value1, value2, r, g, b, a)

Con un nome di colore:

probuilder
ColorBetween(value1, value2, colorName, a)

Parametri

NomeTipoPredefinitoDescrizione
value1numericoobbligatorioPrimo confine della zona riempita.
value2numericoobbligatorioSecondo confine della zona riempita.
r, g, bintero da 0 a 255obbligatorio in forma RGBComponenti rosso, verde e blu del colore di riempimento.
colorNamestringaobbligatorio in forma nominaleNome di colore predefinito come "red" o "blue", usato invece di RGB.
aintero da 0 a 100opacoTrasparenza, da 0 completamente trasparente a 100 completamente opaco.

Come funziona

ColorBetween ombreggia la banda verticale tra due valori su ogni bar. Quando i due valori sono curve di indicatori, le bande ombreggiate si uniscono da una bar all'altra in una regione riempita continua, che è il modo usuale di visualizzare lo spread tra due medie mobili, l'interno di un canale, o la distanza tra il prezzo e una linea di riferimento.

L'ordine dei due valori di confine non ha significato; la zona tra essi viene riempita in entrambi i casi. Ciò che spesso conta è chiamare la funzione in modo condizionale: racchiudere le chiamate a ColorBetween in blocchi IF permette al colore di riempimento di codificare uno stato, per esempio verde quando la media rapida è sopra quella lenta e rosso altrimenti.

Il riempimento è sovrapposto allo sfondo predefinito del grafico, ma le istruzioni di colore eseguite più tardi nello script possono sovrascriverlo nella stessa regione. La trasparenza si specifica su una scala da 0 a 100, e valori moderati intorno a 50 mantengono le candele leggibili attraverso il riempimento.

ColorBetween appartiene al set di strumenti di disegno degli indicatori. Non ha effetto in ProScreener, e il codice di strategia in ProBacktest e ProOrder non disegna riempimenti sul grafico; il contesto visivo di una strategia si aggiunge normalmente allegando al grafico un indicatore che contiene le chiamate a ColorBetween.

Esempi

Esempio 1, Ombreggiare il divario tra due medie mobili (Indicatore)

probuilder
ma1 = average[7]
ma2 = average[20]

IF ma1 > ma2 THEN
  ColorBetween(ma1, ma2, 0, 255, 0, 50) // green fill at 50 percent opacity
ELSE
  ColorBetween(ma1, ma2, "red", 50) // red fill at 50 percent opacity
ENDIF

RETURN

L'area tra una media a 7 periodi e una a 20 periodi è ombreggiata in verde quando la media rapida è in testa e in rosso quando è in ritardo, rendendo il regime corrente leggibile a prima vista.

Esempio 2, Riempire un canale di Bollinger (Indicatore)

probuilder
upper = BollingerUp[20](close)
lower = BollingerDown[20](close)

// Light blue fill across the whole band
ColorBetween(upper, lower, 100, 149, 237, 25)

RETURN upper AS "Upper band", lower AS "Lower band"

A single ColorBetween call shades the full Bollinger channel with a faint fill, while the RETURN statement still plots the band boundaries as lines.

Esempio 3, Evidenziare l'allontanamento del prezzo dalla sua media (Indicatore)

probuilder
baseline = ExponentialAverage[50](close)
gap = ABS(close - baseline)
threshold = AverageTrueRange[14](close) * 2

// Shade only when price is stretched more than two ATRs from the baseline
IF gap > threshold THEN
  ColorBetween(close, baseline, 255, 165, 0, 60) // orange warning fill
ENDIF

RETURN baseline AS "EMA 50"

Il riempimento appare solo sulle bar in cui il prezzo è distante più di due ATR dalla sua media esponenziale, quindi l'ombreggiatura stessa funge da segnale di sovraestensione.

Errori e insidie comuni

  • L'alpha va da 0 a 100. La trasparenza di ColorBetween usa una scala da 0 a 100, a differenza dell'alpha di COLOURED che va da 0 a 255. Copiare un valore di opacità di 255 da una funzione all'altra produce un argomento fuori intervallo.
  • Rendering solo negli indicatori. La funzione non disegna nulla nel codice ProScreener, ProBacktest o ProOrder. Allega invece al grafico un indicatore con la logica ColorBetween.
  • Vincono i colori successivi. Le istruzioni di colore successive nello stesso script possono dipingere sopra la zona riempita. Ordina deliberatamente le chiamate di disegno quando combini riempimenti, sfondi e curve colorate.
  • Riempimenti senza curve visibili. ColorBetween shades between values whether or not they are returned. Unless the boundary series are also plotted via RETURN, the fill appears to float, which is sometimes intended and sometimes a forgotten RETURN.
  • COLOURED, colora una curva restituita, in modo statico o per condizione.
  • BACKGROUNDCOLOR, colora l'intero sfondo del grafico bar per bar.
  • FILLCOLOR, controllo del colore di riempimento per le forme disegnate.
  • DRAWRECTANGLE, disegna un rettangolo tra coordinate esplicite.
  • Average, media mobile, un tipico confine di riempimento.
  • BollingerUp, banda di Bollinger superiore, utilizzabile come confine di zona.
  • BollingerDown, banda di Bollinger inferiore, utilizzabile come confine di zona.
  • RETURN, traccia le curve che un riempimento solitamente accompagna.