Skip to main content

tesser/
lib.rs

1#![allow(ambiguous_glob_reexports)]
2
3//! Tesser aggregate crate that re-exports the main components for downstream users.
4
5pub use tesser_backtester as backtester;
6#[cfg(feature = "binance")]
7pub use tesser_binance as binance;
8pub use tesser_broker as broker;
9#[cfg(feature = "bybit")]
10pub use tesser_bybit as bybit;
11pub use tesser_cli;
12pub use tesser_config as config;
13pub use tesser_core as core;
14pub use tesser_data as data;
15pub use tesser_events as events;
16pub use tesser_execution as execution;
17pub use tesser_indicators as indicators;
18pub use tesser_markets as markets;
19pub use tesser_paper as paper;
20pub use tesser_portfolio as portfolio;
21pub use tesser_strategy as strategy;
22pub use tesser_strategy_macros as strategy_macros;
23
24/// Convenience entrypoint to run the CLI directly from the facade crate.
25pub async fn run_cli() -> anyhow::Result<()> {
26    tesser_cli::run_app().await
27}
28
29/// Convenience prelude to pull commonly used items into scope.
30pub mod prelude {
31    pub use tesser_backtester::{BacktestConfig, BacktestMode, BacktestReport, Backtester};
32    #[cfg(feature = "binance")]
33    pub use tesser_binance::*;
34    pub use tesser_broker::*;
35    #[cfg(feature = "bybit")]
36    pub use tesser_bybit::*;
37    pub use tesser_config::*;
38    pub use tesser_core::*;
39    pub use tesser_data::*;
40    pub use tesser_events::*;
41    pub use tesser_execution::*;
42    pub use tesser_indicators::*;
43    pub use tesser_markets::*;
44    pub use tesser_paper::*;
45    pub use tesser_portfolio::*;
46    pub use tesser_strategy::{register_strategy, Strategy, *};
47}