rust-bybit 0.2.0

Rust API connector for Bybit's WebSocket V5 API
Documentation
use bybit::ws::response::PrivateResponse;
use bybit::WebSocketApiClient;
use std::env;

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

    let api_key: String = env::var("BYBIT_API_KEY").unwrap();
    let secret: String = env::var("BYBIT_SECRET").unwrap();

    let mut client = WebSocketApiClient::private()
        .testnet()
        .build_with_credentials(api_key, secret);

    client.subscribe_position();
    client.subscribe_execution();
    client.subscribe_order();
    client.subscribe_wallet();
    client.subscribe_greek();

    if let Err(e) = client.run(|res| match res {
        PrivateResponse::Position(res) => println!("Position: {:?}", res),
        PrivateResponse::Execution(res) => println!("Execution: {:?}", res),
        PrivateResponse::Order(res) => println!("Order: {:?}", res),
        PrivateResponse::Wallet(res) => println!("Wallet: {:?}", res),
        PrivateResponse::Greek(res) => println!("Greek: {:?}", res),
        PrivateResponse::Pong(res) => println!("Pong: {:?}", res),
        PrivateResponse::Op(res) => println!("Op: {:?}", res),
    }) {
        eprintln!("Error: {e}")
    }
}