← Volver a los artículos
April 19, 2026
5 min de lectura

Jesse: framework de algo-trading para cripto con motor basado en minutos en Python y Rust

Jesse: framework de algo-trading para cripto con motor basado en minutos en Python y Rust
#jesse
#algo-trading
#crypto
#backtest
#python
#rust
#review
#open-source

Jesse — algo-trading framework

La mayoría de los motores de backtesting open-source se dividen en dos bandos: stacks académicos que prueban de maravilla pero son inútiles para el trading real, y terminales curtidos en batalla que operan pero no permiten investigar como es debido. Jesse intenta ser ambas cosas a la vez: un framework de trading cripto con un motor unificado para backtesting, optimización y (mediante plugin) trading en vivo.

Arquitectura: no es una librería, es un pipeline

Jesse es un paquete de motor de ejecución de estrategias + API + UI: la CLI lanza uvicorn con FastAPI, PostgreSQL a través de Peewee, LSP para el editor de estrategias y, opcionalmente, el plugin jesse-live.

Simulación basada en minutos: la "fuente de verdad"

Jesse minute simulation

Un invariante crítico: en los backtests solo se aceptan velas de 1 minuto. Los timeframes superiores son agregados — la estrategia de 1h se dispara cada 60 minutos, pero las órdenes se ejecutan dentro de cada minuto según el 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
)

Estrategia: una máquina de estados con órdenes declarativas

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

El sistema decide: mercado, límite o stop, en función de la posición del precio respecto al precio actual. En modo live, el precio se redondea según la precisión del exchange.

Optimización: reducir el ruido, no maximizar el beneficio

La función de fitness combate el overfitting: filtro de mínimo 5 operaciones, número de operaciones log-normalizado, validación dual train/test y un Sharpe "inteligente" con penalización por autocorrelación.

Rust bajo el capó

Los indicadores (EMA, RSI, MACD, ATR…) usan jesse-rust. Incluso la aritmética básica está en Rust: la acumulación de errores de coma flotante a lo largo de miles de operaciones convierte los backtests en ficción.

Enlaces

Conclusión

Jesse intenta reducir el algo-trading cripto a un pipeline repetible: motor por minutos, clase Strategy estricta, indicadores en Rust, API de investigación sin fugas de estado y optimización con validación de periodo de test.

blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

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.

Newsletter

Mantente a la vanguardia

Suscríbete a nuestro boletín para recibir información exclusiva sobre trading con IA, análisis de mercado y actualizaciones de la plataforma.

Respetamos tu privacidad. Puedes darte de baja en cualquier momento.