The Formula tab is where you select the numeric and logical operations that are allowed to participate in your model development. In general, it is not wise to simply select all possible operations, because that will hamper the ability of the optimizer to find the correct ones for your data. If possible, you should select only the operations you feel are either possible or appropriate. Click here for tips on how to select the appropriate operations.
Here is a list of the possible operations by category, along with a short description.
Operation
|
Description
|
Special Comments
|
Arithmetic
|
|
|
x+y
|
x plus y
|
|
x-y
|
x minus y
|
|
x*y
|
x times y
|
|
x/y
|
x divided by y
|
if y=0 result is 0
|
Algebra
|
|
|
sqrt(abs(x))
|
square root of absolute value of x
|
|
-x
|
negative of x
|
|
1/x
|
inverse of x = 1 divided by x
|
if x=0, result is 0
|
x^2
|
x squared = x*x
|
|
x^3
|
x cubed = x*x*x
|
|
Abs(x)
|
absolute value of x
|
|
Trigonometry and Transcendental
|
|
|
x^y
|
x raised to the power y
|
result is 0 if x<=0, y>=20, or y<=-20
|
exp(x)
|
base of natural logs e raised to the power x
|
result is exp(50) if x>50
|
10^x
|
10 raised to the power x
|
result is 0 if x>=20
|
log(x)
|
logarithm of x
|
result is 0 if x<=0
|
ln(x)
|
natural logarithm of x
|
result is 0 if x<=0
|
sin(x)
|
sine of x
|
x is in radians
|
cos(x)
|
cosine of x
|
x is in radians
|
Neural
|
|
|
neuron2(a,b,c,d)
|
tanh(a*b + c*d)
|
tanh is hyperbolic tangent
|
neuron3(a,b,c,d,e,f)
|
tanh(a*b + c*d + e*f)
|
tanh is hyperbolic tangent
|
neuron4(a,b,c,d,e,f,g,h)
|
tanh(a*b + c*d + e*f + g*h)
|
tanh is hyperbolic tangent
|
tanh(x)
|
hyperbolic tangent of x
|
activation function used in neural nets
|
sigmoid(x)
|
1/(1+exp(-x))
|
activation function used in neural nets
|
Boolean
|
|
|
x and y
|
true(1) if both x and y are true, else false(0)
|
0=false, nonzero=true
|
x or y
|
true(1) if either x or y is true, else false(0)
|
0=false, nonzero=true
|
not x
|
true(1) if x is false, false(0) if x is true
|
0=false, nonzero=true
|
if x then y else z
|
result is y if x is true, otherwise result is z
|
0=false, nonzero=true
|
Relational
|
|
|
x<y
|
true(1) if x is less than y, else false(0)
|
|
x>y
|
true(1) if x is greater than y, else false(0)
|
|
x>=y
|
true(1) if x greater than or = y, else false(0)
|
|
x<=y
|
true(1) if x less than or = y, else false(0)
|
|
Polynomials
|
|
|
a^2 + b^2
|
a squared plus b squared
|
|
a^2 – b^2
|
a squared minus b squared
|
|
a*b + b*c + d*e
|
the sum of three products
|
|
Statistical
|
|
|
min(x,y)
|
the minimum of x and y
|
|
max(x,y)
|
the maximum of x and y
|
|
avg(x,y)
|
the average of x and y
|
|
Technical Indicators
|
|
|
Momentum
|
current value - a previous value
|
|
Rate of change
|
current value / a previous value
|
|
Rate of change %
|
rate of change * 100
|
|
% change
|
100*( current value - previous value) / previous value
|
|
Velocity
|
(current value – value N periods ago) / N
|
|
Acceleration
|
(current velocity – velocity N periods ago) / N
|
|
Min value
|
minimum value over N periods
|
|
Max value
|
maximum value over N periods
|
|
Spread
|
value1 – value2
|
|
Spread %
|
100*(value1 – value2)/value1
|
|
Relative strength
|
value1 / value2
|
|
Efficiency
|
click here for definition
|
|
Simple moving avg
|
sum of last N values / N
|
|
Exponential moving avg
|
click here for definition
|
|
Slope
|
click here for definition
|
|
Lag
|
a previous value
|
|
Click here for more details on how to create technical indicators such as momentum, velocity, slope, etc, in ChaosHunter.
|