pub struct BinanceRawFuturesHttpClient { /* private fields */ }Expand description
Raw HTTP client for Binance Futures REST API.
Implementations§
Source§impl BinanceRawFuturesHttpClient
impl BinanceRawFuturesHttpClient
Sourcepub fn http_client(&self) -> &HttpClient
pub fn http_client(&self) -> &HttpClient
Returns a reference to the underlying HTTP client.
Sourcepub fn new(
product_type: BinanceProductType,
environment: BinanceEnvironment,
api_key: Option<String>,
api_secret: Option<String>,
base_url_override: Option<String>,
recv_window: Option<u64>,
timeout_secs: Option<u64>,
proxy_url: Option<String>,
) -> BinanceFuturesHttpResult<Self>
pub fn new( product_type: BinanceProductType, environment: BinanceEnvironment, api_key: Option<String>, api_secret: Option<String>, base_url_override: Option<String>, recv_window: Option<u64>, timeout_secs: Option<u64>, proxy_url: Option<String>, ) -> BinanceFuturesHttpResult<Self>
Creates a new Binance raw futures HTTP client.
§Errors
Returns an error if credentials are incomplete or the HTTP client fails to build.
Sourcepub async fn get<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceFuturesHttpResult<T>
pub async fn get<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceFuturesHttpResult<T>
Performs a GET request and deserializes the response body.
§Errors
Returns an error if the request fails or response deserialization fails.
Sourcepub async fn post<P, T>(
&self,
path: &str,
params: Option<&P>,
body: Option<Vec<u8>>,
signed: bool,
use_order_quota: bool,
) -> BinanceFuturesHttpResult<T>
pub async fn post<P, T>( &self, path: &str, params: Option<&P>, body: Option<Vec<u8>>, signed: bool, use_order_quota: bool, ) -> BinanceFuturesHttpResult<T>
Performs a POST request with optional body and signed query.
§Errors
Returns an error if the request fails or response deserialization fails.
Sourcepub async fn request_put<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceFuturesHttpResult<T>
pub async fn request_put<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceFuturesHttpResult<T>
Performs a PUT request with signed query.
§Errors
Returns an error if the request fails or response deserialization fails.
Sourcepub async fn request_delete<P, T>(
&self,
path: &str,
params: Option<&P>,
signed: bool,
use_order_quota: bool,
) -> BinanceFuturesHttpResult<T>
pub async fn request_delete<P, T>( &self, path: &str, params: Option<&P>, signed: bool, use_order_quota: bool, ) -> BinanceFuturesHttpResult<T>
Performs a DELETE request with signed query.
§Errors
Returns an error if the request fails or response deserialization fails.
Sourcepub async fn batch_request<T: Serialize>(
&self,
path: &str,
items: &[T],
use_order_quota: bool,
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn batch_request<T: Serialize>( &self, path: &str, items: &[T], use_order_quota: bool, ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Performs a batch POST request with batchOrders parameter.
§Errors
Returns an error if credentials are missing, the request fails, or JSON parsing fails.
Sourcepub async fn batch_request_delete<T: Serialize>(
&self,
path: &str,
items: &[T],
use_order_quota: bool,
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn batch_request_delete<T: Serialize>( &self, path: &str, items: &[T], use_order_quota: bool, ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Performs a batch DELETE request with batchOrders parameter.
§Errors
Returns an error if credentials are missing, the request fails, or JSON parsing fails.
Sourcepub async fn batch_request_put<T: Serialize>(
&self,
path: &str,
items: &[T],
use_order_quota: bool,
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn batch_request_put<T: Serialize>( &self, path: &str, items: &[T], use_order_quota: bool, ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Performs a batch PUT request with batchOrders parameter.
§Errors
Returns an error if credentials are missing, the request fails, or JSON parsing fails.
Sourcepub async fn ticker_24h(
&self,
params: &BinanceTicker24hrParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesTicker24hr>>
pub async fn ticker_24h( &self, params: &BinanceTicker24hrParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesTicker24hr>>
Sourcepub async fn book_ticker(
&self,
params: &BinanceBookTickerParams,
) -> BinanceFuturesHttpResult<Vec<BinanceBookTicker>>
pub async fn book_ticker( &self, params: &BinanceBookTickerParams, ) -> BinanceFuturesHttpResult<Vec<BinanceBookTicker>>
Sourcepub async fn price_ticker(
&self,
symbol: Option<&str>,
) -> BinanceFuturesHttpResult<Vec<BinancePriceTicker>>
pub async fn price_ticker( &self, symbol: Option<&str>, ) -> BinanceFuturesHttpResult<Vec<BinancePriceTicker>>
Sourcepub async fn depth(
&self,
params: &BinanceDepthParams,
) -> BinanceFuturesHttpResult<BinanceOrderBook>
pub async fn depth( &self, params: &BinanceDepthParams, ) -> BinanceFuturesHttpResult<BinanceOrderBook>
Sourcepub async fn mark_price(
&self,
params: &BinanceMarkPriceParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesMarkPrice>>
pub async fn mark_price( &self, params: &BinanceMarkPriceParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesMarkPrice>>
Sourcepub async fn funding_rate(
&self,
params: &BinanceFundingRateParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFundingRate>>
pub async fn funding_rate( &self, params: &BinanceFundingRateParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFundingRate>>
Sourcepub async fn open_interest(
&self,
params: &BinanceOpenInterestParams,
) -> BinanceFuturesHttpResult<BinanceOpenInterest>
pub async fn open_interest( &self, params: &BinanceOpenInterestParams, ) -> BinanceFuturesHttpResult<BinanceOpenInterest>
Sourcepub async fn trades(
&self,
params: &BinanceTradesParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesTrade>>
pub async fn trades( &self, params: &BinanceTradesParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesTrade>>
Sourcepub async fn klines(
&self,
params: &BinanceKlinesParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesKline>>
pub async fn klines( &self, params: &BinanceKlinesParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesKline>>
Sourcepub async fn set_leverage(
&self,
params: &BinanceSetLeverageParams,
) -> BinanceFuturesHttpResult<BinanceLeverageResponse>
pub async fn set_leverage( &self, params: &BinanceSetLeverageParams, ) -> BinanceFuturesHttpResult<BinanceLeverageResponse>
Sourcepub async fn set_margin_type(
&self,
params: &BinanceSetMarginTypeParams,
) -> BinanceFuturesHttpResult<Value>
pub async fn set_margin_type( &self, params: &BinanceSetMarginTypeParams, ) -> BinanceFuturesHttpResult<Value>
Sourcepub async fn query_hedge_mode(
&self,
) -> BinanceFuturesHttpResult<BinanceHedgeModeResponse>
pub async fn query_hedge_mode( &self, ) -> BinanceFuturesHttpResult<BinanceHedgeModeResponse>
Sourcepub async fn create_listen_key(
&self,
) -> BinanceFuturesHttpResult<ListenKeyResponse>
pub async fn create_listen_key( &self, ) -> BinanceFuturesHttpResult<ListenKeyResponse>
Sourcepub async fn keepalive_listen_key(
&self,
listen_key: &str,
) -> BinanceFuturesHttpResult<()>
pub async fn keepalive_listen_key( &self, listen_key: &str, ) -> BinanceFuturesHttpResult<()>
Sourcepub async fn close_listen_key(
&self,
listen_key: &str,
) -> BinanceFuturesHttpResult<()>
pub async fn close_listen_key( &self, listen_key: &str, ) -> BinanceFuturesHttpResult<()>
Sourcepub async fn query_account(
&self,
) -> BinanceFuturesHttpResult<BinanceFuturesAccountInfo>
pub async fn query_account( &self, ) -> BinanceFuturesHttpResult<BinanceFuturesAccountInfo>
Fetches account information including balances and positions.
§Errors
Returns an error if the request fails.
Sourcepub async fn query_positions(
&self,
params: &BinancePositionRiskParams,
) -> BinanceFuturesHttpResult<Vec<BinancePositionRisk>>
pub async fn query_positions( &self, params: &BinancePositionRiskParams, ) -> BinanceFuturesHttpResult<Vec<BinancePositionRisk>>
Sourcepub async fn query_user_trades(
&self,
params: &BinanceUserTradesParams,
) -> BinanceFuturesHttpResult<Vec<BinanceUserTrade>>
pub async fn query_user_trades( &self, params: &BinanceUserTradesParams, ) -> BinanceFuturesHttpResult<Vec<BinanceUserTrade>>
Sourcepub async fn query_order(
&self,
params: &BinanceOrderQueryParams,
) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
pub async fn query_order( &self, params: &BinanceOrderQueryParams, ) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
Queries a single order by order ID or client order ID.
§Errors
Returns an error if the request fails.
Sourcepub async fn query_open_orders(
&self,
params: &BinanceOpenOrdersParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesOrder>>
pub async fn query_open_orders( &self, params: &BinanceOpenOrdersParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesOrder>>
Sourcepub async fn query_all_orders(
&self,
params: &BinanceAllOrdersParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesOrder>>
pub async fn query_all_orders( &self, params: &BinanceAllOrdersParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesOrder>>
Sourcepub async fn submit_order(
&self,
params: &BinanceNewOrderParams,
) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
pub async fn submit_order( &self, params: &BinanceNewOrderParams, ) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
Sourcepub async fn submit_order_list(
&self,
orders: &[BatchOrderItem],
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn submit_order_list( &self, orders: &[BatchOrderItem], ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Submits multiple orders in a single request (up to 5 orders).
§Errors
Returns an error if the batch exceeds 5 orders or the request fails.
Sourcepub async fn modify_order(
&self,
params: &BinanceModifyOrderParams,
) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
pub async fn modify_order( &self, params: &BinanceModifyOrderParams, ) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
Modifies an existing order (price and quantity only).
§Errors
Returns an error if the request fails.
Sourcepub async fn batch_modify_orders(
&self,
modifies: &[BatchModifyItem],
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn batch_modify_orders( &self, modifies: &[BatchModifyItem], ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Modifies multiple orders in a single request (up to 5 orders).
§Errors
Returns an error if the batch exceeds 5 orders or the request fails.
Sourcepub async fn cancel_order(
&self,
params: &BinanceCancelOrderParams,
) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
pub async fn cancel_order( &self, params: &BinanceCancelOrderParams, ) -> BinanceFuturesHttpResult<BinanceFuturesOrder>
Sourcepub async fn cancel_all_orders(
&self,
params: &BinanceCancelAllOrdersParams,
) -> BinanceFuturesHttpResult<BinanceCancelAllOrdersResponse>
pub async fn cancel_all_orders( &self, params: &BinanceCancelAllOrdersParams, ) -> BinanceFuturesHttpResult<BinanceCancelAllOrdersResponse>
Sourcepub async fn batch_cancel_orders(
&self,
cancels: &[BatchCancelItem],
) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
pub async fn batch_cancel_orders( &self, cancels: &[BatchCancelItem], ) -> BinanceFuturesHttpResult<Vec<BatchOrderResult>>
Cancels multiple orders in a single request (up to 5 orders).
§Errors
Returns an error if the batch exceeds 5 orders or the request fails.
Sourcepub async fn submit_algo_order(
&self,
params: &BinanceNewAlgoOrderParams,
) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrder>
pub async fn submit_algo_order( &self, params: &BinanceNewAlgoOrderParams, ) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrder>
Submits a new algo order (conditional order).
Algo orders include STOP_MARKET, STOP (stop-limit), TAKE_PROFIT, TAKE_PROFIT_MARKET, and TRAILING_STOP_MARKET order types.
§Errors
Returns an error if the request fails.
Sourcepub async fn cancel_algo_order(
&self,
params: &BinanceAlgoOrderQueryParams,
) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrderCancelResponse>
pub async fn cancel_algo_order( &self, params: &BinanceAlgoOrderQueryParams, ) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrderCancelResponse>
Cancels an algo order.
Must provide either algo_id or client_algo_id.
§Errors
Returns an error if the request fails.
Sourcepub async fn query_algo_order(
&self,
params: &BinanceAlgoOrderQueryParams,
) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrder>
pub async fn query_algo_order( &self, params: &BinanceAlgoOrderQueryParams, ) -> BinanceFuturesHttpResult<BinanceFuturesAlgoOrder>
Queries a single algo order.
Must provide either algo_id or client_algo_id.
§Errors
Returns an error if the request fails.
Sourcepub async fn query_open_algo_orders(
&self,
params: &BinanceOpenAlgoOrdersParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesAlgoOrder>>
pub async fn query_open_algo_orders( &self, params: &BinanceOpenAlgoOrdersParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesAlgoOrder>>
Sourcepub async fn query_all_algo_orders(
&self,
params: &BinanceAllAlgoOrdersParams,
) -> BinanceFuturesHttpResult<Vec<BinanceFuturesAlgoOrder>>
pub async fn query_all_algo_orders( &self, params: &BinanceAllAlgoOrdersParams, ) -> BinanceFuturesHttpResult<Vec<BinanceFuturesAlgoOrder>>
Queries all algo orders including historical (7-day limit).
§Errors
Returns an error if the request fails.
Sourcepub async fn cancel_all_algo_orders(
&self,
params: &BinanceCancelAllAlgoOrdersParams,
) -> BinanceFuturesHttpResult<BinanceCancelAllOrdersResponse>
pub async fn cancel_all_algo_orders( &self, params: &BinanceCancelAllAlgoOrdersParams, ) -> BinanceFuturesHttpResult<BinanceCancelAllOrdersResponse>
Trait Implementations§
Source§impl Clone for BinanceRawFuturesHttpClient
impl Clone for BinanceRawFuturesHttpClient
Source§fn clone(&self) -> BinanceRawFuturesHttpClient
fn clone(&self) -> BinanceRawFuturesHttpClient
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for BinanceRawFuturesHttpClient
impl !RefUnwindSafe for BinanceRawFuturesHttpClient
impl Send for BinanceRawFuturesHttpClient
impl Sync for BinanceRawFuturesHttpClient
impl Unpin for BinanceRawFuturesHttpClient
impl UnsafeUnpin for BinanceRawFuturesHttpClient
impl !UnwindSafe for BinanceRawFuturesHttpClient
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more