#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct CalendarDay {
pub date: i32,
pub is_open: i32,
pub open_time: i32,
pub close_time: i32,
pub status: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct EodTick {
pub ms_of_day: i32,
pub ms_of_day2: i32,
pub open: f64,
pub high: f64,
pub low: f64,
pub close: f64,
pub volume: i64,
pub count: i64,
pub bid_size: i32,
pub bid_exchange: i32,
pub bid: f64,
pub bid_condition: i32,
pub ask_size: i32,
pub ask_exchange: i32,
pub ask: f64,
pub ask_condition: i32,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct GreeksAllTick {
pub ms_of_day: i32,
pub bid: f64,
pub ask: f64,
pub implied_volatility: f64,
pub delta: f64,
pub gamma: f64,
pub theta: f64,
pub vega: f64,
pub rho: f64,
pub iv_error: f64,
pub vanna: f64,
pub charm: f64,
pub vomma: f64,
pub veta: f64,
pub speed: f64,
pub zomma: f64,
pub color: f64,
pub ultima: f64,
pub d1: f64,
pub d2: f64,
pub dual_delta: f64,
pub dual_gamma: f64,
pub epsilon: f64,
pub lambda: f64,
pub vera: f64,
pub underlying_ms_of_day: i32,
pub underlying_price: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct GreeksFirstOrderTick {
pub ms_of_day: i32,
pub bid: f64,
pub ask: f64,
pub delta: f64,
pub theta: f64,
pub vega: f64,
pub rho: f64,
pub epsilon: f64,
pub lambda: f64,
pub implied_volatility: f64,
pub iv_error: f64,
pub underlying_ms_of_day: i32,
pub underlying_price: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct GreeksSecondOrderTick {
pub ms_of_day: i32,
pub bid: f64,
pub ask: f64,
pub gamma: f64,
pub vanna: f64,
pub charm: f64,
pub vomma: f64,
pub veta: f64,
pub implied_volatility: f64,
pub iv_error: f64,
pub underlying_ms_of_day: i32,
pub underlying_price: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct GreeksThirdOrderTick {
pub ms_of_day: i32,
pub bid: f64,
pub ask: f64,
pub speed: f64,
pub zomma: f64,
pub color: f64,
pub ultima: f64,
pub implied_volatility: f64,
pub iv_error: f64,
pub underlying_ms_of_day: i32,
pub underlying_price: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct InterestRateTick {
pub ms_of_day: i32,
pub rate: f64,
pub date: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct IvTick {
pub ms_of_day: i32,
pub implied_volatility: f64,
pub iv_error: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct MarketValueTick {
pub ms_of_day: i32,
pub market_bid: f64,
pub market_ask: f64,
pub market_price: f64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct OhlcTick {
pub ms_of_day: i32,
pub open: f64,
pub high: f64,
pub low: f64,
pub close: f64,
pub volume: i64,
pub count: i64,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct OpenInterestTick {
pub ms_of_day: i32,
pub open_interest: i32,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone)]
#[repr(C)]
pub struct OptionContract {
pub root: String,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct PriceTick {
pub ms_of_day: i32,
pub price: f64,
pub date: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct QuoteTick {
pub ms_of_day: i32,
pub bid_size: i32,
pub bid_exchange: i32,
pub bid: f64,
pub bid_condition: i32,
pub ask_size: i32,
pub ask_exchange: i32,
pub ask: f64,
pub ask_condition: i32,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
pub midpoint: f64,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct TradeQuoteTick {
pub ms_of_day: i32,
pub sequence: i32,
pub ext_condition1: i32,
pub ext_condition2: i32,
pub ext_condition3: i32,
pub ext_condition4: i32,
pub condition: i32,
pub size: i32,
pub exchange: i32,
pub price: f64,
pub condition_flags: i32,
pub price_flags: i32,
pub volume_type: i32,
pub records_back: i32,
pub quote_ms_of_day: i32,
pub bid_size: i32,
pub bid_exchange: i32,
pub bid: f64,
pub bid_condition: i32,
pub ask_size: i32,
pub ask_exchange: i32,
pub ask: f64,
pub ask_condition: i32,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}
#[must_use]
#[derive(Debug, Clone, Copy)]
#[repr(C, align(64))]
pub struct TradeTick {
pub ms_of_day: i32,
pub sequence: i32,
pub ext_condition1: i32,
pub ext_condition2: i32,
pub ext_condition3: i32,
pub ext_condition4: i32,
pub condition: i32,
pub size: i32,
pub exchange: i32,
pub price: f64,
pub condition_flags: i32,
pub price_flags: i32,
pub volume_type: i32,
pub records_back: i32,
pub date: i32,
pub expiration: i32,
pub strike: f64,
pub right: i32,
}