币本位余额:trading缺USDT时从swap补齐,避免预算误判为0
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -609,12 +609,14 @@ def fetch_options_balances(
|
||||
funding = _merge_balance_maps(funding, asset_funding)
|
||||
funding_avail = _merge_balance_maps(funding_avail, asset_funding_avail)
|
||||
trading, trading_avail = fetch_account_balances_by_type(ex, "trading")
|
||||
if trading.get("USDC") is None:
|
||||
# OKX 统一账户:option 客户端拉 type=trading 常缺 USDT/币;用 swap 补齐缺失项
|
||||
if any(trading.get(c) is None for c in ("USDT", "USDC", "ETH", "BTC")):
|
||||
swap_bal, swap_avail = fetch_account_balances_by_type(ex, "swap")
|
||||
if swap_bal.get("USDC") is not None:
|
||||
trading["USDC"] = swap_bal["USDC"]
|
||||
if trading_avail.get("USDC") is None and swap_avail.get("USDC") is not None:
|
||||
trading_avail["USDC"] = swap_avail["USDC"]
|
||||
for ccy in ("USDT", "USDC", "USDG", "ETH", "BTC"):
|
||||
if trading.get(ccy) is None and swap_bal.get(ccy) is not None:
|
||||
trading[ccy] = swap_bal[ccy]
|
||||
if trading_avail.get(ccy) is None and swap_avail.get(ccy) is not None:
|
||||
trading_avail[ccy] = swap_avail[ccy]
|
||||
result = {
|
||||
"scope": "main",
|
||||
"funding_usdt": funding.get("USDT"),
|
||||
|
||||
Reference in New Issue
Block a user