6 releases
0.1.5 | Jun 2, 2024 |
---|---|
0.1.4 | Jun 2, 2024 |
155 downloads per month
94KB
663 lines
golden
golden
is all in one trading engine built with Rust.
There are many public algorithmic trading platform like QuantConnect and JoinQuant for individual trader for learning, researching, backtesting and live-trading. However, we still private algorithmic trading platform for many reasons such as strategy privacy, system stability and other customed features.
One of the well-known private trading library is Backtrader, but the commmunity is not active recently. It hasn't updated since Apr 19, 2023. I also build a simple project based on backtrader and ib_insync, but it still need a lot of work to do to achieve above goals.
Inspired by backtrader
, golden
aims to build all in one trading engine supporting backtesting, analyzing, paper-trading and live-trading.
Why Rust
- As my first Rust practice project
- Modern programming language
- High performance
- Powerful compiler
- The trending
Project feature list
- Command Line Argument Parser
- Set configuration with a local toml file
- Set configuration with UI
- Publish it to crate.io
- Customed Strategy writing
Backtest features list
- Single data feed
- Single strategy
- Download CSV data from yahoo finance
- Set time range while downloading data from Yahoo finance
- Load CSV data from local file
- Multiple data feed
- Multiple strategy
- Set time range in backtest
- Basic Indicators (such as SMA)
- More analyzer
Visualization feature list
- Create the basic layer
- Implement candlestick chart
- Implement line chart
- Add trading orders list
- Add side panel controller
- Add top menu bar
- Set window size and position
- Add benchmark
- Add more details
Paper trading & live trading feature list
- Single live broker: IBKR
- Live trading with single broker
- Risk module
- Online monitor module
Demo
make backtest symbol=SPY
TODO: add more
Quick Install
cargo install golden
Commands
# download csv to data/
golden csv --symbol SPY
# backtest
golden backtest --symbol SPY
# paper trading
golden paper --broker ibkr
Dependencies
~19–43MB
~648K SLoC