#![allow(missing_docs)]
use serde::{Deserialize, Serialize};
use crate::types::enums::*;
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct HistoricalDataRequest {
pub security_id: String,
pub exchange_segment: ExchangeSegment,
pub instrument: Instrument,
#[serde(skip_serializing_if = "Option::is_none")]
pub expiry_code: Option<u8>,
#[serde(skip_serializing_if = "Option::is_none")]
pub oi: Option<bool>,
pub from_date: String,
pub to_date: String,
}
#[derive(Debug, Clone, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct IntradayDataRequest {
pub security_id: String,
pub exchange_segment: ExchangeSegment,
pub instrument: Instrument,
pub interval: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub oi: Option<bool>,
pub from_date: String,
pub to_date: String,
}
#[derive(Debug, Clone, Deserialize)]
pub struct CandleData {
pub open: Vec<f64>,
pub high: Vec<f64>,
pub low: Vec<f64>,
pub close: Vec<f64>,
pub volume: Vec<f64>,
pub timestamp: Vec<f64>,
#[serde(default)]
pub open_interest: Vec<f64>,
}