From 3b010797864e7d2daaa541f924c5b3913b7f343d Mon Sep 17 00:00:00 2001 From: "[Luis Rodrigues]" Date: Mon, 17 Jun 2024 10:23:26 +0100 Subject: [PATCH] adicionada chamada 'derivatives_exchange_data_by_id()' --- modulos/coingecko_api.py | 33 +++++++++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/modulos/coingecko_api.py b/modulos/coingecko_api.py index cf6179f..b3c9be7 100644 --- a/modulos/coingecko_api.py +++ b/modulos/coingecko_api.py @@ -1378,16 +1378,41 @@ def derivatives_exchange_list_with_data( # else: # print(f'erro {codigo}: {dados}') -def derivatives_exchange_data_by_id() -> tuple[str, int, dict]: - pass +def derivatives_exchange_data_by_id( + id_exchange: str = '', + include_tickers: str = '', +) -> tuple[str, int, dict]: + '''https://docs.coingecko.com/v3.0.1/reference/derivatives-exchanges-id + + este endpoint permite obter os dados relativos a uma correctora de derivados (id, nome, + contractos em aberto, etc) a partir do id da correctora) + ''' + # dicionario de parametros + api_parameters: dict = { + 'id': '', + 'include_tickers': '', + } + # validacao de parametros + # id_exchange (como 'id' é nome reservado, foi usado outro nome) + if not isinstance(id_exchange, str): + raise TypeError('\'id_exchange\' tem de ser do tipo \'str\'') + if id_exchange == '': + raise ValueError('\'id_exchange\' tem de ser definido') + api_parameters['id'] = id_exchange + # include_tickers + if not isinstance(include_tickers, str): + raise TypeError('\'include_tickers\' tem de ser do tipo \'str\'') + api_parameters['include_tickers'] = include_tickers + + return API(f'derivatives/exchanges/{api_parameters['id']}', api_parameters) # debug (decomentar linhas seguintes para testar funcao) -# url, codigo, dados = +# url, codigo, dados = derivatives_exchange_data_by_id('binance_futures') # print(f'url: {url}') # if codigo == 200: # for item in dados: -# print(item) +# print(f'{item}: {dados[item]}') # else: # print(f'erro {codigo}: {dados}')