pub struct ComboPosition {Show 19 fields
pub combo_condition_id: String,
pub combo_position_id: Option<String>,
pub module_id: Option<i64>,
pub user_address: Option<String>,
pub shares_balance: Option<String>,
pub entry_avg_price_usdc: Option<String>,
pub entry_cost_usdc: Option<String>,
pub realized_payout_usdc: Option<String>,
pub total_cost_usdc: Option<String>,
pub gross_entry_cost_usdc: Option<String>,
pub entry_fees_usdc: Option<String>,
pub status: Option<ComboStatus>,
pub first_entry_at: Option<String>,
pub resolved_at: Option<String>,
pub updated_at: Option<String>,
pub legs_total: Option<i64>,
pub legs_resolved: Option<i64>,
pub legs_pending: Option<i64>,
pub legs: Vec<ComboLeg>,
}Expand description
A combinatorial (multi-market) position held by a user.
Fields§
§combo_condition_id: StringCombo condition ID (0x + 62 hex). Equals the conditionId of
isCombo rows on /activity.
combo_position_id: Option<String>Position identifier for the combo.
module_id: Option<i64>Module identifier; 3 is the Combinatorial module.
user_address: Option<String>Holder’s wallet address.
Share balance as a precision-preserving decimal string.
entry_avg_price_usdc: Option<String>Average entry price in USDC, as a decimal string.
entry_cost_usdc: Option<String>Remaining cost basis (entry_avg_price × shares_balance).
Reads ~0 after a winning combo is redeemed — use
total_cost_usdc to display what was paid on
closed positions.
realized_payout_usdc: Option<String>Gross redemption proceeds (winning shares redeem 1:1 at $1).
"0.00" while open, unredeemed, or resolved-loss; accumulates under
Partial. This is gross payout, not net PnL — net =
realized_payout_usdc − total_cost_usdc.
total_cost_usdc: Option<String>Original cost basis, surviving redemption burning the shares. Equals
entry_cost_usdc while open.
gross_entry_cost_usdc: Option<String>Exact gross entry basis including attributed BUY fees, as a six-decimal
precision-preserving string (e.g. "8999.997488").
Tracks the remaining basis while the position is live and freezes once
it is terminal. Exact net basis = gross_entry_cost_usdc − entry_fees_usdc. Parse as a decimal, never through a float.
entry_fees_usdc: Option<String>BUY-fee portion of the same basis, as a six-decimal precision-preserving
string. SELL fees are excluded; always ≤ gross_entry_cost_usdc.
status: Option<ComboStatus>Resolution state of the combo.
first_entry_at: Option<String>First entry time (RFC3339 UTC).
resolved_at: Option<String>Resolution time (RFC3339 UTC), or None while unresolved.
updated_at: Option<String>Last-modified time (UTC, ISO 8601) — the incremental-sync watermark.
Bumps on any recompute of the row (trade, redemption, resolution classification). Omitted on responses served by the legacy backend.
legs_total: Option<i64>Total number of legs.
legs_resolved: Option<i64>Number of legs that have resolved.
legs_pending: Option<i64>Number of legs still pending.
legs: Vec<ComboLeg>Per-leg breakdown.
Trait Implementations§
Source§impl Clone for ComboPosition
impl Clone for ComboPosition
Source§fn clone(&self) -> ComboPosition
fn clone(&self) -> ComboPosition
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more