MCPcopy Create free account
hub / github.com/ccxt/ccxt / parse_ledger_entry

Method parse_ledger_entry

python/ccxt/async_support/kraken.py:1219–1270  ·  view source on GitHub ↗
(self, item: dict, currency: Currency = None)

Source from the content-addressed store, hash-verified

1217 return self.safe_string(types, type, type)
1218
1219 def parse_ledger_entry(self, item: dict, currency: Currency = None) -> LedgerEntry:
1220 #
1221 # {
1222 # 'LTFK7F-N2CUX-PNY4SX': {
1223 # "refid": "TSJTGT-DT7WN-GPPQMJ",
1224 # "time": 1520102320.555,
1225 # "type": "trade",
1226 # "aclass": "currency",
1227 # "asset": "XETH",
1228 # "amount": "0.1087194600",
1229 # "fee": "0.0000000000",
1230 # "balance": "0.2855851000"
1231 # },
1232 # ...
1233 # }
1234 #
1235 id = self.safe_string(item, 'id')
1236 direction = None
1237 account = None
1238 referenceId = self.safe_string(item, 'refid')
1239 referenceAccount = None
1240 type = self.parse_ledger_entry_type(self.safe_string(item, 'type'))
1241 currencyId = self.safe_string(item, 'asset')
1242 code = self.safe_currency_code(currencyId, currency)
1243 currency = self.safe_currency(currencyId, currency)
1244 amount = self.safe_string(item, 'amount')
1245 if Precise.string_lt(amount, '0'):
1246 direction = 'out'
1247 amount = Precise.string_abs(amount)
1248 else:
1249 direction = 'in'
1250 timestamp = self.safe_integer_product(item, 'time', 1000)
1251 return self.safe_ledger_entry({
1252 'info': item,
1253 'id': id,
1254 'direction': direction,
1255 'account': account,
1256 'referenceId': referenceId,
1257 'referenceAccount': referenceAccount,
1258 'type': type,
1259 'currency': code,
1260 'amount': self.parse_number(amount),
1261 'before': None,
1262 'after': self.safe_number(item, 'balance'),
1263 'status': 'ok',
1264 'timestamp': timestamp,
1265 'datetime': self.iso8601(timestamp),
1266 'fee': {
1267 'cost': self.safe_number(item, 'fee'),
1268 'currency': code,
1269 },
1270 }, currency)
1271
1272 async def fetch_ledger(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[LedgerEntry]:
1273 """

Callers

nothing calls this directly

Calls 11

safe_currency_codeMethod · 0.95
safe_stringMethod · 0.80
safe_currencyMethod · 0.80
string_ltMethod · 0.80
string_absMethod · 0.80
safe_integer_productMethod · 0.80
safe_ledger_entryMethod · 0.80
parse_numberMethod · 0.80
safe_numberMethod · 0.80
iso8601Method · 0.45

Tested by

no test coverage detected