balancer / backend

MIT License
20 stars 9 forks source link

Add support for Voting Incentive Markets (HH, Paladin) #528

Open Xeonus opened 4 months ago

Xeonus commented 4 months ago

Problem statement

We are more and more relying on voting incentive market data like HiddenHand and Paladin. Currently, these data providers don't store historical data consistently (HH price data only takes current prices, not historicla ones, Paladin doesn't have historical data at all). Therefore, we should store it in our backend by doing end-of-round snapshots and exposing that data via the API

Specifications

  1. Expose data through api-v3 query object with input of market (hh, paladin), space (aura balancer) snapshot timestamp for single round data.
  2. If possible provide aggregated data for all timestamps with a single query if no timestamp was provided, response sorted as array with parent object ref as timestamp, e.g.:

{'aura': ['1656378000': { ... }, '1657591200': { ... }, ] }

HiddenHand

To obtain data for a specific round, one needs to provide the timestamp after the endpoint:

Paladin

Swagger Docs

franzns commented 2 months ago

Should also ingest enough data that we could potentially also facilitate voting/bribing through our own UI