pub struct ExecutionEngine { /* private fields */ }Expand description
Translates signals into orders using a provided ExecutionClient.
Implementations§
Source§impl ExecutionEngine
impl ExecutionEngine
Sourcepub fn new(
client: Arc<dyn ExecutionClient>,
sizer: Box<dyn OrderSizer>,
risk: Arc<dyn PreTradeRiskChecker>,
) -> Self
pub fn new( client: Arc<dyn ExecutionClient>, sizer: Box<dyn OrderSizer>, risk: Arc<dyn PreTradeRiskChecker>, ) -> Self
Instantiate the engine with its dependencies.
Sourcepub async fn handle_signal(
&self,
signal: Signal,
ctx: RiskContext,
) -> BrokerResult<Option<Order>>
pub async fn handle_signal( &self, signal: Signal, ctx: RiskContext, ) -> BrokerResult<Option<Order>>
Consume a signal and forward it to the broker.
pub fn client(&self) -> Arc<dyn ExecutionClient>
pub fn sizer(&self) -> &dyn OrderSizer
pub fn credentials(&self) -> Option<BybitCredentials>
pub fn ws_url(&self) -> String
Auto Trait Implementations§
impl Freeze for ExecutionEngine
impl !RefUnwindSafe for ExecutionEngine
impl Send for ExecutionEngine
impl Sync for ExecutionEngine
impl Unpin for ExecutionEngine
impl !UnwindSafe for ExecutionEngine
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more