rust-bybit 0.2.0

Rust API connector for Bybit's WebSocket V5 API
Documentation
use bybit::ws::future;
use bybit::ws::response::FuturePublicResponse;
use bybit::KlineInterval;
use bybit::WebSocketApiClient;

fn main() {
    env_logger::init();

    let mut client = WebSocketApiClient::future_inverse().build();

    let symbol = "ETHUSD";

    client.subscribe_orderbook(symbol, future::OrderbookDepth::Level1);
    client.subscribe_orderbook(symbol, future::OrderbookDepth::Level50);
    client.subscribe_trade(symbol);
    client.subscribe_ticker(symbol);
    client.subscribe_kline(symbol, KlineInterval::Min1);
    client.subscribe_liquidation(symbol);

    if let Err(e) = client.run(|res| match res {
        FuturePublicResponse::Orderbook(res) => println!("Orderbook: {:?}", res),
        FuturePublicResponse::Trade(res) => println!("Trade: {:?}", res),
        FuturePublicResponse::Ticker(res) => println!("Ticker: {:?}", res),
        FuturePublicResponse::Kline(res) => println!("Kline: {:?}", res),
        FuturePublicResponse::Liquidation(res) => println!("Liquidation: {:?}", res),
        FuturePublicResponse::Op(res) => println!("Op: {:?}", res),
    }) {
        eprintln!("Error: {e}")
    }
}