Indicators
Indicators in FORJ are workspace-level assets built from candle data. Strategies do not create private copies of indicators. Instead, they reference workspace indicator configs that have been assigned to candle streams.
Workspace indicator configs
An indicator config defines:
- the indicator type
- its parameters
- its output shape
- the candle stream or streams it should run on
This model lets multiple strategies share the same indicator definition.
Creating an indicator config
When you create an indicator config, you choose an indicator type and then fill in that indicator's parameter form.
Examples:
EMAuseslength,offset, andpriceSourceRSIuseslength,offset,priceSource, and optionalsmoothingKELTNERuseslength,bandsStyle,smoothing,deviationMultiplier, and related settings
After saving the config, assign it to the candle stream where it should run.
Built-in indicators
FORJ currently supports:
EMASMARMARSIBBKELTNERHIGH_LOWPIVOT
For exact defaults and outputs, see Supported Indicators.
Indicator outputs matter
Not every indicator returns a single value output.
Examples:
EMA,SMA,RMA,RSI, andHIGH_LOWexposevalueBBexposeslower,middle, andupperKELTNERexposesupper,middle, andlowerPIVOTexposespivotandslope
When you reference an indicator in a condition, make sure you choose the correct output.
Using indicators in rules
Indicator values can be used in:
- guard conditions
- conditional action steps
When choosing an indicator operand, you typically select:
- the stream context
- the indicator config
- the output name
That lets you build rules such as:
triggering stream indicator RSI value < 30triggering stream indicator EMA value > triggering stream indicator SMA valuetriggering stream indicator BB upper > event close
Indicator events
Indicator events are reusable derived signals built on top of indicators or event values. They are useful when you want a boolean signal instead of a raw numeric output.
The two built-in indicator-event kinds are:
- Cross
- Trend
Cross
A Cross event detects whether one source crossed another.
Typical uses:
- fast EMA crossing above slow EMA
- price crossing above a Bollinger middle band
Trend
A Trend event detects whether a source is moving up or down.
Typical uses:
- RSI moving down
- a moving average sloping upward
Using indicator events in conditions
Indicator events appear as a boolean-style operand source in the condition builder. That makes rules like this straightforward:
indicator event EMA_Fast_Crosses_Slow == true
Warm-up and lookback
Indicators need enough candle history before their outputs are reliable.
Examples:
- a longer SMA needs more bars before it stabilizes
BB(20)needs enough history for the full volatility windowPIVOTrequires the full left/right confirmation window
If an indicator-based rule appears inactive early in a stream, check whether the stream has enough history yet.
Editing and removing indicators
Because indicators are shared workspace assets, changing one can affect multiple strategies. Review the impact before editing or deleting a widely used indicator config.