A modern crypto trading bot framework written in Go.
You can use BBGO to run the built-in strategies.
You can use BBGO's trading unit and back-test unit to implement your own strategies.
You can use BBGO's underlying common exchange API; currently, it supports 8 major exchanges, so you don't have to repeat the implementation.
pandas.Series(series)(usage):-tags dnum).

| strategy | description | type | backtest support |
|---|---|---|---|
| grid | the first generation grid strategy, it provides more flexibility, but you need to prepare inventories | maker | |
| grid2 | the second generation grid strategy, it can convert your quote asset into a grid, supports base+quote mode | maker | |
| bollgrid | strategy implements a basic grid strategy with the built-in bollinger indicator | maker | |
| xmaker | cross exchange market making strategy, it hedges your inventory risk on the other side | maker | no |
| xdepthmaker | cross exchange depth-based market making strategy | maker | no |
| xfixedmaker | cross exchange fixed-spread market making strategy | maker | no |
| xnav | this strategy helps you record the current net asset value | tool | no |
| xalign | this strategy aligns your balance position automatically | tool | no |
| xfunding | a funding rate fee strategy | funding | no |
| autoborrow | this strategy uses margin to borrow assets, to help you keep a minimal balance | tool | no |
| autobuy | automatically buys a specific asset periodically | tool | no |
| pivotshort | this strategy finds the pivot low and enters the trade when the price breaks the previous low | long/short | |
| schedule | this strategy buy/sell with a fixed quantity periodically, you can use this as a single DCA, or to refill the fee asset like BNB | tool | |
| irr | this strategy opens the position based on the predicated return rate | long/short | |
| bollmaker | this strategy holds a long-term long/short position, places maker orders on both sides, and uses a bollinger band to control the position size | maker | |
| wall | this strategy creates a wall (large amount of order) on the order book | maker | no |
| scmaker | this market making strategy is designed for stable coin markets, like USDC/USDT | maker | |
| drift | long/short | ||
| rsicross | this strategy opens a long position when the fast rsi crosses over the slow rsi, this is a demo strategy for using the v2 indicator | long/short | |
| emacross | EMA crossover strategy | long/short | |
| marketcap | this strategy implements a strategy that rebalances the portfolio based on the market capitalization | rebalance | no |
| supertrend | this strategy uses DEMA and Supertrend indicator to open the long/short position | long/short | |
| trendtrader | this strategy opens a long/short position based on the trendline breakout | long/short | |
| elliottwave | long/short | ||
| ewoDgtrd | long/short | ||
| fixedmaker | maker | ||
| factorzoo | long/short | ||
| fmaker | maker | ||
| linregmaker | a linear regression based market maker | maker | |
| liquiditymaker | provides liquidity on the order book | maker | |
| audacitymaker | an audacious market making strategy | maker | |
| convert | convert strategy is a tool that helps you convert a specific asset to a target asset | tool | no |
| dca | dollar-cost averaging strategy | tool | |
| dca2 | second generation dollar-cost averaging strategy | tool | |
| rebalance | rebalances your portfolio based on target weights | rebalance | no |
| deposit2transfer | automatically transfers deposits to another account | tool | no |
| sentinel | monitors exchange connectivity and health | tool | no |
| tri | triangular arbitrage strategy | arbitrage | no |
| random | places random orders for testing purposes | tool | no |
Go SDK 1.25
Linux / MacOS / Windows (WSL)
Get your exchange API key and secret after you register the accounts (you can choose one or more exchanges):