upstox-rust-sdk 0.2.0

SDK to access Upstox's Uplink v2 APIs programmatically
Documentation
use serde::{Deserialize, Serialize};

#[derive(Deserialize, Serialize, Debug)]
pub struct OptionMarketData {
    pub ltp: f64,
    pub close_price: f64,
    pub volume: u64,
    pub oi: f64,
    pub bid_price: f64,
    pub bid_qty: u64,
    pub ask_price: f64,
    pub ask_qty: u64,
    pub prev_oi: f64,
}

#[derive(Deserialize, Serialize, Debug)]
pub struct OptionGreeks {
    pub vega: f64,
    pub theta: f64,
    pub gamma: f64,
    pub delta: f64,
    pub iv: f64,
}

#[derive(Deserialize, Serialize, Debug)]
pub struct OptionData {
    pub instrument_key: String,
    pub market_data: OptionMarketData,
    pub option_greeks: OptionGreeks,
}

#[derive(Deserialize, Serialize, Debug)]
pub struct OptionChainResponse {
    pub expiry: String,
    pub pcr: Option<f64>,
    pub strike_price: f64,
    pub underlying_key: String,
    pub underlying_spot_price: f64,
    pub call_options: OptionData,
    pub put_options: OptionData,
}