// the find
thrasher-corp/gocryptotrader
A cryptocurrency trading bot and framework supporting multiple exchanges written in Golang.
GoCryptoTrader is a Go framework and bot for algorithmic cryptocurrency trading, supporting 20+ exchanges via REST and WebSocket APIs. It is aimed at developers who want to build their own trading strategies on top of a unified exchange abstraction rather than rolling their own API clients. The backtester is a genuine differentiator — event-driven, supports live and historical data, and has a plugin system for custom strategies.
1. Exchange coverage is broad and actively maintained — 20+ exchanges with both REST and WebSocket, and the support table is honest about gaps (no hand-waving FIX support that doesn't exist). 2. The backtester is well-architected: event-driven with proper slippage modeling, funding tracking, and a statistics layer that outputs Sharpe/Sortino/drawdown — not just PnL. 3. gRPC-first control plane with a CLI client (gctcli) means you can operate the bot remotely without building a custom API. 4. HTTP mock testing layer for exchanges means you can write deterministic tests without hitting live APIs or recording cassettes manually.
1. The README explicitly warns 'not ready for production' and binaries haven't shipped yet — after years of development, that's a signal about stability expectations, not just a formality. 2. Strategy support is thin out of the box: DCA, RSI, and a Binance cash-and-carry are the bundled examples. The plugin system exists but documentation on writing a real production strategy is sparse. 3. Config is a single JSON file with AES256 encryption — fine for one machine, but there's no secret management story for teams or CI environments. 4. Exchange wrapper quality is uneven; some have full WebSocket order management, others are REST-only or marked NA, and there's no indication which wrappers are actively tested vs. bit-rotting.