Python client for DefiLlama API
Project description
defillama2
Python client for DeFiLlama API
Download data from DefiLlama.com via its APIs. This package gets you tidy pandas data frames that are ready for downstream analysis and modeling.
Installation
pip install defillama2
Quick Start
from defillama2 import DefiLlama
# create a DefiLlama instance
obj = DefiLlama()
# get historical DeFi TVL on all chains
obj.get_defi_hist_tvl() # don't give any input
# get historical TVL of a specific chain
obj.get_chain_hist_tvl('Arbitrum')
# get current TVL of all chains
obj.get_chains_curr_tvl() # don't give any input
# get current TVL of a specific protocol
obj.get_protocol_curr_tvl('gmx')
# get current TVL of a specific protocol by chain
obj.get_protocol_curr_tvl_by_chain('gmx')
# get historical TVL of a specific protocol by chain
obj.get_protocol_hist_tvl_by_chain('gmx')
# get fundamentals for all protocols
obj.get_protocols_fundamentals() # don't give any input
# consider the following tokens and chains
dd = {# GMX on arbitrum
'0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a':'arbitrum',
# GMX on avalanche
'0x62edc0692BD897D2295872a9FFCac5425011c661':'avax',
# GLP on arbitrum
'0x4277f8f2c384827b5273592ff7cebd9f2c1ac258':'arbitrum',
# GLP on avalanche
'0x01234181085565ed162a948b6a5e88758CD7c7b8':'avax',
}
# get their current prices
obj.get_tokens_curr_prices(dd)
# get their prices at a specific time '2022-09-15 13:25:43'
obj.get_tokens_hist_snapshot_prices(dd, '2022-09-15 13:25:43')
# get their historical daily close/open prices
obj.get_daily_open_close(dd, start='2022-08-01', end='2022-09-01', kind='close')
obj.get_daily_open_close(dd, start='2022-08-01', end='2022-09-01', kind='open')
# get hourly prices
obj.get_tokens_hist_prices(dd, start='2022-11-12', end='2022-11-14', freq='hour')
# get daily open, high, low, close, mean, median, std of prices
obj.get_tokens_hist_prices(dd, start='2022-11-12', end='2022-11-14', freq='daily')
# get basic info on all stablecoins, along with their circulating amounts
obj.get_stablecoins_circulating() # don't give any input
# get all stablecoins' circulating amounts for each chain
obj.get_stablecoins_circulating_by_chain() # don't give any input
# get historical mcaps of a stablecoin, for example, USDT
obj.get_stablecoin_hist_mcap(1) # 1 is USDT
# get historical mcaps of a stablecoin on a particular chain, for example,
# USDT on ethereum
obj.get_stablecoin_hist_mcap_on_a_chain(1, 'ethereum')
# get current total mcap of all stablecoins on each chain
obj.get_stablecoins_curr_mcap_by_chain() # don't give any input
# get historical prices of all stablecoins
obj.get_stablecoins_prices() # don't give any input
# get the latest yields for all available pools, along with other information
obj.get_pools_yields()
# get the historical APY and TVL of a pool
obj.get_pool_hist_apy(pool_id) # pool_id can be obtained from get_pools_yields()
Demo Code
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
defillama2-0.7.5.tar.gz
(1.3 MB
view hashes)
Built Distribution
defillama2-0.7.5-py3-none-any.whl
(13.2 kB
view hashes)
Close
Hashes for defillama2-0.7.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7df28856d32a941163104c223fdf6023d3e2927c0cf994785da94cb7ca3d3d09 |
|
MD5 | 00e10d8dbf8c42ae3d2cdec87c38c595 |
|
BLAKE2b-256 | bc567390738a7b43d84c3c7b47f6302dfd00c76158535c77e6d072e51b3ccc6a |