Skip to content
Velo

Fetch Aggregated Spot CVD

from velodata import lib as velo
 
day_in_ms = 1000 * 60 * 60 * 24
 
# new velo client
client = velo.client('api_key')
 
# from one day ago in 10 minute resolution
params = {
    'type': 'spot',
    'columns': ['buy_dollar_volume', 'sell_dollar_volume'],
    'exchanges': ['coinbase', 'binance', 'bybit-spot'],
    'products': ['ETHUSDT', 'ETH-USD'],
    'begin': client.timestamp() - day_in_ms,
    'end': client.timestamp(),
    'resolution': '10m'
}
 
# returns dataframe
df = client.get_rows(params)
 
# aggregate all exchanges
df = df.groupby(df['time']).sum(numeric_only=True)
 
# compute volume delta
df['delta'] = df['buy_dollar_volume'] - df['sell_dollar_volume']
 
# cumulative
print(df['delta'].cumsum())