Market Snapshots

Query historical market snapshots.

Rate limits

  • Dynamic based on # of product_ids and interval.count (weight = product_ids * interval.count / 100). If no product_ids are specified, # of product_ids = 100.

    • E.g: With product_ids=[1, 2, 3, 4] and interval.count=60 you can make up to 100 requests per min or 25 requests/10 secs.

See more details in API Rate limits

Request

Query market snapshots ordered by timestamp desc.

POST [ARCHIVE_ENDPOINT]

Body

{
    "market_snapshots": {
        "interval": {
          "count": 2,
          "granularity": 3600,
          "max_time": 1691083697,
        },
        "product_ids": [1, 2]
    }
}

Request Parameters

Parameter
Type
Required
Description

interval

object

Yes

Object to specify desired time period for data

interval.count

number

Yes

Number of snapshots to return, limit 100. Also limited to interval.count * # product_ids < 2000

interval.granularity

number

Yes

Granularity value in seconds

interval.max_time

number / string

No

When providing max_time (unix epoch in seconds), only return snapshots with timestamp <= max_time. If no value is entered, max_time defaults to the current time.

product_ids

number[]

No

list of product ids to fetch snapshots for, defaults to all products

Response

Note: Please note that this endpoint is currently in beta stage. This feature might be subject to changes without prior notice.

{
  "snapshots": [
    {
      "timestamp": 1689965194,
      "cumulative_users": 2774,
      "daily_active_users": 251,
      "cumulative_trades": {
        "1": 54287,
        "2": 172435
      },
      "cumulative_volumes": {
        "1": "259549132367035103631071564",
        "2": "1134008547778337985156988339"
      },
      "cumulative_trade_sizes": {
        "1": "9209508999999999995173",
        "2": "40246259000000000000000"
      },
      "cumulative_taker_fees": {
        "1": "88916428908427788322799",
        "2": "259205794197801680292645"
      },
      "cumulative_sequencer_fees": {
        "1": "11038200000000000000000",
        "2": "32353000000000000000000"
      },
      "cumulative_maker_fees": {
        "1": "-12421730086012739050725",
        "2": "-36124007075181485948604"
      },
      "cumulative_liquidation_amounts": {
        "1": "848311398835000694508",
        "2": "1013231566414935056343898"
      },
      "open_interests": {
        "2": "2907581091676822842104781"
      },
      "total_deposits": {
        "1": "37722308770940799414"
      },
      "total_borrows": {
        "1": "1441397740941092000"
      },
      "funding_rates": {
        "2": "3611102723387"
      },
      "deposit_rates": {
        "1": "1001376785714"
      },
      "borrow_rates": {
        "1": "32059880416879"
      },
      "cumulative_inflows": {
        "1": "238791614019999999853",
        "2": "0"
      },
      "cumulative_outflows": {
        "1": "-202514202990000000306",
        "2": "0"
      },
      "tvl": "7560079507311601381352742"
    },
    ...
  ]
}

Response Fields

Snapshots

Note: For product specific fields (i.e. cumulative_volume, open_interests), the value is an object which maps product_ids to their corresponding values.

Field name
Description

timestamp

Timestamp of the snapshot. This may not be perfectly rounded to the granularity since it uses the nearest transaction timestamp less than or equal to max_time

cumulative_users

The cumulative number of subaccounts on Vertex. It is updated daily at 9AM ET for historical counts. For current day counts, it is updated every hour.

daily_active_users

Daily active users count, updated daily at 9AM ET for historical counts. For current day counts, it is updated every hour.

cumulative_trades

A map of product_id -> the cumulative number of trades for the given product_id.

cumulative_volumes

A map of product_id -> cumulative volumes in USDC units.

cumulative_trade_sizes

A map of product_id -> cumulative trade sizes in base token

cumulative_taker_fees

A map of product_id -> cumulative taker fees. Taker fees include sequencer fees.

cumulative_sequencer_fees

A map of product_id -> cumulative sequencer fees.

cumulative_maker_fees

A map of product_id -> cumulative maker rebates.

cumulative_liquidation_amounts

A map of product_id -> cumulative liquidation amounts in USDC units.

open_interests

A map of product_id -> open interests in USDC units.

total_deposits

A map of product_id -> total deposits held by Vertex for a given product at the given time in the base token units.

total_borrows

A map of product_id -> total borrows lent by Vertex for a given product at the given time in the base token units.

funding_rates

A map of product_id -> hourly historical funding rates, value returned as decimal rates (% = rate * 100), derived from funding payment amounts. Requires a minimum granularity of 3600 to see non-zero funding rates. Use a granularity where granularity % 3600 = 0 for best results.

deposit_rates

A map of product_id -> daily deposit rates, values returned as decimal rates (% = rate * 100).

borrow_rates

A map of product_id -> daily borrow rates, values returned as decimal rates (% = rate * 100).

cumulative_inflows

A map of product_id -> cumulative inflows a.k.a deposits in base token units.

cumulative_outflows

A map of product_id -> cumulative outflows a.k.a withdraws in base token units.

tvl

The total value locked in USD.

Last updated