Iscriviti ora
Matematica/probuilder · probacktest · proorder · proscreener

SQRT

SQRT in ProBuilder restituisce la radice quadrata di un numero non negativo. Il limite di dominio, la sintassi, il collegamento con SQUARE e Pow ed esempi di trading svolti.

Sintassi

probuilder
SQRT(a)

Parametri

NomeTipoDescrizione
anumeroUn valore o un'espressione non negativi. Gli input negativi non sono definiti e generano un errore.

Formula

codice
SQRT(x) = x^(1/2),   defined for x >= 0

SQRT(0) restituisce 0, SQRT(16) restituisce 4, e SQRT(2) restituisce circa 1.41421. Il risultato è sempre non negativo.

Come funziona

SQRT restituisce il numero non negativo il cui quadrato è pari all'input. È uguale a POW(x, 0.5) e annulla SQUARE per valori non negativi. L'input deve essere non negativo; un argomento negativo non ha radice quadrata reale e genera un errore, quindi proteggi l'input quando può scendere sotto zero, per esempio con SQRT(MAX(x, 0)).

Nel trading, le radici quadrate compaiono quando si converte la varianza in deviazione standard, si scala la volatilità per il tempo (la regola della radice quadrata del tempo) o si normalizzano le distanze.

Esempi

Esempio 1, Radice quadrata di un valore (Indicatore)

probuilder
// Square root of 16
variable1 = 16
root = SQRT(variable1)
RETURN root AS "SQRT(16)"

SQRT(16) restituisce 4, il numero non negativo il cui quadrato è 16.

Esempio 2, Scalare la volatilità per il tempo (ProScreener)

probuilder
// Project one-bar volatility over a 10-bar horizon
barVol = STD[20](close)
projected = barVol * SQRT(10)
SCREENER[projected > 0](projected AS "10-bar vol")

Moltiplicando per SQRT(10) applica la regola della radice del tempo per scalare un valore di volatilità per bar su un orizzonte più lungo.

Esempio 3, Distanza normalizzata da una radice quadrata (ProOrder)

probuilder
// Guard against negative input before taking the root
raw = close - Average[50](close)
dist = SQRT(MAX(raw * raw, 0))
IF dist < close * 0.02 AND NOT LongOnMarket AND close CROSSES OVER Average[20](close) THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

Elevare prima al quadrato la differenza garantisce un input non negativo, e MAX(..., 0) è un controllo difensivo ridondante, così SQRT non vede mai un valore negativo.

Errori e insidie comuni

  • L'input deve essere non negativo. SQRT di un valore negativo non è definito e genera un errore. Proteggi con SQRT(MAX(x, 0)) oppure elevare al quadrato l'input quando può scendere sotto zero.
  • Restituisce solo la radice non negativa. SQRT(16) è 4, non -4. La funzione non restituisce mai la radice negativa.
  • Equivalente a POW(x, 0.5). SQRT(x) e POW(x, 0.5) danno lo stesso risultato e condividono lo stesso limite di dominio.
  • SQUARE, eleva un valore al quadrato, l'inverso di SQRT per input non negativi.
  • Pow, eleva una base a una potenza, quindi POW(x, 0.5) corrisponde a SQRT.
  • ABS, valore assoluto, utile per forzare un input non negativo.
  • EXP, funzione esponenziale.
  • LOG, logaritmo naturale.
  • STD, deviazione standard, costruita sulla radice quadrata della varianza.
  • Volatility, misura di volatilità collegata a SQRT scalatura.