Struct cfix::TradeClient

source ·
pub struct TradeClient { /* private fields */ }

Implementations§

source§

impl TradeClient

source

pub fn new( host: String, login: String, password: String, sender_comp_id: String, heartbeat_interval: Option<u32> ) -> Self

source

pub fn get_timeout(&self) -> u64

source

pub fn set_timeout(&mut self, timeout: u64)

source

pub fn register_trade_handler_arc<T: TradeDataHandler + Send + Sync + 'static>( &mut self, handler: Arc<T> )

source

pub fn register_trade_handler<T: TradeDataHandler + Send + Sync + 'static>( &mut self, handler: T )

source

pub fn register_connection_handler<T: ConnectionHandler + Send + Sync + 'static>( &mut self, handler: T )

source

pub fn register_connection_handler_arc<T: ConnectionHandler + Send + Sync + 'static>( &mut self, handler: Arc<T> )

source

pub async fn connect(&mut self) -> Result<(), Error>

source

pub async fn disconnect(&mut self) -> Result<(), Error>

source

pub fn is_connected(&self) -> bool

source

pub async fn fetch_security_list(&self) -> Result<Vec<SymbolInformation>, Error>

Fetch the security list from the server.

This is asn asynchronous method that sends a request to the server and waits for the response. It returns a result containing the data if the request succesful, or an error if it fails.

source

pub async fn fetch_positions(&self) -> Result<Vec<PositionReport>, Error>

source

pub async fn fetch_all_order_status( &self, issue_data: Option<NaiveDateTime> ) -> Result<Vec<ExecutionReport>, Error>

source

pub async fn new_market_order( &self, symbol: u32, side: Side, order_qty: f64, cl_ord_id: Option<String>, custom_ord_label: Option<String> ) -> Result<ExecutionReport, Error>

source

pub async fn new_limit_order( &self, symbol: u32, side: Side, price: f64, order_qty: f64, cl_ord_id: Option<String>, expire_time: Option<NaiveDateTime>, custom_ord_label: Option<String> ) -> Result<ExecutionReport, Error>

source

pub async fn new_stop_order( &self, symbol: u32, side: Side, stop_px: f64, order_qty: f64, cl_ord_id: Option<String>, expire_time: Option<NaiveDateTime>, custom_ord_label: Option<String> ) -> Result<ExecutionReport, Error>

source

pub async fn close_position( &self, pos_report: PositionReport, custom_ord_label: Option<String> ) -> Result<ExecutionReport, Error>

source

pub async fn adjust_position_size( &self, pos_id: String, symbol_id: u32, lot: f64, side: Side, custom_ord_label: Option<String> ) -> Result<ExecutionReport, Error>

Adjusts the size of a position.

This method takes a position id, symbol_id, a side (buy or sell), and a lot size. If the position exists, it adjusts the size of the position by adding or subtracting the given lot size. If the side is ‘buy’, the lot size is added to the position. If the side is ‘sell’, the lot size is subtracted from the position.

source

pub async fn replace_order( &self, org_cl_ord_id: Option<String>, order_id: Option<String>, order_qty: f64, price: Option<f64>, stop_px: Option<f64>, expire_time: Option<NaiveDateTime> ) -> Result<ExecutionReport, Error>

Replace order request

§Arguments
  • orig_cl_ord_id - A unique identifier for the order, which is going to be canceled, allocated by the client.
  • order_id - Unique ID of an order, returned by the server. …

Either orig_cl_ord_id or order_id must be passed to this function. If both are None, the function will return an error.

source

pub async fn cancel_order( &self, org_cl_ord_id: Option<String>, order_id: Option<String> ) -> Result<ExecutionReport, Error>

Order cancel reqeuest

§Arguments
  • orig_cl_ord_id - A unique identifier for the order, which is going to be canceled, allocated by the client.
  • order_id - Unique ID of an order, returned by the server.

Either orig_cl_ord_id or order_id must be passed to this function. If both are None, the function will return an error.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V