#[derive(Debug, Clone)]
pub struct AccountInfo {
pub login: i64,
pub trade_mode: i64,
pub leverage: i64,
pub limit_orders: i64,
pub margin_so_mode: i64,
pub trade_allowed: bool,
pub trade_expert: bool,
pub margin_mode: i64,
pub currency_digits: i64,
pub fifo_close: bool,
pub balance: f64,
pub credit: f64,
pub profit: f64,
pub equity: f64,
pub margin: f64,
pub free_margin: f64,
pub margin_level: f64,
pub margin_so_call: f64,
pub margin_so_so: f64,
pub margin_initial: f64,
pub margin_maintenance: f64,
pub assets: f64,
pub liabilities: f64,
pub commission_blocked: f64,
pub name: String,
pub server: String,
pub currency: String,
pub company: String,
}
#[derive(Debug, Clone)]
pub struct TerminalInfo {
pub community_account: bool,
pub community_connection: bool,
pub connected: bool,
pub dlls_allowed: bool,
pub trade_allowed: bool,
pub trade_api_disabled: bool,
pub email_enabled: bool,
pub ftp_enabled: bool,
pub notifications_enabled: bool,
pub mqid: bool,
pub build: i64,
pub max_bars: i64,
pub code_page: i64,
pub ping_last: i64,
pub community_balance: f64,
pub retransmission: f64,
pub company: String,
pub name: String,
pub language: String,
pub path: String,
pub data_path: String,
pub common_data_path: String,
}
#[derive(Debug, Clone)]
pub struct VersionInfo {
pub version: i32,
pub build: i32,
pub build_date: String,
}
#[derive(Debug, Clone)]
pub struct SymbolInfo {
pub custom: bool,
pub chart_mode: i64,
pub select: bool,
pub visible: bool,
pub session_deals: i64,
pub session_buy_orders: i64,
pub session_sell_orders: i64,
pub volume: i64,
pub volume_high: i64,
pub volume_low: i64,
pub time: i64,
pub digits: i64,
pub spread: i64,
pub spread_float: bool,
pub ticks_book_depth: i64,
pub trade_calc_mode: i64,
pub trade_mode: i64,
pub start_time: i64,
pub expiration_time: i64,
pub trade_stops_level: i64,
pub trade_freeze_level: i64,
pub trade_exe_mode: i64,
pub swap_mode: i64,
pub swap_rollover3days: i64,
pub margin_hedged_use_leg: bool,
pub expiration_mode: i64,
pub filling_mode: i64,
pub order_mode: i64,
pub order_gtc_mode: i64,
pub option_mode: i64,
pub option_right: i64,
pub bid: f64,
pub bidhigh: f64,
pub bidlow: f64,
pub ask: f64,
pub askhigh: f64,
pub asklow: f64,
pub last: f64,
pub lasthigh: f64,
pub lastlow: f64,
pub volume_real: f64,
pub volumehigh_real: f64,
pub volumelow_real: f64,
pub option_strike: f64,
pub point: f64,
pub trade_tick_value: f64,
pub trade_tick_value_profit: f64,
pub trade_tick_value_loss: f64,
pub trade_tick_size: f64,
pub trade_contract_size: f64,
pub trade_accrued_interest: f64,
pub trade_face_value: f64,
pub trade_liquidity_rate: f64,
pub volume_min: f64,
pub volume_max: f64,
pub volume_step: f64,
pub volume_limit: f64,
pub swap_long: f64,
pub swap_short: f64,
pub margin_initial: f64,
pub margin_maintenance: f64,
pub session_volume: f64,
pub session_turnover: f64,
pub session_interest: f64,
pub session_buy_orders_volume: f64,
pub session_sell_orders_volume: f64,
pub session_open: f64,
pub session_close: f64,
pub session_aw: f64,
pub session_price_settlement: f64,
pub session_price_limit_min: f64,
pub session_price_limit_max: f64,
pub margin_hedged: f64,
pub price_change: f64,
pub price_volatility: f64,
pub price_theoretical: f64,
pub price_greeks_delta: f64,
pub price_greeks_theta: f64,
pub price_greeks_gamma: f64,
pub price_greeks_vega: f64,
pub price_greeks_rho: f64,
pub price_greeks_omega: f64,
pub price_sensitivity: f64,
pub basis: String,
pub category: String,
pub currency_base: String,
pub currency_profit: String,
pub currency_margin: String,
pub bank: String,
pub description: String,
pub exchange: String,
pub formula: String,
pub isin: String,
pub name: String,
pub page: String,
pub path: String,
}
#[derive(Debug, Clone)]
pub struct Tick {
pub time: i64,
pub bid: f64,
pub ask: f64,
pub last: f64,
pub volume: u64,
pub time_msc: i64,
pub flags: u32,
pub volume_real: f64,
}
#[derive(Debug, Clone)]
pub struct Rate {
pub time: i64,
pub open: f64,
pub high: f64,
pub low: f64,
pub close: f64,
pub tick_volume: u64,
pub spread: i32,
pub real_volume: u64,
}
#[derive(Debug, Clone)]
pub struct TradePosition {
pub ticket: i64,
pub time: i64,
pub time_msc: i64,
pub time_update: i64,
pub time_update_msc: i64,
pub r#type: i32,
pub magic: i64,
pub identifier: i64,
pub reason: i32,
pub volume: f64,
pub price_open: f64,
pub price_current: f64,
pub price_sl: f64,
pub price_tp: f64,
pub swap: f64,
pub profit: f64,
pub symbol: String,
pub comment: String,
pub external_id: String,
}
#[derive(Debug, Clone)]
pub struct TradeOrder {
pub ticket: i64,
pub time_setup: i64,
pub time_setup_msc: i64,
pub time_done: i64,
pub time_done_msc: i64,
pub time_expiration: i64,
pub r#type: i32,
pub type_time: i32,
pub type_filling: i32,
pub state: i32,
pub magic: i64,
pub position_id: i64,
pub position_by_id: i64,
pub reason: i32,
pub volume_initial: f64,
pub volume_current: f64,
pub price_open: f64,
pub price_current: f64,
pub price_sl: f64,
pub price_tp: f64,
pub price_stoplimit: f64,
pub symbol: String,
pub comment: String,
pub external_id: String,
}
#[derive(Debug, Clone)]
pub struct TradeDeal {
pub ticket: i64,
pub order: i64,
pub time: i64,
pub time_msc: i64,
pub r#type: i32,
pub entry: i32,
pub magic: i64,
pub position_id: i64,
pub reason: i32,
pub volume: f64,
pub price: f64,
pub commission: f64,
pub swap: f64,
pub profit: f64,
pub fee: f64,
pub symbol: String,
pub comment: String,
pub external_id: String,
}
#[derive(Debug, Clone)]
pub struct BookInfo {
pub r#type: i64,
pub price: f64,
pub volume: i64,
pub volume_real: f64,
}