Skip to main content

Matcher

Trait Matcher 

Source
pub trait Matcher {
    // Required methods
    fn add_order(&mut self, order: Order);
    fn cancel_order(&mut self, order_id: u64);
    fn cancel_all(&mut self);
    fn process_quote(&mut self, quote: &MarketState) -> Vec<FillEvent>;
    fn get_orders(&self) -> &Vec<Order>;

    // Provided method
    fn augment_parameters(&self) -> HashMap<String, f64> { ... }
}

Required Methods§

Source

fn add_order(&mut self, order: Order)

Adds a new order to the matcher

Source

fn cancel_order(&mut self, order_id: u64)

Cancels a specific order by ID

Source

fn cancel_all(&mut self)

Cancels all open orders

Source

fn process_quote(&mut self, quote: &MarketState) -> Vec<FillEvent>

Processes a new quote against open orders and returns any fill events

Source

fn get_orders(&self) -> &Vec<Order>

Returns a reference to the current list of orders

Provided Methods§

Source

fn augment_parameters(&self) -> HashMap<String, f64>

Returns runtime state parameters to be injected into each tick’s MarketState before strategies are called. The default returns an empty map; override in matchers that carry observable state (e.g. Hawkes intensity).

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§