#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct MarginAccountSummary {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_state: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub equity: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub initial_margin_required: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub maintenance_margin_required: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub free_collateral: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub withdrawable_collateral: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub total_position_notional: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub unrealized_pnl: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub realized_pnl: ::prost::alloc::string::String,
#[prost(string, tag="11")]
pub updated_at: ::prost::alloc::string::String,
#[prost(string, optional, tag="12")]
pub label: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="13")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="14")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="15")]
pub risk_bucket_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="16")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="17")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetMarginAccountSummaryRequest {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetParentMarginAccountSummaryRequest {
#[prost(string, optional, tag="1")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetMarginAccountSummaryResponse {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub account_state: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub equity: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub initial_margin_required: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub maintenance_margin_required: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub free_collateral: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub withdrawable_collateral: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub total_position_notional: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub unrealized_pnl: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub realized_pnl: ::prost::alloc::string::String,
#[prost(string, tag="11")]
pub updated_at: ::prost::alloc::string::String,
#[prost(string, optional, tag="12")]
pub label: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="13")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="14")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="15")]
pub risk_bucket_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="16")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="17")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListMarginAccountsRequest {
#[prost(uint32, optional, tag="1")]
pub page: ::core::option::Option<u32>,
#[prost(uint32, optional, tag="2")]
pub page_size: ::core::option::Option<u32>,
#[prost(string, optional, tag="3")]
pub state: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListMarginAccountsResponse {
#[prost(message, repeated, tag="1")]
pub accounts: ::prost::alloc::vec::Vec<MarginAccountSummary>,
#[prost(uint32, tag="2")]
pub total: u32,
#[prost(uint32, tag="3")]
pub page: u32,
#[prost(uint32, tag="4")]
pub page_size: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetAvailableCollateralRequest {
#[prost(string, optional, tag="1")]
pub asset: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetAvailableCollateralResponse {
#[prost(string, tag="1")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub wallet_available: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub wallet_locked: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub margin_transferable: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub margin_available_collateral: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralToMarginAccountRequest {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub amount: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralToMarginAccountResponse {
#[prost(string, tag="1")]
pub movement_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub status: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub new_equity: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub new_total_collateral_value: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub new_withdrawable_collateral: ::prost::alloc::string::String,
#[prost(string, optional, tag="9")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="10")]
pub risk_bucket_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="11")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="12")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralFromMarginAccountRequest {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub amount: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralFromMarginAccountResponse {
#[prost(string, tag="1")]
pub movement_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub status: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub new_equity: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub new_total_collateral_value: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub new_withdrawable_collateral: ::prost::alloc::string::String,
#[prost(string, optional, tag="9")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct MarginAccountMovement {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub movement_type: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub status: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub created_at: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetMarginAccountMovementsRequest {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub movement_type: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint32, optional, tag="3")]
pub page: ::core::option::Option<u32>,
#[prost(uint32, optional, tag="4")]
pub page_size: ::core::option::Option<u32>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetParentMarginAccountMovementsRequest {
#[prost(string, optional, tag="1")]
pub movement_type: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint32, optional, tag="2")]
pub page: ::core::option::Option<u32>,
#[prost(uint32, optional, tag="3")]
pub page_size: ::core::option::Option<u32>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMarginAccountMovementsResponse {
#[prost(message, repeated, tag="1")]
pub movements: ::prost::alloc::vec::Vec<MarginAccountMovement>,
#[prost(uint32, tag="2")]
pub total: u32,
#[prost(uint32, tag="3")]
pub page: u32,
#[prost(uint32, tag="4")]
pub page_size: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SimulateOrderRiskRequest {
#[prost(string, tag="1")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub trading_pair_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub side: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub position_side: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub order_type: ::prost::alloc::string::String,
#[prost(string, optional, tag="6")]
pub price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="7")]
pub quantity: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub leverage: ::prost::alloc::string::String,
#[prost(bool, optional, tag="9")]
pub reduce_only: ::core::option::Option<bool>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SimulateParentMarginOrderRiskRequest {
#[prost(string, tag="1")]
pub trading_pair_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub side: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub position_side: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub order_type: ::prost::alloc::string::String,
#[prost(string, optional, tag="5")]
pub price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="6")]
pub quantity: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub leverage: ::prost::alloc::string::String,
#[prost(bool, optional, tag="8")]
pub reduce_only: ::core::option::Option<bool>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SimulateOrderRiskResponse {
#[prost(bool, tag="1")]
pub accepted: bool,
#[prost(string, optional, tag="2")]
pub reject_reason: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub equity_after: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub initial_margin_required_after: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub maintenance_margin_required_after: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub free_collateral_after: ::prost::alloc::string::String,
#[prost(string, optional, tag="7")]
pub estimated_fee: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="8")]
pub estimated_liquidation_price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="9")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="10")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="11")]
pub risk_bucket_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="12")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="13")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralToParentMarginAccountRequest {
#[prost(string, tag="1")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub amount: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralFromParentMarginAccountRequest {
#[prost(string, tag="1")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub amount: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TransferCollateralToRiskBucketRequest {
#[prost(string, tag="1")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub amount: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="6")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct SimulateRiskBucketOrderRiskRequest {
#[prost(string, tag="1")]
pub trading_pair_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub strategy_key: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub side: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub position_side: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub order_type: ::prost::alloc::string::String,
#[prost(string, optional, tag="6")]
pub price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="7")]
pub quantity: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub leverage: ::prost::alloc::string::String,
#[prost(bool, optional, tag="9")]
pub reduce_only: ::core::option::Option<bool>,
#[prost(string, optional, tag="10")]
pub margin_mode: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag="11")]
pub selected_trading_pair_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
include!("monaco.api.margin_accounts.tonic.rs");