Install & Compatibility
Where this runs
tested against v1.5.3 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.920 runs
installs and imports cleanly · install 0.0s · import 0.000s · 182.1MB
glibcpy 3.10–3.920 runs
installs and imports cleanly · install 8.1s · import 0.000s · 179MB
184MB installed
● package 184MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
accumulation_distribution
✓ import technical
✗ from technical import accumulation_distribution
This quickstart demonstrates how to create a pandas DataFrame and then use the `sma` indicator from the `technical.indicators` module to calculate a Simple Moving Average. Indicators typically take a pandas Series (e.g., 'close' prices) and return a new Series.
import pandas as pd
from technical.indicators import sma
# Create a sample DataFrame with 'close' prices
df = pd.DataFrame({
'close': [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
})
# Calculate Simple Moving Average (SMA) with a period of 3
df['sma_3'] = sma(df['close'], period=3)
print(df)
Debug
Known issues
breakingPython 3.10 support was dropped in version 1.5.4. Ensure your environment uses Python 3.11 or newer for compatibility.fixUpgrade Python to version 3.11 or later. E.g., `pyenv install 3.11.8 && pyenv local 3.11.8`
affects: >=1.5.4
deprecatedThe `zema` indicator is deprecated and will issue a `FutureWarning`. Its implementation was found to be functionally equivalent to `dema` (Double Exponential Moving Average).fixReplace calls to `zema()` with `dema()` to avoid warnings and use the correct terminology. Example: `df['dema'] = dema(df['close'], period=X)`
affects: >=1.4.2
gotchaOlder versions of `technical` (prior to 1.5.4) might produce pandas `FutureWarning` messages due to API changes in pandas. Version 1.5.4 and later include 'Proper support for latest pandas versions _without deprecation warnings_'.fixUpgrade to `technical` version 1.5.4 or newer: `pip install --upgrade technical`
affects: <1.5.4
breakingThe `tv_hma()` and `tv_wma()` functions were updated in version 1.5.0 to consistently return pandas Series objects, rather than potentially other types. This might affect code expecting different return types.fixEnsure your code explicitly handles or is compatible with pandas Series return types for `tv_hma()` and `tv_wma()`.
affects: >=1.5.0
gotchaInstalling the underlying TA-Lib C library can be complex, especially on Windows or certain Linux distributions. While `technical` aims to wrap it, errors like 'Cannot find ta-lib library' during installation are common.fixRefer to the official TA-Lib-Python installation guide or the TA-Lib C library instructions for your specific OS (e.g., `brew install ta-lib` on macOS, manual compilation on Linux, or pre-compiled binaries on Windows).
affects: All versions (when TA-Lib is a dependency)
Upgrade
Version history
1.6.0latest on PyPI · released Apr 4, 2026
Audit
Dependencies
pandasrequiredCore data structure (DataFrame/Series) for input and output, used heavily throughout the library.
numpyrequiredUnderlying numerical operations for performance and integration with pandas.
TA-LiboptionalProvides optimized C implementations for many technical indicators, wrapped by `technical` for enhanced performance. Installation of the underlying C library is often required for the `ta-lib` python wrapper.