
The Start Bots Signal category describes signals and indicators that can start a trading bot. One of the technical indicators is RVGI (Relative Vigor Index).
When creating or editing any bot, there is a Start signal builder block at the bottom of settings. You can choose individual indicators, ready-made presets, and their combinations. Conditions are grouped: AND inside a group, OR between groups. The same indicator can be configured in different ways - for Long and Short, for breakouts and bounces, for level comparisons and for crosses.
What is RVGI
RVGI (Relative Vigor Index) is an oscillator developed by John Ehlers. It measures how much candle closes lean toward the top of the High–Low range relative to opens. The idea: in uptrends bulls more often “push” price toward the candle high; in downtrends bears pull toward the low.
RVGI oscillates around zero: positive values mean bullish vigor dominates over the selected period, negative values mean bearish vigor. The Signal line is a smoothed RVGI (typically SMA with the same length). RVGI crossing above Signal is a classic bullish signal; below Signal is bearish. In the ELIXOAI start signal builder, RVGI is used as an automatic bot start condition.
Besides numeric lines rvgi and signal, TAAPI returns a text output trend - bullish or bearish. This is a handy direction filter without manual line comparison. RVGI works well in trending phases and is often combined with EMA or MACD - in ranges, RVGI/Signal crosses produce many false starts.
RVGI vs MACD and RSI
All three tools relate to momentum and direction, but measure different aspects:
- MACD is built on the difference between two closing-price EMAs (12 and 26) and shows convergence/divergence of trend averages. RVGI looks at (Close−Open) vs (High−Low) - vigor inside each candle, not price EMAs.
- RSI normalizes gains and losses into a 0–100 scale for overbought/oversold. RVGI has no fixed 30/70 zones - the zero line and position vs Signal are the main references.
- RVGI is similar to MACD in “line + Signal” logic, but the formula uses candle body and range. An RVGI/Signal cross is like a MACD golden cross in spirit, but reacts to intrabar structure rather than moving averages.
How RVGI works
RVGI calculation for each candle starts with close vigor relative to range:
Vigor = (Close − Open) / (High − Low), then RVGI = SMA(Vigor, length), Signal = SMA(RVGI, length). When High = Low (doji), the denominator approaches zero - TAAPI handles such cases on its side.
- RVGI > 0 and above Signal - bullish vigor dominates: closes systematically above opens within the candle range.
- RVGI < 0 and below Signal - bearish vigor: closes below opens, seller pressure inside the candle.
- RVGI near 0 and crossing Signal - neutral or transitional zone; moment when trend shifts from bearish to bullish or vice versa.
In the builder you set a comparison condition: “RVGI crosses above Signal,” “trend equals bullish,” “RVGI greater than 0,” and so on. The system fetches live values from the exchange via TAAPI and checks the condition on your timeframe - at candle close or every minute.
Three RVGI outputs
The rvgi indicator exposes three outputs - two numeric and one text:
- rvgi - the main Relative Vigor Index line. Used in rvgi_signal_cross for crosses with Signal, and for gt/lt/gte/lte comparisons with a numeric level or the signal output.
- signal - the signal line (SMA of RVGI). Cross target in rvgi_signal_cross: RVGI cross up signal. Set as an output-type target for cross_up/cross_down.
- trend - text output: bullish or bearish. Used in rvgi_trend with eq, neq, changed_to, changed_from operators. Handy as a direction filter without manual line comparison.
Preset rvgi_signal_cross uses numeric rvgi and signal; preset rvgi_trend uses text trend. Both share one length parameter (smoothing period).
Length parameter
- Range: 2 to 300.
- Default: 10 - TAAPI standard; balanced for 15m–1h.
- Short length (4–6): RVGI reacts faster, more Signal crosses, more noise. Useful on 5m for scalping.
- Long length (14–20): smoother RVGI, less frequent trend changes and Signal crosses. Better for 1h–4h swing trading.
RVGI(10) on 5m and RVGI(10) on 4h are different indicators. When changing timeframe, revisit length and signal type (cross vs trend filter).
Ready-made presets in the builder
The builder offers two RVGI presets with default settings. Each can be fully customized: different operator, output, length, or timeframe.
RVGI cross_up Signal - bullish impulse (rvgi_signal_cross)
Default condition: output rvgi crosses signal from below to above (cross up) on the selected timeframe (15m interval, length 10, check at bar close).
Long signal on vigor shift: bullish pressure inside candles strengthened - RVGI overtook Signal. Unlike “RVGI > Signal” (gt), the cross captures the transition moment. For Short, set operator “crosses below” - RVGI cross down signal.
Operators for rvgi_signal_cross- Crosses above (cross up): RVGI was below Signal and moved above. Classic Long - cross up signal: start of bullish vigor.
- Crosses below (cross down): RVGI was above Signal and dropped below. Short signal - cross down signal: vigor turned bearish.
- Greater than (gt): RVGI is strictly above the target right now. E.g. RVGI gt signal - sustained bullish vigor without requiring a fresh cross.
- Less than (lt): RVGI is strictly below the target. RVGI lt signal - clear bearish vigor, useful for Short filters.
- Greater or equal (gte): RVGI is at or above the threshold. Handy for “RVGI ≥ Signal” filter on a higher timeframe.
- Less or equal (lte): RVGI is at or below the threshold. Bearish context filter: RVGI ≤ Signal on 4h.
Trend bullish - bullish trend (rvgi_trend)
Default condition: output trend equals bullish (eq) on the selected timeframe (15m interval, length 10, check at bar close).
Direction filter without line crosses: TAAPI determines RVGI dominates Signal - trend = bullish. For Short, set trend eq bearish or changed_to bearish. Preset rvgi_trend works well as trend confirmation combined with rvgi_signal_cross on a lower TF.
Operators for rvgi_trend- Equals (eq): trend strictly equals the target - bullish or bearish right now. E.g. trend eq bullish - bot starts only with bullish RVGI direction.
- Not equal (neq): trend does not equal the specified value. trend neq bearish - Long only when trend is not bearish.
- Changed to (changed to): trend just switched to the target value. trend changed_to bullish - moment of shift from bearish (or neutral) to bullish; more precise than eq alone.
- Changed from (changed from): trend equaled the specified value on the previous check and changed. Useful to capture exit from bearish phase: changed_from bearish.
Signal is smoothed RVGI; RVGI/Signal cross is the main impulse signal in rvgi_signal_cross. The zero line is an extra reference: RVGI > 0 means closes on average above opens for the period. In a strong trend RVGI can stay above Signal for a long time - then gt/gte gives earlier entry while cross gives a more precise vigor shift.
General builder settings
- Timeframe (interval): 1m, 5m, 15m, 30m, 1h, 4h, 1d. Shorter intervals give more signals but more noise. Swing bots often use 1h–4h; scalping uses 5m–15m.
- Check mode: At candle close checks after the candle closes - fewer false triggers. Every minute checks inside the current candle - faster reaction, higher false-start risk.
- Operator: greater than, less than, crosses above, crosses below, greater or equal, and others define how the indicator value is compared to the target.
- Target value: a number (e.g. 30 for RSI), an indicator line (e.g. %D for Stochastic), or price (for Bollinger Bands).
- Condition groups: up to 3 groups with up to 5 conditions each. Example: group 1 - RSI < 30 AND price < lower band; group 2 - Stochastic < 20. The bot starts if group 1 OR group 2 is satisfied.
Setup examples for different strategies
Scalping: length 6 on 5m–15m
Goal: frequent starts on short vigor impulses.
Long: rvgi_signal_cross preset, cross up signal, 5m timeframe, length 6, check at bar close.
Short: cross down signal, same settings.
Filter: trend eq bullish on 15m - fewer false crosses in a range.
Swing: length 14 on 1h–4h
Goal: fewer but more meaningful vigor shifts.
Long: RVGI cross up signal on 4h, length 14, check at close.
Short: cross down signal on 4h, length 14.
Length 14 on a higher TF smooths noise and signals closer to a sustained trend change.
Trend confirmation via trend output
Goal: Long only when RVGI confirms bullish context.
Group 1: trend eq bullish on 4h (rvgi_trend preset) AND RVGI cross up signal on 15m.
Short: trend eq bearish on 4h AND cross down signal on 15m.
Higher TF sets direction, lower TF catches entry timing.
Cross vs trend: when to use which
rvgi_signal_cross - impulse signal at RVGI/Signal cross moment; triggers more often.
rvgi_trend - bullish/bearish state filter; good for staying in trend (trend eq bullish) or catching reversals (changed_to bearish).
Combo: trend eq bullish on 1h AND RVGI gt signal on 15m - entry without waiting for a fresh cross.
RVGI + EMA
Long: price cross up EMA 20 on 15m AND RVGI cross up signal on the same 15m - double confirmation: both price and candle vigor turned up.
Short: price cross down EMA 20 AND RVGI cross down signal.
Alternative: trend eq bullish on 1h AND price > EMA 50 on 1h - trend Long on confirmed vigor.
Short on vigor shift
Condition: RVGI cross down signal or trend changed_to bearish, length 10, 15m, check at close.
Filter: RSI > 65 in the same group - short after overbought with fading bullish vigor.
Fits short grids at local peaks.
Strong vigor (gt filter)
Long: RVGI gt signal on 1h, length 10 - bot starts only with clear RVGI above Signal, without waiting for a cross.
Short: RVGI lt signal on 1h.
Useful in trends where cross up signal already happened but vigor still favors you.
Pullback in trend
Group 1: trend eq bullish on 4h (length 14) AND RVGI cross up signal on 15m (length 10).
Logic: higher TF shows sustained bullish vigor; lower TF catches resumption after a short correction. Fewer false starts against the global trend.
RVGI + RSI
Long: RSI cross up 30 on 15m AND RVGI cross up signal on 15m - oscillator and candle vigor aligned.
Short: RSI cross down 70 AND RVGI cross down signal.
RSI catches oversold/overbought; RVGI checks that closes actually shift in the right direction.
Multi-timeframe
Long: trend eq bullish on 4h (separate condition, length 14) AND RVGI cross up signal on 15m (length 10).
Short: trend eq bearish on 4h AND RVGI cross down signal on 15m.
Avoids buying every local cross against global bearish trend on the higher interval.
DCA on pullback
Long: RVGI cross up signal on 1h (length 12) AND RSI < 45 on 1h - vigor bounce from weakness without extreme oversold.
Short: cross down signal AND RSI > 55.
For a DCA bot on trend pullbacks, cross up signal is softer than strict RSI < 30.
Condition groups: practical example
Bot with two Long scenarios:
Group 1: RVGI cross up signal on 15m AND trend eq bullish on 1h - impulse vigor resumption.
Group 2: trend changed_to bullish on 4h AND price > EMA 50 on 15m - vigor reversal with price confirmation.
Groups combined with OR. Configure Short symmetrically (cross down signal, trend eq bearish).
Tip
In a ranging market RVGI often crosses Signal back and forth: cross up signal and cross down signal trigger often and produce false bot starts. Increase length (14 instead of 6), add trend eq bullish filter on a higher timeframe or EMA. Preset rvgi_trend with changed_to captures direction shifts more precisely than eq in a prolonged trend. Use check at bar close to ignore intrabar noise.