fetch the trading fees for multiple markets :param dict [params]: extra parameters specific to the exchange API endpoint :returns dict: a dictionary of `fee structures ` indexed by market symbols
(self, params={})
| 1575 | }, market) |
| 1576 | |
| 1577 | def fetch_trading_fees(self, params={}) -> TradingFees: |
| 1578 | """ |
| 1579 | fetch the trading fees for multiple markets |
| 1580 | :param dict [params]: extra parameters specific to the exchange API endpoint |
| 1581 | :returns dict: a dictionary of `fee structures <https://docs.ccxt.com/?id=fee-structure>` indexed by market symbols |
| 1582 | """ |
| 1583 | self.load_markets() |
| 1584 | self.load_accounts() |
| 1585 | account = self.safe_dict(self.accounts, 0, {}) |
| 1586 | accountGroup = self.safe_string(account, 'id') |
| 1587 | request = { |
| 1588 | 'account-group': accountGroup, |
| 1589 | } |
| 1590 | response = self.v1PrivateAccountGroupGetSpotFee(self.extend(request, params)) |
| 1591 | # |
| 1592 | # { |
| 1593 | # "code": "0", |
| 1594 | # "data": { |
| 1595 | # "domain": "spot", |
| 1596 | # "userUID": "U1479576457", |
| 1597 | # "vipLevel": "0", |
| 1598 | # "fees": [ |
| 1599 | # {symbol: 'HT/USDT', fee: {taker: '0.001', maker: "0.001"}}, |
| 1600 | # {symbol: 'LAMB/BTC', fee: {taker: '0.002', maker: "0.002"}}, |
| 1601 | # {symbol: 'STOS/USDT', fee: {taker: '0.002', maker: "0.002"}}, |
| 1602 | # ... |
| 1603 | # ] |
| 1604 | # } |
| 1605 | # } |
| 1606 | # |
| 1607 | data = self.safe_dict(response, 'data', {}) |
| 1608 | fees = self.safe_list(data, 'fees', []) |
| 1609 | result = {} |
| 1610 | for i in range(0, len(fees)): |
| 1611 | fee = fees[i] |
| 1612 | marketId = self.safe_string(fee, 'symbol') |
| 1613 | symbol = self.safe_symbol(marketId, None, '/') |
| 1614 | takerMaker = self.safe_dict(fee, 'fee', {}) |
| 1615 | result[symbol] = { |
| 1616 | 'info': fee, |
| 1617 | 'symbol': symbol, |
| 1618 | 'maker': self.safe_number(takerMaker, 'maker'), |
| 1619 | 'taker': self.safe_number(takerMaker, 'taker'), |
| 1620 | 'percentage': None, |
| 1621 | 'tierBased': None, |
| 1622 | } |
| 1623 | return result |
| 1624 | |
| 1625 | def create_order_request(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}): |
| 1626 | """ |
nothing calls this directly
no test coverage detected