pub fn parse_spot_margin_position_from_balance(
balance: &OKXBalanceDetail,
account_id: AccountId,
instrument_id: InstrumentId,
size_precision: u8,
ts_init: UnixNanos,
) -> Result<Option<PositionStatusReport>>Expand description
Parses spot margin position from OKX balance detail.
Spot margin positions appear in /api/v5/account/balance as balance sheet items
rather than in /api/v5/account/positions. This function converts balance details
with non-zero liability (liab) or spot in use amount (spotInUseAmt) into position reports.
§Position Determination
liab> 0 andspotInUseAmt< 0 → Short position (borrowed and sold)liab> 0 andspotInUseAmt> 0 → Long position (borrowed to buy)liab== 0 → No margin position (regular spot balance)
§Errors
Returns an error if numeric fields cannot be parsed.