Repolode
xgboosted

xgboosted/pandas-ta-classic

A Python Pandas extension that adds 224 technical analysis indicators and 62 native candlestick patterns to DataFrames, without requiring TA-Lib.

Stars
485
Forks
113
Open issues
2
Last commit
7 days ago

Repolode describes open-source projects and does not give investment advice. Trading and investing can lose money: assess the risk yourself and follow the laws where you live before using this project.

What is it?

Pandas TA Classic is a community-maintained Python library that extends pandas DataFrames with technical analysis indicators for financial price data. Once installed, indicators are called directly on an OHLCV DataFrame through the df.ta accessor, for example df.ta.sma(length=20) or df.ta.macd(append=True), and results can be appended as new columns.

The library covers 224 indicators and utility functions across categories such as candles, cycles, math, momentum, overlap, trend and volume, plus 62 candlestick patterns. All candlestick patterns are implemented natively in Python. Core indicators such as EMA, SMA, RSI, MACD, OBV and ATR use native implementations by default, and passing talib=True switches them to TA-Lib when it is installed.

The library also offers a fluent chaining API, a strategy system for computing many indicators in bulk with opt-in multiprocessing, and optional numba acceleration for recursive indicators on long series. It includes integration examples for backtesting.py, backtrader, VectorBT and manifoldbt. It does not fetch market data; users supply their own DataFrame.

Key features

  • 01Adds 224 indicators and utilities to pandas DataFrames via the df.ta accessor.
  • 02Includes 62 candlestick pattern recognizers implemented natively in Python.
  • 03Core indicators can optionally use TA-Lib through a talib=True flag.
  • 04Supports fluent chaining and a strategy system for computing many indicators at once.
  • 05Offers optional numba acceleration for recursive indicators on long price series.

Use cases

  • Adding moving averages, RSI, MACD or Bollinger Bands to a price DataFrame for analysis.
  • Detecting candlestick patterns in historical OHLCV data.
  • Generating indicator features for quantitative research or machine learning pipelines.
  • Feeding precomputed indicators into backtesting.py, backtrader or VectorBT strategies.

Quick start

  1. 1

    Install the stable release with uv

    uv pip install pandas-ta-classic
  2. 2

    Or install the stable release with pip

    pip install pandas-ta-classic
  3. 3

    Import the library and compute an indicator on a DataFrame

    df.ta.sma(length=20, append=True)

Things to know

  • Some TA-Lib or tulipy functions have no counterpart; check the per-indicator support matrix.
  • Requires Python 3.11 or newer.
  • Does not fetch market data; you must supply your own OHLCV data.

Topics

FAQ

What is pandas-ta-classic?
A Python Pandas extension that adds 224 technical analysis indicators and 62 native candlestick patterns to DataFrames, without requiring TA-Lib. Pandas TA Classic is a community-maintained Python library that extends pandas DataFrames with technical analysis indicators for financial price data. Once installed, indicators are called directly on an OHLCV DataFrame through the df.ta accessor, for example df.ta.sma(length=20) or df.ta.macd(append=True), and results can be appended as new columns.
Is pandas-ta-classic free to use? What license does it have?
pandas-ta-classic is open source under the MIT license. Check the license terms before using it in commercial products.
Is pandas-ta-classic still maintained?
Actively maintained. The last commit to pandas-ta-classic was on Oct 31, 2026.
What can I use pandas-ta-classic for?
Adding moving averages, RSI, MACD or Bollinger Bands to a price DataFrame for analysis. Detecting candlestick patterns in historical OHLCV data. Generating indicator features for quantitative research or machine learning pipelines. Feeding precomputed indicators into backtesting.py, backtrader or VectorBT strategies.
How do I install pandas-ta-classic?
Install the stable release with uv: uv pip install pandas-ta-classic Or install the stable release with pip: pip install pandas-ta-classic Import the library and compute an indicator on a DataFrame: df.ta.sma(length=20, append=True)
Where can I get pandas-ta-classic?
The source code and installation instructions are on GitHub: https://github.com/xgboosted/pandas-ta-classic

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects