wallet_trades
Чем торговал кошелёк — один раз за маршрут, а не за каждый хоп.
Subscribe
Требуется адрес кошелька.
json
{
"op": "subscribe",
"stream": "wallet_trades",
"params": {
"wallet": "7xK…3F2a",
"platforms": ["jupiter"],
"tradeTypes": ["SWAP"],
"minUsdAmount": "100"
},
"id": 1
}Фильтры
| Param | Type | Description |
|---|---|---|
wallet | string | Обязательно. Кошелёк для отслеживания. |
platforms | string[] | Slug площадок / роутеров. |
tradeTypes | string[] | BUY, SELL, SWAP или all. |
minUsdAmount | string | Минимальный нотионал в USD. |
detail | basic / full | Уровень полезной нагрузки; по умолчанию basic. |
tradeType относительно подписанного кошелька: трата quote-актива — BUY, получение — SELL, токен-на-токен — SWAP. user всегда равен подписанному кошельку.
Event
json
{
"op": "event",
"sub": "wr_1f08",
"stream": "wallet_trades",
"cursor": "330112261:6:0",
"data": {
"slot": 330112261,
"signature": "6Qz…9vTs",
"blockTime": 1769270448,
"protocol": "jupiter",
"tradeType": "SWAP",
"user": "7xK…3F2a",
"input": {
"mint": "So111…1112",
"amountRaw": "10000000000",
"amount": "10"
},
"output": {
"mint": "EPj…Dt1v",
"amountRaw": "1458000000",
"amount": "1458.00"
},
"valueUsd": "1458.00"
}
}Basic fields
Конверт, tradeType, user, input, output и valueUsd имеют ту же форму, что и в token_trades.
valueUsd равен null, когда ни одна нога не SOL и не стейблкоин. Такие события проходят фильтр minUsdAmount.
Full fields
| Field | Type | Notes |
|---|---|---|
route.venues | string[] | Площадки, использованные маршрутом |
route.hops | Hop[] | Протокол, пул, input, output и резервы по каждому хопу |
fees | Fee[] | Декодированные комиссии транзакции |
computeUnits | number | Использование compute на уровне транзакции |
priorityFee | { amountRaw, decimals } | Priority fee транзакции |
transfers | Transfer[] | Отдельные движения вне маршрута |
Каждый маршрут эмитится один раз, а не один раз за хоп.