Bli medlem idag
Matematik/probuilder · probacktest · proorder · proscreener

EXP

EXP i ProBuilder returnerar e upphöjt till indatat, den naturliga exponentialfunktionen. Syntax, den inversa kopplingen till LOG och genomgångna kodexempel.

Syntax

probuilder
EXP(a)

Parametrar

NamnTypBeskrivning
atalExponenten som konstanten e upphöjs till. Alla reella numeriska uttryck är giltiga.

Formel

kod
EXP(x) = e^x,   where e is approximately 2.71828

Utdatat är alltid positivt. Positiva exponenter växer värdet över 1, en exponent på noll returnerar 1, och negativa exponenter ger ett värde mellan 0 och 1.

Så fungerar det

EXP modellerar kontinuerlig exponentiell tillväxt eller avtagande. Den tar emot vilket reellt indata som helst och returnerar alltid ett positivt resultat, så den ger aldrig noll eller ett negativt tal. Stora positiva exponenter växer mycket snabbt, vilket är värt att hålla i minnet när argumentet härleds ur priset.

EXP och LOG är inverser: EXP(LOG(x)) returnerar x för alla positiva x, och LOG(EXP(x)) returnerar x för alla x. Det här paret är grunden för att arbeta i logaritmiskt rum, till exempel sammansatt avkastning.

Exempel

Exempel 1, Grundläggande exponentialvärden (Indikator)

probuilder
// e raised to a few exponents
variable1 = EXP(1)   // approximately 2.71828
variable2 = EXP(0)   // exactly 1
variable3 = EXP(-1)  // approximately 0.36788
RETURN variable1 AS "e^1", variable2 AS "e^0", variable3 AS "e^-1"

De tre anropen visar tillväxten för en positiv exponent, det fasta värdet vid noll och avtagandet för en negativ exponent.

Exempel 2, Sammansätt en logaritmisk avkastning (ProScreener)

probuilder
// Turn a summed log return back into a price ratio
logRet = LOG(close / close[20])
ratio = EXP(logRet)
SCREENER[ratio > 1.05](ratio AS "20-bar ratio")

LOG mäter avkastningen i logaritmiskt rum och EXP omvandlar det tillbaka till en enkel kvot, vilket visar rundturen mellan de två funktionerna.

Exempel 3, Exponentiellt avtagande vikt (ProOrder)

probuilder
// Weight recency with an exponential decay factor
barsSince = BarIndex - BarIndex[5]
weight = EXP(-0.2 * barsSince)
IF NOT LongOnMarket AND close CROSSES OVER Average[20](close) AND weight > 0.3 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

Den negativa exponenten ger en vikt som avtar jämnt mot noll när barerna passerar, ett vanligt sätt att betona senare händelser.

Vanliga fel och fallgropar

  • Utdatat är alltid positivt. EXP returnerar aldrig noll eller ett negativt värde, så att testa dess resultat mot ett negativt tröskelvärde är alltid falskt.
  • Växer mycket snabbt. Ett stort positivt argument kan ge ett enormt värde. Håll exponenten begränsad när den kommer från råa prisskillnader.
  • Invers till LOG, inte det reciproka värdet. EXP upphäver den naturliga logaritmen. Det är inte 1 / LOG. För att höja en valfri bas till en potens, använd Pow.
  • LOG, naturlig logaritm, inversen av EXP.
  • Pow, upphöjer valfri bas till en exponent, till skillnad från den fasta basen e i EXP.
  • SQRT, kvadratrot.
  • SQUARE, kvadrerar ett värde.
  • ABS, absolutvärde.
  • ExponentialAverage, exponentiellt glidande medelvärde byggt på liknande idéer om avtagande.
  • ROC, förändringstakt, ofta analyserad i logaritmiskt rum med EXP och LOG.