Aggregators and Operators
When building conditions inside an Indicator node, you have two tools: aggregators transform a data feed into a derived value, and operators define how two values are compared. Together they let you express things like EMA(12) crosses above EMA(24) or RSI(14) is less than 30.
If you are new to building strategy conditions, start with the Set Entry Conditions guide for a step-by-step walkthrough. This page is a quick-reference for all available indicators and comparison operators once you are comfortable with the basics.
Aggregators
Aggregators take a raw feed and compute a value over a window of time or candles. Set the period or window when you add the aggregator to your condition.
| Aggregator | What it computes |
|---|---|
| EMA | Exponential Moving Average. Weights recent prices more heavily than older ones. Responds faster to price changes than SMA. |
| SMA | Simple Moving Average. The arithmetic mean of prices over the period. Smoother but slower to react. |
| RSI | Relative Strength Index. Measures momentum on a 0-100 scale. Values above 70 are conventionally overbought; below 30 is oversold. |
| % Change | Percentage price change over a defined time window. Useful for detecting breakouts or relative moves. |
| Max | The highest value the feed reached over the period. |
| Min | The lowest value the feed reached over the period. |
| StdDev | Standard deviation of the feed over the period. Measures how much prices are dispersing from the average. |
| Variance | The square of standard deviation. Less commonly used directly, but available for custom formula construction. |
| Z-Score | How many standard deviations the current value sits above or below the period mean. A Z-Score of 2 means the current value is 2 standard deviations above average. |
| Bollinger Bands | Volatility-based bands placed above and below a moving average. Useful for identifying overbought/oversold conditions and potential mean reversion setups. |
Operators
Operators define the relationship between two values. Each condition uses one operator.
Comparison operators
Compare two values. The condition is true whenever the relationship holds.
| Operator | Fires when |
|---|---|
| Greater than ( > ) | The left value is above the right value |
| Less than ( < ) | The left value is below the right value |
| Greater than or equal to ( ≥ ) | The left value is at or above the right value |
| Less than or equal to ( ≤ ) | The left value is at or below the right value |
Crossovers
There is no standalone “crosses above” or “crosses below” operator. Crossover conditions are built using the pre-built templates in the Indicator node (EMA Crossover, SMA Crossover). Under the hood, these use a standard > comparison between two moving average values. If you want to build a custom crossover, use two aggregators and a > or < comparison between them.
Combining conditions
When your Indicator has more than one condition, you choose how they combine.
| Combinator | Behavior |
|---|---|
| AND | All conditions must be true at the same time |
| OR | Any one condition being true is enough |
| NOT | Inverts a condition: fires when the condition is false |
You can nest groups. For example: (Condition A AND Condition B) OR Condition C.
Examples
EMA crossover
EMA(12) crosses above EMA(24) — the short-term average rises through the long-term average, a common bullish signal.
RSI oversold with price filter
RSI(14) < 30 AND Price > SMA(200) — momentum is oversold but the trend is still up.
Volatility expansion
StdDev(20) > 500 — recent price dispersion has expanded beyond a threshold, signaling a volatile regime.
Z-Score mean reversion
Z-Score(20) < -2 — the price is more than 2 standard deviations below its 20-period mean, a potential reversion setup.
Related
- Data Feeds: the inputs aggregators operate on
- Set Entry Conditions: how to build conditions in the Indicator node