pandas-ta-classic
Technical Analysis Indicators - Pandas TA Classic is an easy to use Python 3 Pandas Extension with a comprehensive collection of indicators and TA-Lib patterns.
Decision gist · record as of 2026-08-14
Yes. Pandas TA Classic is actively maintained, has no known vulnerabilities, installs with minimal friction (only numpy and pandas), and offers a comprehensive set of 253 indicators and patterns under a permissive MIT license. It is production-ready (Development Status 5) and suitable for both research and commercial trading systems. Install it if you need technical analysis indicators in pandas workflows and want to avoid TA-Lib compilation or licensing complexity.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Optional TA-Lib and tulipy can accelerate some indicators but are not required.
- Low friction install with only numpy and pandas as runtime dependencies.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted commercial and private use, modification, and distribution with minimal restrictions, making it suitable for proprietary trading systems and closed-source applications.
last release 2026-06-24 (51 days) · last repo commit 2026-07-25 · 419 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 208,792 downloads/mo, #9,525 on PyPI
Alternatives
Verify before relying
pip install pandas-ta-classic
import pandas as pd
import pandas_ta_classic as ta
df = pd.read_csv("data.csv")
df.ta.sma(length=20, append=True)
df.ta.rsi(append=True)
df.ta.macd(append=True)- Whether the 6–230× numba speedup claims are measured on typical trading datasets or synthetic benchmarks
- Specific performance characteristics of the 62 native candlestick patterns versus TA-Lib implementations
- How the fluent API chaining (v0.6+) handles error propagation and state management across chained calls
What it is and what it does
Pandas TA Classic is a Pandas DataFrame extension that adds 193 technical indicators and 62 native candlestick patterns to your trading and financial analysis workflows. It works by attaching methods to pandas DataFrames (e.g., `df.ta.sma()`, `df.ta.rsi()`), making indicators accessible directly on your price data without external dependencies like TA-Lib. The library includes common indicators such as Simple Moving Average, MACD, Bollinger Bands, and On-Balance Volume, plus less common ones like Hull Exponential Moving Average and Squeeze.
The package depends only on numpy and pandas at runtime, keeping installation lightweight. It offers optional integrations: TA-Lib can accelerate 34 core indicators when installed, numba can speed up specific hot-loop indicators by 6–230×, and tulipy serves as a parity oracle for testing. All candlestick patterns are implemented natively in Python, so you never need TA-Lib just to use CDL patterns. The library supports fluent API chaining to combine multiple indicators in one expression and includes a strategy system for bulk processing.
Use it for
- Build moving average crossover trading strategies by chaining sma() calls and comparing signals on historical price data
- Detect candlestick patterns (doji, engulfing, hammer) on OHLC data using native Python implementations without external C libraries
- Backtest momentum indicators (RSI, MACD, Stochastic) on multi-timeframe data to identify entry and exit points
- Accelerate indicator computation on large datasets using optional numba for hot-loop functions like Supertrend or RSX
- Verify custom indicator implementations against TA-Lib or tulipy using the built-in oracle test suite
- Integrate technical signals into a vectorbt backtesting pipeline for performance analysis and optimization
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Pandas TA Classic is actively maintained, has no known vulnerabilities, installs with minimal friction (only numpy and pandas), and offers a comprehensive set of 253 indicators and patterns under a permissive MIT license. It is production-ready (Development Status 5) and suitable for both research and commercial trading systems. Install it if you need technical analysis indicators in pandas workflows and want to avoid TA-Lib compilation or licensing complexity.
Install
pandas-ta-classic on PyPI
Before you install
Low friction install with only numpy and pandas as runtime dependencies. Actively maintained with a recent release 51 days ago and 419 repository stars. Supports modern Python versions (3.10–3.14) and offers optional numba acceleration for performance-critical indicators.
Requires Python 3.10 or later. Optional TA-Lib and tulipy can accelerate some indicators but are not required.
License in practice
MIT license permits unrestricted commercial and private use, modification, and distribution with minimal restrictions, making it suitable for proprietary trading systems and closed-source applications.
Quickstart
pip install pandas-ta-classic
import pandas as pd
import pandas_ta_classic as ta
df = pd.read_csv("data.csv")
df.ta.sma(length=20, append=True)
df.ta.rsi(append=True)
df.ta.macd(append=True)
Verify before relying
- Whether the 6–230× numba speedup claims are measured on typical trading datasets or synthetic benchmarks
- Specific performance characteristics of the 62 native candlestick patterns versus TA-Lib implementations
- How the fluent API chaining (v0.6+) handles error propagation and state management across chained calls
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesnumpypandas |
| Maintenance | Actively maintained 51 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 208,792 / month, #9,525 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Financial and Insurance IndustryIntended Audience :: Science/ResearchNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Office/Business :: FinancialTopic :: Office/Business :: Financial :: InvestmentTopic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Information Analysis |
Evidence: pandas_ta_classic-0.6.52-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
An agent finds packages by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language. Give your agent the search over MCP.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also ft-pandas-ta · TA-Lib · pandas-ta · ta · stockstats · technical · tradingview-ta · alpha-vantage · tradingeconomics · mplfinance