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())