Jesse: Framework di Algo-Trading Crypto con Motore al Minuto in Python e Rust

La maggior parte dei motori di backtesting open-source si divide in due categorie: stack accademici che testano egregiamente ma sono inutili nel trading reale, e terminali collaudati che tradano ma non permettono una ricerca adeguata. Jesse cerca di essere entrambi — un framework di crypto trading con un motore unificato per backtesting, ottimizzazione e (tramite plugin) trading live.
Architettura: Non una Libreria, ma una Pipeline
Jesse è un bundle di motore di esecuzione delle strategie + API + UI: la CLI avvia uvicorn con FastAPI, PostgreSQL tramite Peewee, LSP per l'editor di strategie e il plugin opzionale jesse-live.
Simulazione al Minuto: la "Fonte di Verità"

Un invariante critico: nei backtest vengono accettate solo candele a 1 minuto. I timeframe superiori sono aggregati — la strategia 1h scatta ogni 60 minuti, ma gli ordini vengono eseguiti all'interno di ogni minuto tramite high/low.
from jesse.research import backtest
result = backtest(
config,
routes=[("Binance", "BTC-USDT", "4h", "MyStrategy")],
candles=candles_1m, # strictly 60_000 ms between candles
)
Strategia: una Macchina a Stati con Ordini Dichiarativi
def go_long(self):
qty = utils.size_to_qty(self.balance * 0.5, self.price)
self.buy = qty, self.price
self.stop_loss = qty, self.price * 0.97
self.take_profit = qty, self.price * 1.05
Il sistema decide: market, limit o stop — in base alla posizione del prezzo rispetto al valore corrente. In modalità live, il prezzo viene arrotondato in base alla precisione dell'exchange.
Ottimizzazione: Eliminare il Rumore, Non Massimizzare il Profitto
La funzione di fitness combatte l'overfitting: filtro minimo di 5 trade, conteggio dei trade normalizzato logaritmicamente, doppia validazione train/test e Sharpe "intelligente" con penalità per autocorrelazione.
Rust Sotto il Cofano
Gli indicatori (EMA, RSI, MACD, ATR…) usano jesse-rust. Anche le operazioni aritmetiche di base sono in Rust: l'accumulo di errori in virgola mobile su migliaia di trade trasforma i backtest in fiction.
Link
- 💻 GitHub: jesse-ai/jesse
- 🌐 Sito web: jesse.trade
- 📄 Licenza: MIT
Conclusione
Jesse tenta di ridurre l'algo-trading crypto a una pipeline ripetibile: motore al minuto, Strategy rigorosa, indicatori Rust, API di ricerca senza perdite di stato, ottimizzazione con validazione sul periodo di test.
Autori
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.