{"id":24197,"library":"pandas-ta-classic","title":"Pandas TA Classic","description":"A maintained fork of the popular pandas-ta library, providing an extensive collection of technical analysis indicators and TA-Lib patterns as Pandas DataFrame extensions. Current version is 0.5.44, with a monthly release cadence and active development.","status":"active","version":"0.5.44","language":"python","source_language":"en","source_url":"https://github.com/xgboosted/pandas-ta-classic","tags":["technical analysis","indicators","pandas","finance","trading"],"install":[{"cmd":"pip install pandas-ta-classic","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Core dependency for DataFrame operations","package":"pandas","optional":false},{"reason":"Required for numerical calculations","package":"numpy","optional":false},{"reason":"Optional: enables TA-Lib pattern recognition; must be installed separately","package":"ta-lib","optional":true}],"imports":[{"note":"Hyphen in package name is invalid in Python; use underscore.","wrong":"import pandas-ta as ta","symbol":"ta","correct":"import pandas_ta as ta"},{"note":"Extension is automatically available after importing pandas_ta.","wrong":"df.ta.<indicator>(...) with old import style","symbol":"DataFrame.ta","correct":"df.ta.<indicator>(...)"}],"quickstart":{"code":"import pandas as pd\nimport pandas_ta as ta\n\ndf = pd.DataFrame({'close': [1.1, 1.2, 1.3, 1.4, 1.5]})\ndf.ta.sma(length=4, append=True)\nprint(df)","lang":"python","description":"Calculate a simple moving average (SMA) and append it to the DataFrame."},"warnings":[{"fix":"Review changelog at https://github.com/xgboosted/pandas-ta-classic/releases","message":"pandas-ta-classic is a fork; breaking changes from original pandas-ta may exist. Always check migration guide.","severity":"breaking","affected_versions":"0.1.0+"},{"fix":"Use pandas-ta built-in patterns (e.g., df.ta.cdl_pattern(name='doji')) instead of TA-Lib.","message":"TA-Lib pattern functions are deprecated in favor of native pandas-ta implementations. TA-Lib must be installed separately if needed.","severity":"deprecated","affected_versions":"0.4.0+"},{"fix":"Always pass append=True explicitly to avoid silent column overwrites.","message":"Indicator methods may modify the DataFrame in-place even without append=True if the method is called with default kwargs.","severity":"gotcha","affected_versions":"all"},{"fix":"Rename columns to lowercase before using df.ta.","message":"Some indicators require specific column names (open, high, low, close, volume). Missing columns raise KeyError.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run: pip install pandas-ta-classic, then import pandas_ta","cause":"Installed package as 'pandas-ta-classic' but imported as 'pandas_ta'? Or not installed.","error":"ModuleNotFoundError: No module named 'pandas_ta'"},{"fix":"Ensure 'import pandas_ta as ta' is executed before using df.ta.","cause":"pandas_ta not imported or imported incorrectly.","error":"'DataFrame' object has no attribute 'ta'"},{"fix":"Check indicator parameters; e.g., df.ta.sma(length=10) requires length >= 2.","cause":"Incorrect parameters passed to indicator (e.g., length=0 or negative).","error":"ValueError: length must be greater than 0"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}