Trying to get "equity"
data from a API response for calculate but can’t get through.
This is my code:
from pybit import HTTP import json session = HTTP("https://api.bybit.com",api_key=xxxx, api_secret=xxxx) g=session.get_wallet_balance(coin="USDT") data=json.dumps(g,indent=4) print(data) for item in data ['result']['USDT']: print(item["equity"])
Keep getting TypeError
:
for item in data ['result']['USDT']: TypeError: string indices must be integers
And this is data I am trying to tear apart:
{ "ret_code": 0, "ret_msg": "OK", "ext_code": "", "ext_info": "", "result": { "USDT": { "equity": 562733.1693, "available_balance": 558590.8075, "used_margin": 5642.0618, "order_margin": 0, "position_margin": 05642.0618, "occ_closing_fee": 3.8e-07, "occ_funding_fee": 0, "wallet_balance": 564232.8693, "realised_pnl": -00862.2551, "unrealised_pnl": -01.4997, "cum_realised_pnl": 68531.4329, "given_cash": 0, "service_cash": 0 } }, "time_now": "1643729725.986204", "rate_limit_status": 119, "rate_limit_reset_ms": 1643729725980, "rate_limit": 120 }
Advertisement
Answer
Done with this type, go through json.dumps
and json.loads
and track the data in equity
to get number in json
session = HTTP("https://api.bybit.com",api_key=apiKey, api_secret=secret) raw= json.dumps(session.get_wallet_balance(coin="USDT"),indent=4) data=json.loads(raw) equity=data['result']['USDT']['equity'] print(equity)