Binance ZECUSDT perpetual: historical order book, tick trades & funding
3.70M trade, depth, mark-price and funding events for the ZECUSDT perpetual since 2025-06-01 — about 7,227 events a day.
Coverage
ZECUSDT perp data coverage
What is recorded, how often it updates and how much there is.
History start
2025-06-01
512 days of history
Events recorded
3,700,000
≈ 3.70M as of 2026-10-25
Avg events / day
7,227
trade · depth update · mark price · funding
Update frequency
Every trade tick-by-tick; depth diffs at 100 ms; mark price and funding as published
Daily activity · last 30 days
Indicative daily event volume, last 30 days to 2026-10-25. Shape modeled from collector stats; mean matches the average events/day above.
About this market
What is ZECUSDT perp?
The ZECUSDT perp has become one of Binance futures' busiest altcoin contracts, with funding that regularly sits at extremes during privacy-coin rallies. AymarData holds 3.70M events for it since 2025-06-01: trades, order-book updates at 100 ms, mark price and funding.
Zcash is a privacy coin with optional shielded transactions and a Bitcoin-style fixed supply schedule. On the derivatives side, ZEC perp is moved by the privacy narrative, which flares whenever regulators or analytics firms make headlines, and by shielded-pool growth, a slow-moving fundamental that traders watch as a sentiment gauge. Because it is leveraged, those same drivers also show up as funding-rate shifts and liquidation-driven bursts that don't appear on spot.
ZECUSDT perp produces around 7,227 events a day. Funding and mark price events are recorded alongside trades and depth, so you can test funding-carry strategies, study how perp depth thins ahead of funding times, and see when leverage crowds one side.
What moves the ZECUSDT perp
- The privacy narrative, which flares whenever regulators or analytics firms make headlines
- Shielded-pool growth, a slow-moving fundamental that traders watch as a sentiment gauge
- Listing and delisting decisions by exchanges that are cautious about privacy assets
Schema
ZECUSDT perp fields and sample rows
The same columns are returned by the API and in Parquet and CSV files.
| Field | Type | Description |
|---|---|---|
| ts_ms | int64 | Exchange event time, Unix milliseconds |
| symbol | string | USDⓈ-M perpetual symbol, here ZECUSDT |
| event_type | string | trade | depth_update | mark_price |
| side | string | buy / sell for trades; bid / ask for depth; null on mark_price |
| price | number | Trade price, book level or mark price in USDT |
| size | number | Contract quantity; null on mark_price |
| funding_rate | number | null | Current funding rate on mark_price events, else null |
Sample rows
| ts_ms | symbol | event_type | side | price | size | funding_rate |
|---|---|---|---|---|---|---|
| 1792684798234 | ZECUSDT | trade | sell | 410.26 | 7.264 | null |
| 1792684798541 | ZECUSDT | depth_update | ask | 410.28 | 8.261 | null |
| 1792684799402 | ZECUSDT | mark_price | null | 410.25 | null | 0.00001655 |
Illustrative rows for the ZECUSDT perpetual; prices are in USDT and shown for schema purposes, not as live quotes. Funding appears on mark_price events.
Code
Pull ZECUSDT perp in Python, cURL or MCP
Market id: ZECUSDT. Export AYMARDATA_API_KEY from your dashboard, then run the Python requests example.
import os
import requests
API = "https://api.aymardata.com/v1"
KEY = os.environ["AYMARDATA_API_KEY"] # export AYMARDATA_API_KEY=ad_live_…
H = {"Authorization": f"Bearer {KEY}", "User-Agent": "aymardata-docs/1.0"}
# ZECUSDT perp: ten minutes around the 16:00 UTC funding window
trades = requests.get(
f"{API}/trades",
headers=H,
params={
"source": "binance-perps",
"market": "ZECUSDT",
"start": "2026-10-22T15:55:00Z",
"end": "2026-10-22T16:05:00Z",
"limit": 500,
},
timeout=30,
).json()["data"]
marks = [t for t in trades if t["event_type"] == "mark_price"]
print(marks[0]["price"], marks[0]["funding_rate"])
book = requests.get(
f"{API}/book",
headers=H,
params={
"source": "binance-perps",
"market": "ZECUSDT",
"at": "2026-10-22T16:00:00Z",
"depth": 10,
},
timeout=30,
).json()
print(book.get("spread"), len(trades))FAQ
ZECUSDT perp: common questions
Can I back-test funding-carry strategies on the ZECUSDT perp perp?
Yes. Mark price and funding events are stored with trades and depth (~7,227 events a day), so you can compute carry, slippage when entering at funding time, and what happens to the book when funding is extreme.
How are funding and mark price stored for the ZECUSDT perpetual?
They are separate events (event_type=mark_price) in the same time-ordered stream as trades and depth. The funding_rate field carries the current funding rate; it is null on other event types, so you can filter funding with a single predicate.
What moves the ZECUSDT perpetual?
The privacy narrative, which flares whenever regulators or analytics firms make headlines, and shielded-pool growth, a slow-moving fundamental that traders watch as a sentiment gauge. The ZECUSDT perp has become one of Binance futures' busiest altcoin contracts, with funding that regularly sits at extremes during privacy-coin rallies.
How much ZECUSDT perp history is available?
3.70M events since 2025-06-01, averaging 7,227 per day, each stamped with Binance's exchange timestamp in milliseconds.
Can I measure ZEC basis between spot and perp?
Yes: join ZECUSDT perp with ZECUSDT spot on ts_ms. The perp page shows mark price and funding; the spot page has the cash order book. Use both to measure basis and lead-lag.
Related
Related markets and next steps
Backtest ZECUSDT perp with real tick data
Get an API key, pull your first window and join it with the other sources in the catalog.