# Personal Criteria Formula Syntax Table

 Multiply (Mathematical Operator) `v * w` `v`=Numeric, `w`=Numeric Divide or Ratio (Mathematical Operator) `v / w` Add (Mathematical Operator) `v + w` Add (Mathematical Operator) `v ++ w` Add (Mathematical Operator) `v -- w` Subtract or Difference (Mathematical Operator) `v - w` Subtract or Difference (Mathematical Operator) `v +- w` Subtract or Difference (Mathematical Operator) `v -+ w` Integer Divide (Mathematical Operator) `v \ w` Power (Mathematical Operator) `v ^ w` Greater Than (Boolean relational operator) `v > w` Greater Than or Equal To (Boolean relational operator) `v >= w` Less Than (Boolean relational operator) `v < w` Less Than or Equal To (Boolean relational operator) `v <= w` Equal To (Boolean relational operator) `v = w` Not Equal To (Boolean relational operator) `v <> w` Parentheses will force an operation to perform earlier in the order. `()` returns -1 if b is true and 0 if b is false `(b)` `b`=Boolean returns 1 if b is true and 0 if b is false `ABS(b)` `b`=Boolean Absolute Value `ABS(w)` `w`=Numeric Average Directional Index `ADX(d, s, z)` `d`=DI_Period, `s`=Smooth, `z`=Offset Average Directional Index `ADXd.s.z` `d`=DI_Period, `s`=Smooth, `z`=Offset AND (Boolean Logical Operator) `a AND b` `a`=Boolean,`b`=Boolean Inverse cosine `ARCCOS(w)` `w`=Numeric Inverse hyperbolic cosine `ARCCOSH(w)` `w`=Numeric Inverse cotangent `ARCCOT(w)` `w`=Numeric Inverse hyperbolic cotangent `ARCCOTH(w)` `w`=Numeric Inverse cosecant `ARCCSC(w)` `w`=Numeric Inverse hyperbolic cosecant `ARCCSCH(w)` `w`=Numeric Inverse secant `ARCSEC(w)` `w`=Numeric Inverse hyperbolic secant `ARCSECH(w)` `w`=Numeric Inverse sine `ARCSIN(w)` `w`=Numeric Inverse hyperbolic sine `ARCSINH(w)` `w`=Numeric Inverse tangent `ARCTAN(w)` `w`=Numeric Inverse hyperbolic tangent `ARCTANH(w)` `w`=Numeric Aroon Down portion of Aroon Indicator `AROONDOWN(x, z)` `x`=Period, `z`=Offset Aroon Down portion of Aroon Indicator `AROONDOWNx.z` `x`=Period, `z`=Offset Aroon Up portion of Aroon Indicator `AROONUP(x, z)` `x`=Period, `z`=Offset Aroon Up portion of Aroon Indicator `AROONUPx.z` `x`=Period, `z`=Offset Inverse Tangent `ATN(w)` `w`=Numeric Average True Range (uses simple moving average for smoothing) `ATR(x, z)` `x`=Period, `z`=Offset Average True Range (uses simple moving average for smoothing) `ATRx.z` `x`=Period, `z`=Offset Simple Moving Average `AVG(w, x)` `w`=Numeric, `x`=Period Simple Moving Average `AVGwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Bollinger Band (Bottom) `BBBOT(d, x, z)` `d`=StdDev, `x`=Period, `z`=Offset Bollinger Band (Bottom) `BBBOTd.x.z` `d`=StdDev (integer only), `x`=Period, `z`=Offset Bollinger Band (Top) `BBTOP(d, x, z)` `d`=StdDev, `x`=Period, `z`=Offset Bollinger Band (Top) `BBTOPd.x.z` `d`=StdDev (integer only), `x`=Period, `z`=Offset Balance of Power (Green>30,Red<-30,Yellow 30 to –30) `BOP(y, z)` `y`=SMA, `z`=Offset Balance of Power (Green>30,Red<-30,Yellow 30 to –30) `BOPy.z` `y`=SMA, `z`=Offset Close or Current price of the specified bar `C(z)` `z`=Offset Close or Current price of the specified bar `Cz` `z`=Offset Commodity Channel Index `CCI(x, z)` `x`=Period, `z`=Offset Commodity Channel Index `CCIx.z` `x`=Period, `z`=Offset Log Base 10 `CLG(w)` `w`=Numeric Cosine `COS(w)` `w`=Numeric Hyperbolic Cotangent `COTH(w)` `w`=Numeric Will return the number of times Boolean formula was true in the period `CountTrue(b, x)` `b`=Boolean, `x`=Period Cosecant `CSC(w)` `w`=Numeric Hyperbolic Cosecant `CSCH(w)` `w`=Numeric Directional Movement (DI- component) `DIMINUS(x, z)` `x`=Period, `z`=Offset Directional Movement (DI- component) `DIMINUSx.z` `x`=Period, `z`=Offset Directional Movement (DI+ component) `DIPLUS(x, z)` `x`=Period, `z`=Offset Directional Movement (DI+ component) `DIPLUSx.z` `x`=Period, `z`=Offset Natural Exponent `EXP(w)` `w`=Numeric Front Weighted Moving Average `FAVG(w, x)` `w`=Numeric, `x`=Period Front Weighted Moving Average `FAVGwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Allows an unlimited number of arguments separated by commas and returns the argument with the highest value. `GREATEST(v, w)` `v`=Numeric, `w`=Numeric... High price of the specified bar `H(z)` `z`=Offset High price of the specified bar `Hz` `z`=Offset Hull Moving Average `HAVG(w, x)` `w`=Numeric, `x`=Period Hull Moving Average `HAVGwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Returns t if b is true and f if b is false `IIF(b, t, f)` `b`=Boolean, `t`=Numeric, `f`=Numeric Low price of the specified bar `L(z)` `z`=Offset Low price of the specified bar `Lz` `z`=Offset Allows an unlimited number of arguments separated by commas and returns the argument with the lowest value. `LEAST(v, w)` `v`=Numeric, `w`=Numeric... Natural Log `LOG(w)` `w`=Numeric Exponential Moving Average Convergence Divergence Oscillator `MACD(s, l, z)` `s`=Short, `l`=Long, `z`=Offset Exponential Moving Average Convergence Divergence Oscillator `MACDs.l.z` `s`=Short, `l`=Long, `z`=Offset Maximum - Returns the highest value of w over the most recent x bars. `MAX(w, x)` `w`=Numeric, `x`=Period Maximum - Returns the highest value of w over the most recent x bars. `MAXwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Minimum - Returns the lowest value of w over the most recent x bars. `MIN(w, x)` `w`=Numeric, `x`=Period Minimum - Returns the lowest value of w over the most recent x bars. `MINwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Modulo (Mathematical Operator) `v MOD w` `v`=Numeric, `w`=Numeric MoneyStream (MS) and Cumulative MoneyStream (CMS) are the same `MS(y, z)` `y`=SMA, `z`=Offset MoneyStream (MS) and Cumulative MoneyStream (CMS) are the same `MSy.z` `y`=SMA, `z`=Offset NAND (Boolean Logical Operator) Not And `a NAND b` `a`=Boolean,`b`=Boolean NOR (Boolean Logical Operator) Not Or `a NOR b` NOT() Function (Boolean Logical Operator) (turns true to false and turns false to true) `NOT(b)` `b`=Boolean Open price of specified bar `O(z)` `z`=Offset Open price of specified bar `Oz` `z`=Offset On Balance Volume `OBV(y, z)` `y`=SMA, `z`=Offset On Balance Volume `OBVy.z` `y`=SMA, `z`=Offset OR (Boolean Logical Operator) `a OR b` `a`=Boolean,`b`=Boolean Relative Strength Index (RSI) - not Wilder's Smoothed `RSI(x, y, z)` `x`=Period, `y`=SMA, `z`=Offset Relative Strength Index (RSI) - not Wilder's Smoothed `RSIx.y.z` `x`=Period, `y`=SMA, `z`=Offset Secant `SEC(w)` `w`=Numeric Hyperbolic Secant `SECH(w)` `w`=Numeric Sign (-1, 0 or 1) - Returns -1 if w is negative, 0 if w is zero and 1 if w is positive. `SGN(w)` `w`=Numeric Sine `SIN(w)` `w`=Numeric returns -1 if Boolean Formula was not true in period, or bars since it was true, 0 being the current bar, and period-1 the max it will return `SinceTrue(b, x)` `b`=Boolean, `x`=Period Hyperbolic Sine `SINH(w)` `w`=Numeric Square Root `SQR(w)` `w`=Numeric Standard Deviation `STDDEV(x, z)` `x`=Period, `z`=Offset Standard Deviation `STDDEVx.z` `x`=Period, `z`=Offset Simple Stochastic `STOC(x, y, z)` `x`=Period, `y`=SMA, `z`=Offset Simple Stochastic `STOCx.y.z` `x`=Period, `y`=SMA, `z`=Offset Sum - Adds together the value of w over the most recent x bars. `SUM(w, x)` `w`=Numeric, `x`=Period Tangent `TAN(w)` `w`=Numeric Hyperbolic Tangent `TANH(w)` `w`=Numeric Will return a value between 0 and period that is how many times the Boolean formula was true in a row `TrueInRow(b, x)` `b`=Boolean, `x`=Period Time Segmented Volume `TSV(y, z)` `y`=SMA, `z`=Offset Time Segmented Volume `TSVy.z` `y`=SMA, `z`=Offset Volume for the specified bar `V(z)` `z`=Offset Volume for the specified bar `Vz` `z`=Offset Wilder's Relative Strength Index (RSI) - Wilder's Smoothed `WRSI(x, z)` `x`=Period, `z`=Offset Wilder's Relative Strength Index (RSI) - Wilder's Smoothed `WRSIx.z` `x`=Period, `z`=Offset Worden Stochastic `WSTOC(x, y, z)` `x`=Period, `y`=SMA, `z`=Offset Worden Stochastic `WSTOCx.y.z` `x`=Period, `y`=SMA, `z`=Offset Exponential Moving Average `XAVG(w, x)` `w`=Numeric, `x`=Period Exponential Moving Average `XAVGwx.z` `w`=`O`, `H`, `L`, `C`, or `V`, `x`=Period, `z`=Offset Returns true when v is greater than w at x bars ago and v is less than or equal to w now. x defaults to 1 if not supplied. `XDOWN(v, w, x)` `v`=Numeric, `w`=Numeric, `x`=Period XNOR (Boolean Logical Operator) Not Exclusive Or `a XNOR b` `a`=Boolean,`b`=Boolean XOR (Boolean Logical Operator) Exclusive Or `a XOR b` Returns true when v is less than w at x bars ago and v is greater than or equal to w now. x defaults to 1 if not supplied. `XUP(v, w, x)` `v`=Numeric, `w`=Numeric, `x`=Period