Documentation

relativeStrengthIndex() function

relativeStrengthIndex() measures the relative speed and change of values in input tables.

Relative strength index (RSI) rules

  • The general equation for calculating a relative strength index (RSI) is RSI = 100 - (100 / (1 + (AVG GAIN / AVG LOSS))).
  • For the first value of the RSI, AVG GAIN and AVG LOSS are averages of the n period.
  • For subsequent calculations:
    • AVG GAIN = ((PREVIOUS AVG GAIN) * (n - 1)) / n
    • AVG LOSS = ((PREVIOUS AVG LOSS) * (n - 1)) / n
  • relativeStrengthIndex() ignores null values.

Output tables

For each input table with x rows, relativeStrengthIndex() outputs a table with x - n rows.

Function type signature
(<-tables: stream[A], n: int, ?columns: [string]) => stream[B] where A: Record, B: Record

For more information, see Function type signatures.

Parameters

n

(Required) Number of values to use to calculate the RSI.

columns

Columns to operate on. Default is ["_value"].

tables

Input data. Default is piped-forward data (<-).

Examples

Calculate a three point relative strength index

import "sampledata"

sampledata.int()
    |> relativeStrengthIndex(n: 3)

View example input and output


Was this page helpful?

Thank you for your feedback!


New in InfluxDB 3.6

Key enhancements in InfluxDB 3.6 and the InfluxDB 3 Explorer 1.4.

See the Blog Post

InfluxDB 3.6 is now available for both Core and Enterprise. This release introduces the 1.4 update to InfluxDB 3 Explorer, featuring the beta launch of Ask AI, along with new capabilities for simple startup and expanded functionality in the Processing Engine.

For more information, check out:

InfluxDB Docker latest tag changing to InfluxDB 3 Core

On February 3, 2026, the latest tag for InfluxDB Docker images will point to InfluxDB 3 Core. To avoid unexpected upgrades, use specific version tags in your Docker deployments.

If using Docker to install and run InfluxDB, the latest tag will point to InfluxDB 3 Core. To avoid unexpected upgrades, use specific version tags in your Docker deployments. For example, if using Docker to run InfluxDB v2, replace the latest version tag with a specific version tag in your Docker pull command–for example:

docker pull influxdb:2