#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetProfileRequest {
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetProfileResponse {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub address: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub username: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="4")]
pub account_type: ::prost::alloc::string::String,
#[prost(bool, tag="5")]
pub can_withdraw: bool,
#[prost(string, tag="6")]
pub created_at: ::prost::alloc::string::String,
#[prost(int32, optional, tag="7")]
pub maker_fee_bps: ::core::option::Option<i32>,
#[prost(int32, optional, tag="8")]
pub taker_fee_bps: ::core::option::Option<i32>,
#[prost(int32, optional, tag="9")]
pub application_taker_fee_bps: ::core::option::Option<i32>,
#[prost(int32, optional, tag="10")]
pub application_maker_fee_bps: ::core::option::Option<i32>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetBalancesRequest {
#[prost(uint32, optional, tag="1")]
pub page: ::core::option::Option<u32>,
#[prost(uint32, optional, tag="2")]
pub page_size: ::core::option::Option<u32>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetBalanceByAssetRequest {
#[prost(string, tag="1")]
pub asset_id: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetBalanceByAssetResponse {
#[prost(string, tag="1")]
pub token: ::prost::alloc::string::String,
#[prost(string, optional, tag="2")]
pub symbol: ::core::option::Option<::prost::alloc::string::String>,
#[prost(int32, tag="3")]
pub decimals: i32,
#[prost(string, tag="4")]
pub available_balance: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub locked_balance: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub total_balance: ::prost::alloc::string::String,
#[prost(string, optional, tag="7")]
pub available_balance_raw: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="8")]
pub locked_balance_raw: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="9")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="10")]
pub total_balance_raw: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetBalancesResponse {
#[prost(message, repeated, tag="1")]
pub balances: ::prost::alloc::vec::Vec<super::super::common::balances::AccountBalance>,
#[prost(uint32, tag="2")]
pub total: u32,
#[prost(uint32, tag="3")]
pub page: u32,
#[prost(uint32, tag="4")]
pub page_size: u32,
#[prost(uint32, tag="5")]
pub total_pages: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetMovementsRequest {
#[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 transaction_type: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub entry_type: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub asset_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="6")]
pub order_by: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetMovementsResponse {
#[prost(message, repeated, tag="1")]
pub movements: ::prost::alloc::vec::Vec<super::super::common::movements::LedgerMovement>,
#[prost(uint32, tag="2")]
pub total: u32,
#[prost(uint32, tag="3")]
pub page: u32,
#[prost(uint32, tag="4")]
pub page_size: u32,
#[prost(uint32, tag="5")]
pub total_pages: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListFundingPaymentsRequest {
#[prost(string, optional, tag="1")]
pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub position_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="3")]
pub margin_account_id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(uint32, optional, tag="4")]
pub page: ::core::option::Option<u32>,
#[prost(uint32, optional, tag="5")]
pub page_size: ::core::option::Option<u32>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct FundingPaymentRecord {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub position_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub margin_account_id: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub trading_pair_id: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub funding_rate: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub position_size: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub payment_amount: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub direction: ::prost::alloc::string::String,
#[prost(string, optional, tag="9")]
pub period_start: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="10")]
pub period_end: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="11")]
pub created_at: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListFundingPaymentsResponse {
#[prost(message, repeated, tag="1")]
pub records: ::prost::alloc::vec::Vec<FundingPaymentRecord>,
#[prost(uint32, tag="2")]
pub total: u32,
#[prost(uint32, tag="3")]
pub page: u32,
#[prost(uint32, tag="4")]
pub page_size: u32,
#[prost(uint32, tag="5")]
pub total_pages: u32,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListSubAccountsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListSubAccountsResponse {
#[prost(message, repeated, tag="1")]
pub sub_accounts: ::prost::alloc::vec::Vec<super::super::common::sub_account::SubAccount>,
#[prost(uint32, tag="2")]
pub total: u32,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct CreateLimitRequest {
#[prost(string, tag="1")]
pub sub_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub max_amount: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub daily_limit: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct UpdateLimitRequest {
#[prost(string, tag="1")]
pub sub_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub max_amount: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub daily_limit: ::core::option::Option<::prost::alloc::string::String>,
#[prost(bool, optional, tag="5")]
pub is_active: ::core::option::Option<bool>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct CreateLimitResponse {
#[prost(message, optional, tag="1")]
pub limit: ::core::option::Option<super::super::common::sub_account::SubAccountLimit>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct UpdateLimitResponse {
#[prost(message, optional, tag="1")]
pub limit: ::core::option::Option<super::super::common::sub_account::SubAccountLimit>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetLimitsRequest {
#[prost(string, optional, tag="1")]
pub sub_account_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetLimitsResponse {
#[prost(message, repeated, tag="1")]
pub limits: ::prost::alloc::vec::Vec<super::super::common::sub_account::SubAccountLimit>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct DeleteLimitRequest {
#[prost(string, tag="1")]
pub sub_account_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub limit_id: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct DeleteLimitResponse {
#[prost(string, tag="1")]
pub message: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetUserTradesRequest {
#[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 trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct UserTrade {
#[prost(string, tag="1")]
pub trade_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub trading_pair_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub price: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub quantity: ::prost::alloc::string::String,
#[prost(string, optional, tag="5")]
pub quote_volume: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="6")]
pub side: ::prost::alloc::string::String,
#[prost(string, optional, tag="7")]
pub fee: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="8")]
pub fee_token: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="9")]
pub executed_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="10")]
pub trading_mode: ::prost::alloc::string::String,
#[prost(string, tag="11")]
pub maker_order_id: ::prost::alloc::string::String,
#[prost(string, tag="12")]
pub taker_order_id: ::prost::alloc::string::String,
#[prost(string, tag="13")]
pub quantity_raw: ::prost::alloc::string::String,
#[prost(string, optional, tag="14")]
pub quote_volume_raw: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="15")]
pub fee_raw: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="16")]
pub settlement_status: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="17")]
pub settlement_tx_hash: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetUserTradesResponse {
#[prost(message, repeated, tag="1")]
pub trades: ::prost::alloc::vec::Vec<UserTrade>,
#[prost(uint64, tag="2")]
pub page: u64,
#[prost(uint64, tag="3")]
pub page_size: u64,
#[prost(uint64, tag="4")]
pub total: u64,
#[prost(uint64, tag="5")]
pub total_pages: u64,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioStatsRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioStatsResponse {
#[prost(string, tag="1")]
pub period: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub volume: ::prost::alloc::string::String,
#[prost(uint64, tag="3")]
pub total_trades: u64,
#[prost(uint64, tag="4")]
pub total_orders: u64,
#[prost(string, tag="5")]
pub fees_paid: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub pnl: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub total_equity: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub spot_equity: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub perps_equity: ::prost::alloc::string::String,
#[prost(double, optional, tag="10")]
pub win_loss_ratio: ::core::option::Option<f64>,
#[prost(string, optional, tag="11")]
pub max_drawdown: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="12")]
pub unrealized_pnl: ::prost::alloc::string::String,
#[prost(string, tag="13")]
pub total_pnl: ::prost::alloc::string::String,
#[prost(message, optional, tag="14")]
pub pnl_breakdown: ::core::option::Option<PnlBreakdown>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PnlBreakdown {
#[prost(string, tag="1")]
pub spot_realized: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub spot_unrealized: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub perps_realized: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub perps_unrealized: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub funding_paid: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub fees: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioChartRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub metric: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ChartDataPoint {
#[prost(string, tag="1")]
pub timestamp: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub value: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioChartResponse {
#[prost(string, tag="1")]
pub metric: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub period: ::prost::alloc::string::String,
#[prost(message, repeated, tag="3")]
pub data: ::prost::alloc::vec::Vec<ChartDataPoint>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioWindow {
#[prost(string, tag="1")]
pub period: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub as_of: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub data_through: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub requested_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub effective_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="6")]
pub history_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="7")]
pub coverage: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioSeriesWindow {
#[prost(string, tag="1")]
pub period: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub as_of: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub data_through: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="4")]
pub requested_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub effective_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="6")]
pub history_starts_at: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="7")]
pub coverage: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub display_interval: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub calculation_interval: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioSummaryRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioSummaryCurrent {
#[prost(string, optional, tag="1")]
pub total_equity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub spot_equity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub perps_equity: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub unrealized_pnl: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub available_value: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioSummaryActivity {
#[prost(string, tag="1")]
pub volume: ::prost::alloc::string::String,
#[prost(uint64, tag="2")]
pub trade_count: u64,
#[prost(uint64, tag="3")]
pub order_count: u64,
#[prost(string, tag="4")]
pub fees_paid: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioSummaryResponse {
#[prost(message, optional, tag="1")]
pub window: ::core::option::Option<PortfolioWindow>,
#[prost(string, tag="2")]
pub valuation_status: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub current: ::core::option::Option<PortfolioSummaryCurrent>,
#[prost(message, optional, tag="4")]
pub activity: ::core::option::Option<PortfolioSummaryActivity>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioPerformanceRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioPerformanceDrawdown {
#[prost(string, tag="1")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub pct: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub peak_at: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub trough_at: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioPerformancePoint {
#[prost(string, tag="1")]
pub timestamp: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub equity: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub cumulative_pnl: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub cumulative_return_pct: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioPerformanceResponse {
#[prost(message, optional, tag="1")]
pub window: ::core::option::Option<PortfolioSeriesWindow>,
#[prost(string, tag="2")]
pub calculation_method: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub valuation_status: ::prost::alloc::string::String,
#[prost(string, optional, tag="4")]
pub starting_equity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="5")]
pub ending_equity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="6")]
pub deposits: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub withdrawals: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub net_external_flows: ::prost::alloc::string::String,
#[prost(string, optional, tag="9")]
pub pnl: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="10")]
pub return_pct: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="11")]
pub max_drawdown: ::core::option::Option<PortfolioPerformanceDrawdown>,
#[prost(message, repeated, tag="12")]
pub points: ::prost::alloc::vec::Vec<PortfolioPerformancePoint>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioRealizedPnlRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioRealizedTotals {
#[prost(string, tag="1")]
pub perps_closed_pnl: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub spot_trade_pnl: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub funding_pnl: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub fees_paid: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub net_realized_pnl: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioClosedTradeStats {
#[prost(uint64, tag="1")]
pub count: u64,
#[prost(uint64, tag="2")]
pub winners: u64,
#[prost(uint64, tag="3")]
pub losers: u64,
#[prost(uint64, tag="4")]
pub break_even: u64,
#[prost(string, optional, tag="5")]
pub win_rate_pct: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioBestDay {
#[prost(string, tag="1")]
pub date: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub net_realized_pnl: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioRealizedPnlPoint {
#[prost(string, tag="1")]
pub timestamp: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub perps_closed_pnl: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub spot_trade_pnl: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub funding_pnl: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub fees_paid: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub net_realized_pnl: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioRealizedPnlResponse {
#[prost(message, optional, tag="1")]
pub window: ::core::option::Option<PortfolioSeriesWindow>,
#[prost(string, tag="2")]
pub bucket_interval: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub totals: ::core::option::Option<PortfolioRealizedTotals>,
#[prost(message, optional, tag="4")]
pub closed_trades: ::core::option::Option<PortfolioClosedTradeStats>,
#[prost(message, optional, tag="5")]
pub best_day: ::core::option::Option<PortfolioBestDay>,
#[prost(message, repeated, tag="6")]
pub points: ::prost::alloc::vec::Vec<PortfolioRealizedPnlPoint>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioAssetsRequest {
#[prost(string, optional, tag="1")]
pub period: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioAssetsPerformance {
#[prost(string, optional, tag="1")]
pub pnl: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="2")]
pub return_pct: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub calculation_method: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioAssetRow {
#[prost(string, tag="1")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub symbol: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub total_balance: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub available_balance: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub locked_balance: ::prost::alloc::string::String,
#[prost(string, optional, tag="6")]
pub mark_price: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="7")]
pub value: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="8")]
pub allocation_pct: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag="9")]
pub price_as_of: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="10")]
pub pricing_status: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioAssetsResponse {
#[prost(message, optional, tag="1")]
pub window: ::core::option::Option<PortfolioSeriesWindow>,
#[prost(string, tag="2")]
pub valuation_status: ::prost::alloc::string::String,
#[prost(string, optional, tag="3")]
pub total_spot_equity: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="4")]
pub performance: ::core::option::Option<PortfolioAssetsPerformance>,
#[prost(message, repeated, tag="5")]
pub assets: ::prost::alloc::vec::Vec<PortfolioAssetRow>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPortfolioMarginRequest {
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioMarginTotal {
#[prost(string, tag="1")]
pub equity: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub collateral_balance: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub parent_available_collateral: ::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 unrealized_pnl: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioMarginPositionCounts {
#[prost(uint64, tag="1")]
pub total: u64,
#[prost(uint64, tag="2")]
pub cross: u64,
#[prost(uint64, tag="3")]
pub isolated: u64,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PortfolioRiskBucket {
#[prost(string, tag="1")]
pub risk_bucket_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub collateral: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub free_collateral: ::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 unrealized_pnl: ::prost::alloc::string::String,
#[prost(uint64, tag="7")]
pub position_count: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPortfolioMarginResponse {
#[prost(string, tag="1")]
pub as_of: ::prost::alloc::string::String,
#[prost(message, optional, tag="2")]
pub total: ::core::option::Option<PortfolioMarginTotal>,
#[prost(message, optional, tag="3")]
pub positions: ::core::option::Option<PortfolioMarginPositionCounts>,
#[prost(message, repeated, tag="4")]
pub risk_buckets: ::prost::alloc::vec::Vec<PortfolioRiskBucket>,
}
include!("monaco.api.accounts.tonic.rs");