The method behind every number, and the open-source script that reproduces it. Because a number you can't reproduce isn't worth trusting. ← back to the live check
Crypto dashboards show funding APY (the rate longs and shorts pay each other on perpetual futures) as if it were clean yield. It isn't: it's gross (before the fees and spread you actually pay), it's not risk-adjusted, and it ignores regime (funding compresses, and the headline doesn't say when the edge is gone).
A delta-neutral carry book: long 1 unit of spot, short 1 unit of the perpetual, rehedged 1:1 each funding settlement (every 8 hours). Price cancels, so the only things that move P&L are the funding you receive and the drift in the basis = (spot − perp) / perp. Per 8-hour settlement, while the position is on:
step P&L = funding_rate + (basis_now − basis_last) cost/leg = taker fee (0.075%) + basis half-spread (at least 2 bp)
From the per-settlement P&L we annualize the net APY. For subscribers we also compute Sharpe against a 4.5% risk-free rate, max drawdown, a bear-market drawdown, and a hedge-integrity check (is your "neutral" book secretly carrying directional risk?).
| Asset | Gross funding APY (headline) | Net of costs | vs 4.5% risk-free |
|---|---|---|---|
| BTC | +3.98% | +0.93% | below |
| ETH | +2.80% | −0.11% | below |
The measured spot to perp basis was small (single-digit basis points, as expected on liquid majors), and the hedge held. So on that snapshot, funding carry on BTC/ETH was not worth it: the net number sat below what you'd earn risk-free. That's the call the headline +3.98% would never let you make. (The live check shows the current week's numbers, which will differ.)
The exact script that produces these numbers is open source (MIT): github.com/ionutcricoveanu/carryscope-methodology. No API key, no dependencies. Run it and you'll get today's number, not ours.