pub struct OkxWs<C: WsConnector = TungsteniteConnector> { /* private fields */ }Expand description
OKX WebSocket client.
Implementations§
Source§impl OkxWs<TungsteniteConnector>
impl OkxWs<TungsteniteConnector>
Sourcepub fn public() -> OkxWsBuilder<TungsteniteConnector>
pub fn public() -> OkxWsBuilder<TungsteniteConnector>
Start building a public WebSocket client.
Sourcepub fn business() -> OkxWsBuilder<TungsteniteConnector>
pub fn business() -> OkxWsBuilder<TungsteniteConnector>
Start building a business WebSocket client.
Sourcepub fn private(credentials: Credentials) -> OkxWsBuilder<TungsteniteConnector>
pub fn private(credentials: Credentials) -> OkxWsBuilder<TungsteniteConnector>
Start building a private WebSocket client.
Source§impl<C: WsConnector> OkxWs<C>
impl<C: WsConnector> OkxWs<C>
Sourcepub async fn subscribe(&mut self, args: &[Arg]) -> Result<(), Error>
pub async fn subscribe(&mut self, args: &[Arg]) -> Result<(), Error>
Subscribe to one or more channel arguments.
OKX docs: https://www.okx.com/docs-v5/en/#overview-websocket-subscribe
Sourcepub async fn unsubscribe(&mut self, args: &[Arg]) -> Result<(), Error>
pub async fn unsubscribe(&mut self, args: &[Arg]) -> Result<(), Error>
Unsubscribe from one or more channel arguments.
OKX docs: https://www.okx.com/docs-v5/en/#overview-websocket-unsubscribe
Source§impl<C: WsConnector> OkxWs<C>
impl<C: WsConnector> OkxWs<C>
Sourcepub async fn send_request<A: Serialize>(
&mut self,
id: impl Into<String>,
op: impl Into<String>,
args: &[A],
) -> Result<(), Error>
pub async fn send_request<A: Serialize>( &mut self, id: impl Into<String>, op: impl Into<String>, args: &[A], ) -> Result<(), Error>
Send a raw WebSocket operation request.
The response is returned asynchronously through
WsEvent::Operation.
OKX docs: https://www.okx.com/docs-v5/en/#overview-websocket
Sourcepub async fn send_request_with_expiry<A: Serialize>(
&mut self,
id: impl Into<String>,
op: impl Into<String>,
exp_time: Option<String>,
args: &[A],
) -> Result<(), Error>
pub async fn send_request_with_expiry<A: Serialize>( &mut self, id: impl Into<String>, op: impl Into<String>, exp_time: Option<String>, args: &[A], ) -> Result<(), Error>
Send a raw WebSocket operation request with an optional effective deadline.
exp_time is a Unix timestamp in milliseconds. OKX discards the request
when it reaches the matching trading engine after this deadline.
OKX docs: https://www.okx.com/docs-v5/en/#overview-websocket
Source§impl<C: WsConnector> OkxWs<C>
impl<C: WsConnector> OkxWs<C>
Sourcepub async fn place_spread_order_ws(
&mut self,
id: impl Into<String>,
request: &PlaceSpreadOrderRequest,
) -> Result<(), Error>
pub async fn place_spread_order_ws( &mut self, id: impl Into<String>, request: &PlaceSpreadOrderRequest, ) -> Result<(), Error>
Send sprd-order to place a spread order over the business WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#spread-trading-websocket-trade-api-ws-place-order
Sourcepub async fn amend_spread_order_ws(
&mut self,
id: impl Into<String>,
request: &AmendSpreadOrderRequest,
) -> Result<(), Error>
pub async fn amend_spread_order_ws( &mut self, id: impl Into<String>, request: &AmendSpreadOrderRequest, ) -> Result<(), Error>
Send sprd-amend-order to amend a spread order over the business WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#spread-trading-websocket-trade-api-ws-amend-order
Sourcepub async fn cancel_spread_order_ws(
&mut self,
id: impl Into<String>,
request: &CancelSpreadOrderRequest,
) -> Result<(), Error>
pub async fn cancel_spread_order_ws( &mut self, id: impl Into<String>, request: &CancelSpreadOrderRequest, ) -> Result<(), Error>
Send sprd-cancel-order to cancel a spread order over the business WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#spread-trading-websocket-trade-api-ws-cancel-order
Sourcepub async fn mass_cancel_spread_ws(
&mut self,
id: impl Into<String>,
request: &MassCancelSpreadOrdersRequest,
) -> Result<(), Error>
pub async fn mass_cancel_spread_ws( &mut self, id: impl Into<String>, request: &MassCancelSpreadOrdersRequest, ) -> Result<(), Error>
Send sprd-mass-cancel to cancel spread orders over the business WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#spread-trading-websocket-trade-api-ws-cancel-all-orders
Source§impl<C: WsConnector> OkxWs<C>
impl<C: WsConnector> OkxWs<C>
Sourcepub async fn place_order_ws(
&mut self,
id: impl Into<String>,
request: &PlaceOrderRequest<'_>,
) -> Result<(), Error>
pub async fn place_order_ws( &mut self, id: impl Into<String>, request: &PlaceOrderRequest<'_>, ) -> Result<(), Error>
Send order to place one order over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-place-order
Sourcepub async fn place_orders_ws(
&mut self,
id: impl Into<String>,
requests: &[PlaceOrderRequest<'_>],
) -> Result<(), Error>
pub async fn place_orders_ws( &mut self, id: impl Into<String>, requests: &[PlaceOrderRequest<'_>], ) -> Result<(), Error>
Send batch-orders to place multiple orders over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-place-multiple-orders
Sourcepub async fn cancel_order_ws(
&mut self,
id: impl Into<String>,
request: &CancelOrderRequest<'_>,
) -> Result<(), Error>
pub async fn cancel_order_ws( &mut self, id: impl Into<String>, request: &CancelOrderRequest<'_>, ) -> Result<(), Error>
Send cancel-order to cancel one order over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-cancel-order
Sourcepub async fn cancel_orders_ws(
&mut self,
id: impl Into<String>,
requests: &[CancelOrderRequest<'_>],
) -> Result<(), Error>
pub async fn cancel_orders_ws( &mut self, id: impl Into<String>, requests: &[CancelOrderRequest<'_>], ) -> Result<(), Error>
Send batch-cancel-orders to cancel multiple orders over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-cancel-multiple-orders
Sourcepub async fn amend_order_ws(
&mut self,
id: impl Into<String>,
request: &AmendOrderRequest<'_>,
) -> Result<(), Error>
pub async fn amend_order_ws( &mut self, id: impl Into<String>, request: &AmendOrderRequest<'_>, ) -> Result<(), Error>
Send amend-order to amend one order over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-amend-order
Sourcepub async fn amend_orders_ws(
&mut self,
id: impl Into<String>,
requests: &[AmendOrderRequest<'_>],
) -> Result<(), Error>
pub async fn amend_orders_ws( &mut self, id: impl Into<String>, requests: &[AmendOrderRequest<'_>], ) -> Result<(), Error>
Send batch-amend-orders to amend multiple orders over WebSocket.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-amend-multiple-orders
Sourcepub async fn mass_cancel_ws(
&mut self,
id: impl Into<String>,
request: &MassCancelRequest,
) -> Result<(), Error>
pub async fn mass_cancel_ws( &mut self, id: impl Into<String>, request: &MassCancelRequest, ) -> Result<(), Error>
Send mass-cancel to cancel market-maker-protection orders.
OKX docs: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-mass-cancel-order