Expand description

Multi-threaded trading Engine capable of trading with an arbitrary number market pairs. Contains a Trader for each Market pair that consists of it’s own Data, Strategy & Execution components, as well as shared access to a global Portfolio.

Modules

Barter Engine module specific errors.

Contains the trading event loop for a Trader capable of trading a single market pair. A Trader has it’s own Data handler, Strategy & Execution handler, as well as shared access to a global Portfolio instance.

Structs

Multi-threaded Trading Engine capable of trading with an arbitrary number of Trader market pairs. Each Trader operates on it’s own thread and has it’s own Data Handler, Strategy & Execution Handler, as well as shared access to a global Portfolio instance. A graceful remote shutdown is made possible by sending a [Message] to the Engine’s broadcast::Receiver termination_rx.

Builder to construct Engine instances.

Lego components for constructing an Engine via the new() constructor method.

Enums

Commands that can be actioned by an Engine and it’s associated Traders.