Trade Data API¶
Overview¶
get_trade() queries Binance UM futures trade records from DolphinDB.
It follows the same style as get_kline() and supports:
- single or multiple symbols
- date-range filtering
- field projection (
fields) - pagination (
limit+offset)
API¶
get_trade()¶
client.get_trade(
symbol: str | list[str],
start_date: str,
end_date: str,
fields: str = "*",
limit: int = 2_000_000,
offset: int = 0,
) -> pd.DataFrame
Equivalent service call:
Parameters¶
| Parameter | Type | Default | Description |
|---|---|---|---|
symbol |
str | list[str] |
required | Contract code(s), e.g. "BTCUSDT" or ["BTCUSDT","ETHUSDT"] |
start_date |
str |
required | Inclusive start date in YYYY-MM-DD |
end_date |
str |
required | Inclusive end date in YYYY-MM-DD |
fields |
str |
"*" |
Columns to return, comma-separated |
limit |
int |
2_000_000 |
Max rows to return |
offset |
int |
0 |
Pagination offset |
Returned Data¶
Returns a pd.DataFrame. Typical columns in the trade table:
trade_datesymboltrade_idpriceqtyquote_qtytrade_timeis_buyer_makerupdate_time
If no data matches, an empty DataFrame is returned.
Examples¶
Single symbol¶
import zer0data as zd
client = zd.Client()
df = client.get_trade(
symbol="BTCUSDT",
start_date="2026-03-01",
end_date="2026-03-01",
)
print(df.head())
Multiple symbols and selected fields¶
df = client.get_trade(
symbol=["BTCUSDT", "ETHUSDT"],
start_date="2026-03-01",
end_date="2026-03-02",
fields="symbol,trade_date,trade_id,price,qty,trade_time",
limit=5000,
offset=0,
)
Use service directly¶
svc = zd.TradeService()
df = svc.get_trade(
symbol="ETHUSDT",
start_date="2026-03-01",
end_date="2026-03-01",
)
Notes¶
- Date format must be
YYYY-MM-DD. - Query scope is
market="crypto"only. - For large ranges, prefer explicit
fieldsand smaller page sizes.