diff --git a/crypto_portfolio.py b/crypto_portfolio.py index 09b12d4..e0d6abb 100644 --- a/crypto_portfolio.py +++ b/crypto_portfolio.py @@ -1,12 +1,16 @@ -import requests +import modulos.coingecko_api as cgapi import time -base_url = 'https://api.coingecko.com/api/v3/' -coin = 'bitcoin' -vs_currency = 'eur' -days = '365' -precision = '3' -intervalo = 'daily' +APY_KEY = "CG-K5RS5VXsdFDip2UvY3z8VjQP" + +cgapi.headers = { + 'accept': 'application/json', + 'x-cg-demo-api-key': APY_KEY, +} + +criptomoeda: str = 'bitcoin' +vs_currency: str = 'eur' +dias: str = '30' historico_precos_header = [ "data", @@ -24,32 +28,16 @@ portfolio_headers = [ "movimento" ] -# https://api.coingecko.com/api/v3/coins/bitcoin/market_chart?vs_currency=eur&days=365&interval=daily -url_historico_preco = base_url + 'coins/' + coin + '/market_chart?vs_currency=' + vs_currency + '&days=' + days + '&interval=' + intervalo + '&precision=' + precision -# https://api.coingecko.com/api/v3/coins/bitcoin/ohlc?vs_currency=eur&days=30&precision=3 -url_preco_ohlc = base_url + 'coins/' + coin + '/ohlc?vs_currency=' + vs_currency + '&days=' + days + '&precision=' + precision +url, codigo, dados_ohlc = cgapi.coin_ohlc_chart_by_id('bitcoin','eur','30') -APY_KEY = "CG-K5RS5VXsdFDip2UvY3z8VjQP" - -headers = { - 'accept': 'application/json', - 'x-cg-demo-api-key': APY_KEY -} - -# tipo de pesquisa -url_consulta = url_historico_preco - -response = requests.get(url_consulta, headers= headers) - -if response.status_code == 200: - data = response.json() - print(len(data['prices'])) +if codigo == 200: + print(len(dados_ohlc)) #print(data) - for index in range(0, len(data['prices'])): + for index in range(0, len(dados_ohlc)): #date = time.ctime(data['prices'][index][0]/1000) - date_as_string = time.strftime("%d/%m/%Y", time.gmtime(data['prices'][index][0]/1000)) - price = data['prices'][index][1] + date_as_string = time.strftime("%d/%m/%Y", time.gmtime(dados_ohlc[index][0]/1000)) + price = dados_ohlc[index][1] print(f'{date_as_string} -> {price:.2f}') # ohlc = [ data[0][1], data[0][2], data[0][3], data[0][4] ] diff --git a/dados/bitcoin.csv b/dados/bitcoin.csv index de3787a..f90ba8b 100644 --- a/dados/bitcoin.csv +++ b/dados/bitcoin.csv @@ -268,3 +268,76 @@ data_unix,criptomoeda,vs_currency,preco_abertura,preco_maximo,preco_minimo,preco 1717660800000,bitcoin,eur,65230.943,65316.458,65062.402,65316.458 1717675200000,bitcoin,eur,65274.639,65407.744,65158.324,65386.244 1717689600000,bitcoin,eur,65419.588,65774.141,65249.732,65506.978 +1717704000000,bitcoin,eur,65471.555,65532.729,64717.288,64717.288 +1717718400000,bitcoin,eur,64677.664,65089.162,64343.301,64964.378 +1717732800000,bitcoin,eur,64977.376,65149.537,64848.527,65130.071 +1717747200000,bitcoin,eur,65155.771,65552.101,65155.771,65216.141 +1717761600000,bitcoin,eur,65252.625,65702.159,65206.759,65702.159 +1717776000000,bitcoin,eur,65734.057,66131.777,65253.932,65752.783 +1717790400000,bitcoin,eur,65749.188,65848.487,63728.664,64129.646 +1717804800000,bitcoin,eur,64060.091,64272.295,63848.308,64146.758 +1717819200000,bitcoin,eur,64159.212,64299.072,64086.474,64249.859 +1717833600000,bitcoin,eur,64209.15,64349.251,64051.858,64318.275 +1717848000000,bitcoin,eur,64311.571,64311.571,64131.824,64131.824 +1717862400000,bitcoin,eur,64203.41,64296.204,64035.949,64249.135 +1717876800000,bitcoin,eur,64221.037,64299.139,64128.188,64277.034 +1717891200000,bitcoin,eur,64270.706,64270.706,64108.467,64137.266 +1717905600000,bitcoin,eur,64128.272,64158.804,63991.822,64090.377 +1717920000000,bitcoin,eur,64081.766,64217.961,64052.909,64057.296 +1717934400000,bitcoin,eur,64059.0,64149.432,64042.574,64134.292 +1717948800000,bitcoin,eur,64124.981,64479.239,63989.962,64285.248 +1717963200000,bitcoin,eur,64291.111,64656.936,64266.263,64601.802 +1717977600000,bitcoin,eur,64582.604,64759.561,64522.41,64623.807 +1717992000000,bitcoin,eur,64616.25,64801.268,64439.453,64691.987 +1718006400000,bitcoin,eur,64687.165,64792.696,64386.034,64411.814 +1718020800000,bitcoin,eur,64350.265,64704.291,64350.265,64575.72 +1718035200000,bitcoin,eur,64590.601,65248.725,64442.081,65248.725 +1718049600000,bitcoin,eur,65151.51,65166.971,64556.295,64556.295 +1718064000000,bitcoin,eur,64454.135,64736.581,64384.742,64559.648 +1718078400000,bitcoin,eur,64588.999,64616.169,63155.903,63453.009 +1718092800000,bitcoin,eur,63536.762,63536.762,62711.095,62731.686 +1718107200000,bitcoin,eur,62720.58,62879.267,62185.261,62304.792 +1718121600000,bitcoin,eur,62294.215,62696.767,61702.308,61713.404 +1718136000000,bitcoin,eur,61738.523,62902.134,61668.739,62902.134 +1718150400000,bitcoin,eur,62769.21,62897.02,62539.241,62689.904 +1718164800000,bitcoin,eur,62652.099,62907.854,62301.584,62738.123 +1718179200000,bitcoin,eur,62783.447,62938.535,62566.099,62754.609 +1718193600000,bitcoin,eur,62781.987,63246.226,62661.563,62926.3 +1718208000000,bitcoin,eur,62962.533,64500.086,62909.222,64289.713 +1718222400000,bitcoin,eur,64340.66,64441.731,62257.896,62401.11 +1718236800000,bitcoin,eur,62505.301,63451.515,62486.678,63085.644 +1718251200000,bitcoin,eur,63118.091,63244.317,61974.217,62384.132 +1718265600000,bitcoin,eur,62430.948,62626.296,62291.493,62574.146 +1718280000000,bitcoin,eur,62623.2,62937.053,62197.012,62797.728 +1718294400000,bitcoin,eur,62808.255,63507.276,61815.622,61853.329 +1718308800000,bitcoin,eur,61768.207,62448.107,61768.207,62102.312 +1718323200000,bitcoin,eur,62077.312,62349.546,61938.342,62107.467 +1718337600000,bitcoin,eur,62161.672,62367.239,61897.656,62111.616 +1718352000000,bitcoin,eur,62108.466,62596.584,62102.836,62596.584 +1718366400000,bitcoin,eur,62424.867,62816.856,62417.064,62652.665 +1718380800000,bitcoin,eur,62643.286,63005.52,62068.413,62068.413 +1718395200000,bitcoin,eur,62031.147,62079.753,60759.177,61094.451 +1718409600000,bitcoin,eur,61222.053,62012.143,61183.513,61562.526 +1718424000000,bitcoin,eur,61563.381,61797.231,61533.382,61742.924 +1718438400000,bitcoin,eur,61774.804,61910.234,61599.798,61610.882 +1718452800000,bitcoin,eur,61605.706,61852.385,61604.645,61796.547 +1718467200000,bitcoin,eur,61840.13,61990.543,61700.173,61830.904 +1718481600000,bitcoin,eur,61846.954,61859.093,61637.695,61702.146 +1718496000000,bitcoin,eur,61690.434,61806.068,61517.023,61759.233 +1718510400000,bitcoin,eur,61756.523,61774.106,61632.978,61673.592 +1718524800000,bitcoin,eur,61675.144,61887.92,61571.456,61795.6 +1718539200000,bitcoin,eur,61771.32,62242.399,61730.76,61954.382 +1718553600000,bitcoin,eur,62014.055,62260.225,61978.161,62163.599 +1718568000000,bitcoin,eur,62179.642,62252.792,62053.422,62153.209 +1718582400000,bitcoin,eur,62157.854,62557.4,62030.817,62231.369 +1718596800000,bitcoin,eur,62267.678,62461.5,61856.093,61892.854 +1718611200000,bitcoin,eur,61834.712,62113.756,61568.403,61903.611 +1718625600000,bitcoin,eur,61809.519,61898.448,61209.99,61376.919 +1718640000000,bitcoin,eur,61393.003,61393.003,60736.936,60936.7 +1718654400000,bitcoin,eur,60930.124,62601.636,60703.206,62067.171 +1718668800000,bitcoin,eur,62071.407,62105.956,61658.083,61877.281 +1718683200000,bitcoin,eur,61888.621,61946.547,60168.95,61105.393 +1718697600000,bitcoin,eur,61065.311,61367.521,60983.001,61236.949 +1718712000000,bitcoin,eur,61224.349,61350.669,60822.616,61069.727 +1718726400000,bitcoin,eur,60972.72,60972.72,59943.823,60352.265 +1718740800000,bitcoin,eur,60155.898,60358.155,59744.169,59767.125 diff --git a/modulos/__pycache__/coingecko_api.cpython-312.pyc b/modulos/__pycache__/coingecko_api.cpython-312.pyc new file mode 100644 index 0000000..9d81935 Binary files /dev/null and b/modulos/__pycache__/coingecko_api.cpython-312.pyc differ diff --git a/modulos/coingecko_api.py b/modulos/coingecko_api.py index 9096230..36a13be 100644 --- a/modulos/coingecko_api.py +++ b/modulos/coingecko_api.py @@ -1687,10 +1687,10 @@ def public_companies_holdings(coin_id: str = '') -> tuple[str, int, dict]: # debug (decomentar linhas seguintes para testar funcao) -url, codigo, dados = public_companies_holdings('bitcoin') -print(f'url: {url}') -if codigo == 200: - for item in dados: - print(f'{item}: {dados[item]}') -else: - print(f'erro {codigo}: {dados}') \ No newline at end of file +# url, codigo, dados = public_companies_holdings('bitcoin') +# print(f'url: {url}') +# if codigo == 200: +# for item in dados: +# print(f'{item}: {dados[item]}') +# else: +# print(f'erro {codigo}: {dados}') \ No newline at end of file