The Problem
Writing crypto trading bots from scratch sucks. Most frameworks are either so bloated you need a PhD to run a backtest, or so limited you can't do anything but buy and hope. You want to test ideas, optimize them, and actually send trades—without spending weeks wiring up boilerplate or fighting with janky APIs.
What This Does
jesse gives you a real trading framework, not a toy script. Drop your strategies into Python classes (look in jesse/cli.py for the entry point and jesse/indicators/ for the absurdly huge pile of indicators—seriously, it’s like a TA-Lib buffet). It handles historical data, simulation, live trading, order routing, and risk management. The jesse/controllers/ folder is packed with logic for backtesting, live trading, optimization, and Monte Carlo analysis. Want to add a new exchange? Check out jesse/exchanges/. Need to tweak a strategy? Built-in code editor—no more Alt-Tab gymnastics.
Docker support means setup is actually tolerable. The Dockerfile keeps your environment sane, and GitHub Actions run your tests (if you bother to write any—there's only two test files, so... yeah).
Real-World Use
Let’s say you want a moving average crossover bot. Write your strategy class, drop it in, and use something like:
Fire up a backtest with the CLI, tune params in config, and run it live—no hand-rolling order logic, no cobbling together CSVs. You can even stress-test your strategy with Monte Carlo, right from jesse/controllers/montecarlocontroller.py. Indicators? There’s a file for every buzzword in technical analysis history under jesse/indicators/.
The Bottom Line
If you’re a Python dev who wants to build, backtest, and actually trade crypto strategies without reinventing the wheel, jesse is worth your time. The learning curve exists, but it’s saner than most. Not built for click-traders or spreadsheet jockeys—this is for folks who want code, not point-and-click GUIs. Could use more tests, but at least the boilerplate is handled.