chapaty 1.1.2

An event-driven Rust engine for building and evaluating quantitative trading agents. Features a Gym-style API for algorithmic backtesting and reinforcement learning.
use crate::{
    error::ChapatyResult,
    gym::{
        Reward, StepOutcome,
        trading::{action::Actions, observation::Observation},
    },
};

pub mod action;
pub mod action_space;
pub mod agent;
pub mod config;
pub(crate) mod context;
pub mod env;
pub mod factory;
pub(crate) mod ledger;
pub mod observation;
pub mod state;
pub mod types;

pub use factory::{load, make};

pub trait Env {
    fn reset(&mut self) -> ChapatyResult<(Observation<'_>, Reward, StepOutcome)>;
    fn step(&mut self, actions: Actions) -> ChapatyResult<(Observation<'_>, Reward, StepOutcome)>;
}