OpenBB-finance/OpenBB · error · OpenBBError

No valid indicators provided. Please choose from: ",".join(I

Error message

No valid indicators provided. Please choose from: ",".join(INDICATORS)

What it means

OpenBBError from the same symbol validator: after filtering, zero symbols matched any key of EconDB's INDICATORS_DESCRIPTIONS catalog. Each invalid symbol produced a warn("Invalid indicator: '{symbol}'"), and when new_symbols ends up empty the validator raises with the full valid indicator list embedded in the message.

Source

Thrown at openbb_platform/providers/econdb/openbb_econdb/models/economic_indicators.py:141

            if symbol.upper() == "MAIN":
                if len(symbols) > 1:
                    raise OpenBBError(
                        "The 'main' indicator cannot be combined with other indicators."
                    )
                return symbol
            if not any(
                (
                    symbol.upper().startswith(indicator)
                    if len(symbol) >= len(indicator)
                    else symbol.upper() == indicator
                )
                for indicator in INDICATORS
            ):
                warn(f"Invalid indicator: '{symbol}'.")
            else:
                new_symbols.append(symbol)
        if not new_symbols:
            raise OpenBBError(
                "No valid indicators provided. Please choose from: "
                + ",".join(INDICATORS)
            )
        return ",".join(new_symbols)


class EconDbEconomicIndicatorsData(EconomicIndicatorsData):
    """EconDB Economic Indicators Data."""


class EconDbEconomicIndicatorsFetcher(
    Fetcher[EconDbEconomicIndicatorsQueryParams, list[EconDbEconomicIndicatorsData]]
):
    """EconDB Economic Indicators Fetcher."""

    require_credentials = False

    @staticmethod

View on GitHub (pinned to 3e071fcc2c)

Solutions

  1. Read the error message — it contains the complete comma-separated list of valid indicators for your installed version; pick from it.
  2. Check the preceding warnings for exactly which symbols were rejected.
  3. Update openbb-econdb so the catalog matches current EconDB codes.
  4. List valid codes at runtime via the available-indicators endpoint (obb.economy.indicators(provider='econdb')).

Example fix

# before
res = obb.economy.indicator(provider="econdb", symbol="inflaiton", country="us")  # typo

# after
res = obb.economy.indicator(provider="econdb", symbol="cpi", country="us")
Defensive patterns

Strategy: validation

Validate before calling

from openbb_econdb.utils import helpers

def valid_symbols(symbols: list[str]) -> list[str]:
    known = list(helpers.INDICATORS_DESCRIPTIONS)
    return [s for s in symbols if any(s.upper().startswith(k) if len(s) >= len(k) else s.upper() == k for k in known)]
# if empty -> the call would raise; surface valid list to the user

Try / catch

from openbb_core.provider.utils.errors import OpenBBError
try:
    res = obb.economy.indicator(provider="econdb", symbol=syms, country=cs)
except OpenBBError as e:
    msg = str(e)
    if "No valid indicators" in msg:
        valid = msg.rsplit(": ", 1)[-1].split(",")  # recover the catalog from the message
        raise ValueError(f"choose from: {valid[:20]}...")
    raise

Prevention

When it happens

Trigger: Calling obb.economy.indicator(provider='econdb', symbol='foo,bar') where neither starts with any known indicator root; also passing retired indicator codes no longer in the catalog of the installed provider version.

Common situations: Typos in indicator codes; indicator renamed/removed in a newer EconDB catalog than the installed openbb-econdb knows; passing codes from a different provider (FRED series ids) to the econdb provider.

Related errors


AI-assisted analysis of OpenBB-finance/OpenBB@3e071fcc2c (2026-08-14). Data as JSON: /api/errors/3cc80caf9fc8aa62. Report an issue: GitHub.