greyblake / Ta Rs
Licence: mit
Technical analysis library for Rust language
Stars: ✭ 248
Programming Languages
rust
11053 projects
Labels
Projects that are alternatives of or similar to Ta Rs
Turingtrader
The Open-Source Backtesting Engine/ Market Simulator by Bertram Solutions.
Stars: ✭ 132 (-46.77%)
Mutual labels: trading, finance, trading-strategies, trading-algorithms, stocks, technical-analysis
AutoTrader
A Python-based development platform for automated trading systems - from backtesting to optimisation to livetrading.
Stars: ✭ 227 (-8.47%)
Mutual labels: finance, trading, trading-strategies, trading-algorithms, stocks, technical-analysis
Tradestation
EasyLanguage indicators and systems for TradeStation
Stars: ✭ 65 (-73.79%)
Mutual labels: trading, finance, stock-market, stocks, technical-analysis
tuneta
Intelligently optimizes technical indicators and optionally selects the least intercorrelated for use in machine learning models
Stars: ✭ 77 (-68.95%)
Mutual labels: finance, trading, stock-market, stocks, technical-analysis
Pandas Ta
Technical Analysis Indicators - Pandas TA is an easy to use Python 3 Pandas Extension with 130+ Indicators
Stars: ✭ 962 (+287.9%)
Mutual labels: trading, finance, stock-market, trading-algorithms, technical-analysis
Sumzerotrading
A Java API for Developing Automated Trading Applications for the Equity, Futures, and Currency Markets
Stars: ✭ 128 (-48.39%)
Mutual labels: trading, stock-market, trading-algorithms, stocks, market-data
Lean
Lean Algorithmic Trading Engine by QuantConnect (Python, C#)
Stars: ✭ 5,675 (+2188.31%)
Mutual labels: finance, trading-strategies, trading-algorithms, trading
Iex Api
The IEX API provides any individual or academic, public or private institution looking to develop applications that require stock market data to access near real-time quote and trade data for all stocks trading on IEX.
Stars: ✭ 683 (+175.4%)
Mutual labels: finance, stock-market, stocks, market-data
Roq Api
API for algorithmic and high-frequency trading
Stars: ✭ 132 (-46.77%)
Mutual labels: trading, trading-strategies, trading-algorithms, market-data
Machine Learning And Ai In Trading
Applying Machine Learning and AI Algorithms applied to Trading for better performance and low Std.
Stars: ✭ 258 (+4.03%)
Mutual labels: trading, finance, trading-strategies, trading-algorithms
Ta4j
A Java library for technical analysis.
Stars: ✭ 948 (+282.26%)
Mutual labels: trading, trading-strategies, trading-algorithms, stocks
Py Market Profile
A library to calculate Market Profile (aka Volume Profile) for financial data from a Pandas DataFrame.
Stars: ✭ 153 (-38.31%)
Mutual labels: trading, finance, trading-strategies, trading-algorithms
Quantdom
Python-based framework for backtesting trading strategies & analyzing financial markets [GUI ]
Stars: ✭ 449 (+81.05%)
Mutual labels: trading, finance, stock-market, trading-strategies
Stocksharp
Algorithmic trading and quantitative trading open source platform to develop trading robots (stock markets, forex, crypto, bitcoins, and options).
Stars: ✭ 4,601 (+1755.24%)
Mutual labels: trading, finance, trading-strategies, stocks
Awesome Quant
A curated list of insanely awesome libraries, packages and resources for Quants (Quantitative Finance)
Stars: ✭ 8,205 (+3208.47%)
Mutual labels: finance, trading-strategies, trading-algorithms, technical-analysis
Ta4j Origins
A Java library for technical analysis ***Not maintained anymore, kept for archival purposes, see #192***
Stars: ✭ 354 (+42.74%)
Mutual labels: trading, trading-strategies, trading-algorithms, technical-analysis
Backtesting.py
🔎 📈 🐍 💰 Backtest trading strategies in Python.
Stars: ✭ 1,124 (+353.23%)
Mutual labels: trading, trading-strategies, trading-algorithms, stocks
Mop
Stock market tracker for hackers.
Stars: ✭ 1,534 (+518.55%)
Mutual labels: finance, trading, stock-market, stocks
trading sim
📈📆 Backtest trading strategies concurrently using historical chart data from various financial exchanges.
Stars: ✭ 21 (-91.53%)
Mutual labels: finance, trading, stock-market, trading-strategies
Gekko Strategies
Strategies to Gekko trading bot with backtests results and some useful tools.
Stars: ✭ 1,022 (+312.1%)
Mutual labels: trading, trading-strategies, trading-algorithms, technical-analysis
Technical Analysis for Rust (ta)
Technical analysis library for Rust.
Getting started
Add to you Cargo.toml
:
[dependencies]
ta = "0.4.0"
Example:
use ta::indicators::ExponentialMovingAverage;
use ta::Next;
// it can return an error, when an invalid length is passed (e.g. 0)
let mut ema = ExponentialMovingAverage::new(3).unwrap();
assert_eq!(ema.next(2.0), 2.0);
assert_eq!(ema.next(5.0), 3.5);
assert_eq!(ema.next(1.0), 2.25);
assert_eq!(ema.next(6.25), 4.25);
See more in the examples here. Check also the documentation.
Basic ideas
A data item which represent a stock quote may implement the following traits:
Open
High
Low
Close
Volume
It's not necessary to implement all of them, but it must be enough to fulfill requirements for a particular indicator.
You probably should prefer using DataItem
unless you have reasons to implement your own structure.
Indicators typically implement the following traits:
-
Next<T>
(oftenNext<f64>
andNext<&DataItem>
) - to feed and get the next value -
Reset
- to reset an indicator Debug
Display
Default
Clone
List of indicators
So far there are the following indicators available.
- Trend
- Exponential Moving Average (EMA)
- Simple Moving Average (SMA)
- Oscillators
- Relative Strength Index (RSI)
- Fast Stochastic
- Slow Stochastic
- Moving Average Convergence Divergence (MACD)
- Percentage Price Oscillator (PPO)
- Money Flow Index (MFI)
- Other
- Minimum
- Maximum
- True Range
- Standard Deviation (SD)
- Average True Range (AR)
- Efficiency Ratio (ER)
- Bollinger Bands (BB)
- Chandelier Exit (CE)
- Keltner Channel (KC)
- Rate of Change (ROC)
- On Balance Volume (OBV)
Features
-
serde
- allows to serialize and deserialize indicators. NOTE: the backward compatibility of serialized data with the future versions of ta is not guaranteed because internal implementation of the indicators is a subject to change.
Running benchmarks
cargo bench
License
Contributors
- greyblake Potapov Sergey - creator, maintainer.
- Bartoshko - BollingerBands
- shreyasdeotare Shreyas Deotare - MoneyFlowIndex, OnBalanceVolume
- edwardycl - StandardDeviation Implementation & More Efficient BollingerBands
- rideron89 Ron Rider - Keltner Channel
- tirz - Chandelier Exit, Percentage Price Oscillator, refactorings
- Devin Gunay - serde support
- Youngchan Lee - bugfix
- tommady - get rid of error-chain dependency
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].