4 releases

0.1.2 Jan 16, 2023
0.1.1 Oct 25, 2021
0.1.0 Sep 27, 2021
0.0.1 Jan 29, 2017

#142 in Finance

Apache-2.0…

6MB
87K SLoC

C 75K SLoC // 0.3% comments Shell 5.5K SLoC // 0.1% comments M4 5.5K SLoC // 0.2% comments Rust 412 SLoC // 0.1% comments Automake 279 SLoC // 0.0% comments Java 187 SLoC // 0.4% comments

ta-lib

High level Rust wrapper around the Technical Analysis library.

Caveat

This crate only exposes the functions I need myself from the original TA lib. Which has around 200 of them. Feel free to expose more and open a PR. Wrapping a missing indicator is usually a one line addition with the existing wrapper generation macros in the crate.

The following indicators are currently wrapped:

  • ADX – Average Directional (Movement) Index.
  • ATR – Average True Range.
  • BBANDS – Bollinger Bands.
  • -DI – Minus Directional Indicator.
  • +DI – Plus Directional Indicator.
  • EMA – Exponential Moving Average.
  • NATR – Normalized Average True Range.
  • OBV – On Balance Volume.
  • SMA – Simple Moving Average.
  • TRANGE – True Range.

Alternatives

I sugget using the ta crate instead, which is a rewrite in Rust of some parts of TA but with better ergonomics than this crate. But it also only implements parts of the original TA lib indicators.

I.e. if you need to use an indicator missing from ta this crate may get you there quickly, as a workaround.

Dependencies

~1.2–3MB
~70K SLoC