tesser-backtester

Crates.iotesser-backtester
lib.rstesser-backtester
version0.9.1
created_at2025-11-19 06:28:13.621064+00
updated_at2025-11-27 09:36:16.954733+00
descriptionBacktesting harness that replays historical data through Tesser strategies
homepage
repositoryhttps://github.com/tesserspace/tesser
max_upload_size
id1939508
size125,890
Zijing Zhang (pluveto)

documentation

README

tesser-backtester

Event-driven simulation engine that replays historical data through strategies and the execution stack.

Overview

  • Wires Strategy, ExecutionEngine, Portfolio, and tesser-paper into a deterministic loop.
  • Supports configurable history length, latency (in candles), slippage, and fees via BacktestConfig.
  • Produces BacktestReport summaries (signals emitted, orders sent, equity, dropped orders).

Usage

Most users drive the backtester through tesser-cli backtest run, but you can embed it yourself:

let cfg = BacktestConfig::new(symbol.clone());
let market_registry = Arc::new(MarketRegistry::load_from_file("config/markets.toml")?);
let stream: BacktestStream = Box::new(PaperMarketStream::from_data(symbol.clone(), Vec::new(), candles));
let report = Backtester::new(cfg, strategy, execution, None, market_registry, Some(stream), None)
    .run()
    .await?;

Tests

cargo test -p tesser-backtester
Commit count: 0

cargo fmt