All Projects → greyblake → Ta Rs

greyblake / Ta Rs

Licence: mit
Technical analysis library for Rust language

Programming Languages

rust
11053 projects

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)

Build Status Crates.io Docs.rs License

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> (often Next<f64> and Next<&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

MIT © Sergey Potapov

Contributors

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].