PnL Calendar API — a trader’s consistency
at a glance

The PnL calendar API returns a wallet’s realized PnL day by day, grouped by month. Each day carries PnL, volume, buy and sell counts and tokens traded; each month adds totals and the longest winning and losing streaks.

3,000+
Labeled Wallets
1.5M+
Wallet TXN / month
10M+
API Requests / month
20+
Integration Partners
99.90%
Uptime SLA
Trusted by
Axiom
MevX
XTrade
Mizar
Trojan
Trady
o1.exchange
Glyde
Genius
Axiom
MevX
XTrade
Mizar
Trojan
Trady
o1.exchange
Glyde
Genius
Use Case · PnL Calendar

Render a wallet PnL calendar from one API call

What it shows

A calendar with one cell per day: green for a winning day, red for a losing one. Every day includes realized PnL in native currency and USD, traded volume, buy and sell transaction counts, total buy and sell value, and the number of distinct tokens traded.

Every month comes with a summary: realized PnL, volume, transaction counts, tokens traded and the longest positive and negative day streaks. That makes consistency visible quickly — a wall of green is a steady winner, a scattered calendar is a gambler.

How it works

Call the calendar endpoint with blockchain and address. The response contains months, an array of all months oldest first. Each entry has a dates array with the days and a month object with the monthly summary, so you can render the grid without further aggregation.

Day dates use the format DD-MM-YY, for example 04-07-26. The current month updates continuously and is also returned at the top level as dates and month for convenience. The response includes the wallet’s profile, so the calendar header needs no second request.

Supported chains: Solana, BNB Chain, Base, Ethereum and Robinhood Chain (blockchain values solana, bnb, base, eth and rh). Solana has KOL, Smart Money and Whale wallets; BNB Chain, Base and Robinhood Chain have KOL and Smart Money; Ethereum has KOL wallets.

Quick start

Get a free key from the API dashboard (10,000 credits per month, no credit card), then:

REST · cURL
curl "https://api.cabalspy.xyz/v1/wallet/pnl_calendar?blockchain=solana&address=7j7AA3HZR2zEjwAQEKPFh2qucLY4fqZpB9iodf39w8xW&api_key=YOUR_KEY"
REST · JavaScript
const p = new URLSearchParams({
  blockchain: "solana",
  address: "7j7AA3HZR2zEjwAQEKPFh2qucLY4fqZpB9iodf39w8xW",
  api_key: "YOUR_KEY",
});
const res = await fetch(`https://api.cabalspy.xyz/v1/wallet/pnl_calendar?${p}`);
const { data } = await res.json();
data.months.forEach(month =>
  month.dates.forEach(day => console.log(day.date, day.realized_pnl)));

Who builds this

  • Trading terminals — a calendar heatmap on every wallet profile page
  • Copy-trading apps — show how consistent a trader is before users follow them
  • Portfolio and journal tools — daily and monthly realized PnL without computing it from raw trades
  • Telegram and Discord bots — a monthly PnL summary with streaks for a wallet

Frequently asked questions

01

How do I build a wallet PnL calendar?

Call GET https://api.cabalspy.xyz/v1/wallet/pnl_calendar with blockchain and address. The PnL calendar API returns a months array, oldest first; each month has a dates array with one entry per day (date, realized_pnl, realized_pnl_usd, volume, buy_txn, sell_txn, tokens_traded) and a month summary. Render one cell per day and color it by the sign of realized_pnl.

02

What data does the PnL calendar return for each day?

Each day contains the date in DD-MM-YY format, realized PnL in native currency and USD, volume, buy, sell and total transaction counts, total buy and sell value in native currency and USD, and the number of distinct tokens traded.

03

Does the PnL calendar include winning and losing streaks?

Yes. Each month summary includes positive_streak and negative_streak, the longest winning and losing day streaks in that month, together with the month’s realized PnL, volume, transaction counts and tokens traded.

04

Is the PnL realized or unrealized?

The calendar shows realized PnL only: profit and loss from positions the wallet has sold. Open positions and their unrealized PnL are not part of the calendar.

05

How many API calls does a PnL calendar need?

One. A single REST request returns all months with their days and summaries, and costs 10 credits. The free tier includes 10,000 credits per month.

Go deeper

Related use cases

Build PnL Calendar into your product. Start free today.

10,000 free credits every month, REST and WebSocket access, no credit card. Plans from $49/month.