Traders and positions
Positions, the trade tape, the leaderboard, and the public bits of a profile.
Eight GET routes cover traders: open positions by address, the trade tape with its filters, the leaderboard paged by an opaque cursor with the house row beside it rather than in it, one address's rank, the public half of a profile, and batch lookups for names and crowns.
| Method | Path | Answers |
|---|---|---|
GET | /positions/:trader | Every open position for one address. |
GET | /trades | The trade tape. Filters below. |
GET | /leaderboard | The ranking, paged by cursor, with the house row beside it. |
GET | /leaderboard/rank/:trader | One address's standing. 404 if it has never traded. |
GET | /profile/:trader | Public profile: name and bio. Always 200, all null for a fresh address. |
GET | /names | Batch address to display name: ?addresses=a,b,c, up to 100 per call. |
GET | /crowns | Batch address to visible crown count, same shape and cap. |
GET | /follows/:trader | Who this trader follows. The reverse list is not served anywhere, on purpose. |
The trade tape
- symbol
- One market.
- trader
- One address.
- event_type
- One of
open,increase,decrease(closes and partial closes, triggers included),liquidationordeleverage. - before_id
- Pages backwards. Pass the last id you saw.
- limit
- 1 to 200, default 50.
GET https://win-trader.com/api/trades?symbol=BTCUSD&event_type=liquidation&limit=20
Paging the leaderboard
The board pages by an opaque cursor rather than an offset, and hands back an envelope: rows, the house beside them rather than among them, and next_cursor, which is null when the board ends. limit is 1 to 200, default 50.
The house row appears only on the first page. It is not a place in the ranking, and repeating it under every scroll would read as the Vault placing twice. Pass window=round to narrow the ranking to the running competition round instead of all time; the app itself shows the all-time board.