Installation docs: https://ta-lib.org/install/
Just re-install to upgrade. Older versions are automatically removed.
See github commits for complete list of changes
[0.7.1] 2026-07-03
Added
- (#79) TA-Lib is now available as a GitHub Action: setup-ta-lib. Thanks @mrjbq7 !
- (#86) Conan package manager support. Thanks @CaptainTrunky !
Welcome new wrappers
- Go: ta-lib-cgo. Thanks @bradleypeabody !
- PHP: ext-ta-lib. Thanks @rernesto !
- PostgreSQL: ta_pg. Thanks @tuxmonteiro !
- R: ta-lib-R. Thanks @serkor1 !
- Ruby: ta-lib-ruby. Thanks @Youngv !
- Zig: ta-lib-zig. Thanks @mrjbq7 !
Changed
- Major simplification of how TA functions are written and generated: the new ta_codegen (Rust) replaces the outdated gen_code — a big win for maintainability and the coming Rust-native release. Thanks @chadfurman !
- The
TA_FUNC_NO_RANGE_CHECKcompile flag is gone: parameter validation is always on in the public functions. Callers that used the flag for speed should call the new exportedTA_*_Unguardedvariants instead (no validation, same results for valid inputs). - Algo Optimization: MIDPOINT and MIDPRICE now cache the rolling min/max instead of rescanning the window each bar, reducing typical cost from O(n*period) toward O(n) (largest gains at bigger periods).
- Removed outdated ta-lib/make directory. Use CMake and Autotools instead.
- (#70) Documentation index updates. Thanks @kennethjor !
Fixed
- (#48, #59) Fixed period=1 handling. MACD/MACDFIX with
signalPeriod=1, TRIX and ULTOSC with period 1 used to produce misaligned output. A period of 1 now consistently means "no smoothing": SMA, EMA, WMA, DEMA, TEMA, TRIMA, KAMA, T3 and MAVP accept a minimum period of 1 and return the input unchanged, MACD-family signal lines withsignalPeriod=1equal the MACD line (histogram). A newPERIOD1/BOUNDARYregression-test group pins all of this, for every backend. Thanks @trufanov-nok for the original analysis and fix in ta-lib-rt! - (#62) Fixed an out-of-bounds access in the regression test tooling. Thanks @Lqingyu !
- (#68) Corrected a spelling error in the TA_LIB_NOT_INITIALIZE return-code message. Thanks @alteholz !
- (#88) HT_TRENDLINE: removed an internal buffer that was written on every bar but never read (small speed-up, no output change). Thanks to Jake Arkinstall (from SourceForge) and @731315163 !