Word nu lid
Wiskundig/probuilder · probacktest · proorder · proscreener

SQRT

SQRT in ProBuilder geeft de vierkantswortel van een niet-negatief getal terug. De domeinbeperking, syntaxis, het verband met SQUARE en Pow, en uitgewerkte handelsvoorbeelden.

Syntaxis

probuilder
SQRT(a)

Parameters

NaamTypeBeschrijving
agetalEen niet-negatieve waarde of expressie. Negatieve inputs zijn niet gedefinieerd en veroorzaken een fout.

Formule

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

SQRT(0) geeft 0 terug, SQRT(16) retourneert 4, en SQRT(2) geeft ongeveer 1.41421. Het resultaat is altijd niet-negatief.

Hoe het werkt

SQRT geeft het niet-negatieve getal waarvan het kwadraat gelijk is aan de invoer. Het is gelijk aan POW(x, 0.5) en maakt ongedaan SQUARE voor niet-negatieve waarden. De invoer moet niet-negatief zijn; een negatief argument heeft geen reële vierkantswortel en geeft een fout, dus bescherm de invoer wanneer die onder nul kan komen, bijvoorbeeld met SQRT(MAX(x, 0)).

Bij traden komen vierkantswortels voor bij het omzetten van variantie naar standaarddeviatie, het schalen van volatiliteit met de tijd (de vierkantswortel-van-de-tijd-regel) en het normaliseren van afstanden.

Voorbeelden

Voorbeeld 1, Vierkantswortel van een waarde (Indicator)

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

SQRT(16) geeft 4, het niet-negatieve getal dat gekwadrateerd weer 16 oplevert.

Voorbeeld 2, Volatiliteit schalen met de tijd (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")

Vermenigvuldigen met SQRT(10) past de wortel-van-de-tijdregel toe om een volatiliteitscijfer per bar naar een langere horizon te schalen.

Voorbeeld 3, Afstand genormaliseerd met een vierkantswortel (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

Het verschil eerst kwadrateren garandeert een niet-negatieve invoer, en MAX(..., 0) is een dubbele veiligheidscontrole, zodat SQRT ziet nooit een negatieve waarde.

Veelvoorkomende fouten en valkuilen

  • Input moet niet-negatief zijn. SQRT van een negatieve waarde is niet gedefinieerd en geeft een foutmelding. Beveilig met SQRT(MAX(x, 0)) of kwadrateer de input eerst wanneer die onder nul kan komen.
  • Geeft alleen de niet-negatieve wortel terug. SQRT(16) is 4, niet -4. De functie geeft nooit de negatieve wortel.
  • Gelijkwaardig aan POW(x, 0.5). SQRT(x) en POW(x, 0.5) geven hetzelfde resultaat en hebben dezelfde domeingrens.
  • SQUARE, kwadrateert een waarde, het omgekeerde van SQRT voor niet-negatieve invoer.
  • Pow, verheft een grondtal tot een macht, dus POW(x, 0.5) komt overeen met SQRT.
  • ABS, absolute waarde, handig om een niet-negatieve input te forceren.
  • EXP, exponentiële functie.
  • LOG, natuurlijke logaritme.
  • STD, standaarddeviatie, gebouwd op de vierkantswortel van de variantie.
  • Volatility, volatiliteitsmaat verwant aan SQRT schaling.