All Posts
AnalysisLeveraged ETFsETF RebalancingDaily Holdings Data

Leveraged ETF Rebalancing in Daily Holdings

Leveraged ETF rebalancing, measured in TQQQ and SQQQ daily holdings: swap exposure reset to 3x each close, the rebalance formula, and inverse ETF flows.

Published October 2, 202613 min readStockFit Engineering
Leveraged ETF Rebalancing in Daily Holdings

Every explainer on leveraged ETF rebalancing says the same thing: a 3x fund resets its exposure at the close, every trading day. That is true, and it is the least useful part of the story, because it never shows you the trade. The funds publish it themselves. On Monday, September 21, 2026, the Nasdaq-100 closed up 2.83%. TQQQ's holdings file for that day carries 162,731 more Nasdaq-100 index units of swap exposure than Friday's file, about $4.96 billion of added notional, and its total exposure lands at 300.05% of net assets.

This post measures leveraged ETF rebalancing directly from the daily holdings files behind /api/fund/holdings/daily: what a leveraged fund's file actually contains, how tightly nine leveraged and inverse ETFs hold their stated multiple, how large the daily rebalance trade really is, and why, for an inverse fund like SQQQ, investor flows mattered more than the textbook formula in September 2026.

How often do leveraged ETFs rebalance?

Every trading day, at or near the close. The objective in TQQQ's own prospectus is a daily one: "ProShares UltraPro QQQ® (the “Fund”) seeks daily investment results, before fees and expenses, that correspond to three times (3x) the daily performance of the Nasdaq-100® Index (the “Index”)." The same filing is explicit about the mechanism: "The Fund seeks to rebalance its portfolio each day so that its exposure to the Index is consistent with the Daily Target." Both sentences come back verbatim, with a link to the prospectus on sec.gov, from /api/fund/exposure-model, which checks every quote against the filing text before it returns it.

The reason is arithmetic. During the day a leveraged fund's exposure is fixed in index units, but its net assets move L times as fast as the index. After a 1% rise, a 3x fund's $100 of net assets becomes $103 while its $300 of exposure becomes $303, a leverage ratio of 2.94x. To get back to 3x it has to buy $6 of exposure. After a 1% fall it has to sell $6. The general rule, laid out in a Bank of England staff post on leveraged and inverse ETFs, is net assets times the index move times (L² - L):

Fund typeExampleLRebalance per 1% index move
Unleveraged index fundQQQ1None
2x longQLD22% of net assets
3x longTQQQ36% of net assets
1x inversePSQ-12% of net assets
2x inverseQID-26% of net assets
3x inverseSQQQ-312% of net assets

Two things fall out of that table. First, the trade always runs in the same direction as the market, for long and inverse funds alike. After an up day an inverse fund's losses have shrunk its net assets while its short exposure has grown, so it is over-levered and has to buy some exposure back. It is easy to get that case backwards; the SQQQ section below works through it with the fund's own files. Second, inverse funds trade more than long funds with the same size multiple: 12% of net assets per 1% move for -3x, against 6% for 3x.

What a leveraged ETF's daily holdings file contains

A quarterly filing can't show any of this. The most recent N-PORT holdings for TQQQ available through /api/fund/holdings on October 2, 2026 are dated May 31, 2026, four months earlier. The daily file is the issuer's own end-of-day book. Here is the call, and three of the 126 rows TQQQ published for September 21:

bash
curl -H "Authorization: Bearer $TOKEN" \
  "https://api.stockfit.io/v1/api/fund/holdings/daily?symbol=TQQQ&reportDate=2026-09-21&pageSize=1000"
json
{
  "reportDate": "2026-09-21",
  "totalResults": 126,
  "data": [
    {
      "name": "NASDAQ 100 INDEX SWAP BANK OF AMERICA NA",
      "balance": 378279,
      "units": "NC",
      "currency": "USD",
      "pctVal": 29.4
    },
    {
      "name": "NASDAQ 100 E-MINI EQUITY INDEX 18/DEC/2026 NQZ6 INDEX",
      "balance": 5240,
      "units": "NC",
      "currency": "USD",
      "pctVal": 8.23
    },
    {
      "name": "NVIDIA CORP",
      "ticker": "NVDA",
      "sedol": "2379504",
      "balance": 5033390,
      "units": "NC",
      "currency": "USD",
      "valueUsd": 1144492218,
      "pctVal": 2.92
    }
  ]
}

Three kinds of rows carry the exposure. Ten swap rows, one per bank counterparty, carry only a pctVal: the swap's notional as a percent of net assets. Their balance is that notional in Nasdaq-100 index units. We checked this the hard way: dividing each file's swap notional by its balance reproduces the official Nasdaq-100 close for that date within 0.007% on every one of TQQQ's 18 and SQQQ's 17 daily files from September 2 to October 1. That also settles a detail worth knowing before you diff anything: these ProShares files are priced at the close of their own date, after that day's rebalance. One futures row (December E-mini Nasdaq-100 contracts) adds more exposure, and the stock rows hold part of the index directly. Everything else in the file, T-bills, a money-market ETF, and a net-other-assets line, is collateral, not exposure.

Sum the exposure rows and the leverage is right there. Across nine leveraged and inverse funds from two issuers, every one of their September 30, 2026 files lands within 0.09 percentage points of its stated multiple, and each gets there a different way:

Nine leveraged and inverse ETFs, one date: each lands on its stated multiple
Source: /api/fund/holdings/daily, each fund's 2026-09-30 file. Exposure is the sum of the swap, futures, and stock rows; T-bills, money-market and cash rows are collateral.

TQQQ gets 258.15% of its 299.96% from swaps with 10 banks, 8.20% from futures, and 33.61% from stocks it owns outright. The inverse funds hold no stocks at all, the two Direxion semiconductor funds use no futures, and QLD and SSO also hold swaps that reference an ETF (QQQ and SPY respectively) rather than the index itself, a structure TQQQ's prospectus also allows for. The total is the constant; the mix underneath it moves. TQQQ's futures sleeve went from 12.28% of net assets on September 2 to 7.00% on September 14, while its swap sleeve grew from 249.27% to 253.46%.

The daily reset, file by file

If a leveraged fund rebalanced weekly, its files would show exposure wandering between resets. They don't. In all 18 of TQQQ's September files, exposure sits between 299.90% and 300.05% of net assets. SQQQ's 17 files range from -300.41% to -299.94%. Over the same weeks the Nasdaq-100 swung between 28,937.84 (September 15) and 30,732.40 (September 22).

To see what the daily trade prevents, hold each fund's September 2 positions fixed and let the market move. By September 22, a never-rebalanced TQQQ would have been only 2.72x levered, and a never-rebalanced SQQQ would have been 3.78x short, about 26% more short exposure than its 3x target.

Pinned at 3x in every file, while a never-rebalanced copy drifts
Solid: exposure in each daily file (/api/fund/holdings/daily), SQQQ shown as the absolute size of its short exposure. Dashed: the same 2026-09-02 positions held without rebalancing, computed from official Nasdaq-100 closes. Both panels share one scale.

That asymmetry is the inverse-fund problem in one picture. When the market rises, an inverse fund's losses shrink its net assets while its short exposure grows, so its leverage climbs instead of decaying. Rebalancing means buying back short exposure into the rally, every day it continues.

An unleveraged index fund never needs this trade: with L = 1 the rule above gives zero, because its exposure and its net assets move together. QQQ's own daily files bear that out. On 18 of 20 consecutive file pairs in September, every stock position in QQQ moved by one common ratio, the signature of creations and redemptions adding or removing a slice of the whole book rather than any trading decision. The two exceptions were index events: Kraft Heinz leaving the Nasdaq-100 effective September 14, and the quarterly rebalance effective September 21. For more on how differently index, active, and leveraged books change day to day, see how often ETF holdings change.

Measuring leveraged ETF rebalancing flows: TQQQ

Two consecutive files give you the trade. Take yesterday's exposure, mark it to today's index close (that is what it was worth before the fund did anything), and subtract it from today's exposure. What is left is what the fund bought or sold. For September 21:

  • The Nasdaq-100 rose 2.827%, from 29,644.17 to 30,482.35.
  • The 3x reset alone required 6 x 2.827% x $36.62 billion (the September 18 net assets) = +$6.21 billion of new exposure.
  • The files show +$4.74 billion: the swaps added 162,731 index units, about $4.96 billion of notional, while the stock sleeve was trimmed.
  • The gap is flows: net redemptions of about $502 million that day (share counts put it at $557 million), and every redeemed dollar is $3 of exposure the fund no longer needs.
TQQQ's rebalance trade, day by day, September 2026
Columns: exposure change between consecutive TQQQ files, net of the market move. Dots: 6 x the Nasdaq-100 move x prior net assets. The gap is creations and redemptions, at 3x.

Across the 15 consecutive trading-day pairs on file, TQQQ's measured trade went the same direction as the reset on 13. The two exceptions were near-flat days (September 24 and 30) where redemptions outweighed a small reset. The flows lean one way, too: TQQQ shrank through net redemptions on 7 of the 9 up days in the sample, partly offsetting the buying its reset required. The subtraction itself is the same diff of two daily files we used to detect when an ETF adds a stock.

Inverse ETF rebalancing, and the flows that cancel it

SQQQ is the same machine pointed the other way, and at $2.04 billion of net assets its flows are large enough to change the answer. On September 21 the reset alone required SQQQ to buy back $691 million of short exposure. But $248 million of new money came in that day (share counts: $251 million), and every new dollar needs $3 of fresh short exposure. The two almost cancelled: SQQQ's short swap position grew by 1,683 index units, a net change of about -$52 million.

September 28 ran the other way. The Nasdaq-100 fell 1.08%, so the reset alone called for adding $289 million of short exposure. Redemptions of $229 million required cutting about three times that. Net, SQQQ bought back $398 million of short exposure on a down day (13,154 index units), the opposite of what the formula alone predicts.

SQQQ's rebalance trade, day by day, September 2026
Columns: exposure change between consecutive SQQQ files (positive means short exposure was bought back). Dots: 12 x the Nasdaq-100 move x prior net assets. The gap is creations and redemptions, at -3x.

Over the 12 consecutive pairs on file, SQQQ's measured trade went the reset's direction on only 5. Its flows ran against the market: new money on 6 of the 7 up days, and its largest redemption of the month on the down day of September 28. That is the practical case for measuring rather than estimating. A formula-only estimate of leveraged ETF rebalancing flows turns the day's index move into a dollar figure and assumes no creations or redemptions. For TQQQ in this sample that assumption held up on 13 of 15 days; for SQQQ, on 5 of 12. The daily file shows the net trade the fund actually had to make. It does not show when in the session the fund made it, or who took the other side. For the quarterly view of the same creation and redemption activity, see the ETF fund flows API post.

What daily rebalancing means past one day

The daily reset is also why TQQQ's prospectus says it does not seek its 3x target "for any period other than a day." September shows the gap in practice. From the August 31 close to the September 30 close, the Nasdaq-100 rose 3.23%, and three times that is 9.69%. But TQQQ compounds 3x of each day's move, not of the month's, and day-to-day swings erode the compounded result: 3x of each trading day's official close-to-close move, compounded, gives 9.35% before any cost at all. TQQQ itself returned 8.71%, distribution included. Its prospectus names the rest of the gap: "Fees, expenses, transaction costs, financing costs associated with the use of derivatives, among other factors, will adversely impact the Fund's ability to meet its Daily Target."

None of this is investment advice, and none of the funds named here are a signal to buy, sell, or hold anything. They illustrate a mechanism, measured.

Tracking leveraged ETF exposure with the API

Everything above comes from one call per fund per day. This sketch classifies the rows, sums the exposure, and reproduces the September 21 TQQQ trade:

js
const BASE = 'https://api.stockfit.io/v1/api/fund/holdings/daily';

async function dailyFile(symbol, date) {
  const res = await fetch(`${BASE}?symbol=${symbol}&reportDate=${date}&pageSize=1000`, {
    headers: {Authorization: `Bearer ${process.env.STOCKFIT_TOKEN}`},
  });
  return res.json();
}

const isSwap = r => /SWAP/i.test(r.name);
const isFuture = r => !isSwap(r) && /E-?MINI|EMINI|\bFUT\b|FUTURE/i.test(r.name);
const isCollateral = r => /TREASURY|\bBILL\b|NET OTHER|CASH|MNY MKT|TRSRY|TRSY|\bGOVT?\b/i.test(r.name);

function exposure(file) {
  const exposurePct = file.data
    .filter(r => isSwap(r) || isFuture(r) || !isCollateral(r))
    .reduce((sum, r) => sum + (r.pctVal ?? 0), 0);
  const netAssets = file.data
    .filter(r => r.valueUsd != null && !isSwap(r) && !isFuture(r))
    .reduce((sum, r) => sum + r.valueUsd, 0);
  return {multiple: exposurePct / 100, netAssets};
}

const before = exposure(await dailyFile('TQQQ', '2026-09-18'));
const after = exposure(await dailyFile('TQQQ', '2026-09-21'));
const ndxMove = 30482.35 / 29644.17 - 1; // official closes

const trade = after.multiple * after.netAssets - before.multiple * before.netAssets * (1 + ndxMove);
const resetOnly = 3 * (3 - 1) * ndxMove * before.netAssets;
console.log((trade / 1e9).toFixed(2), (resetOnly / 1e9).toFixed(2)); // 4.74 6.21

Four things to handle before you run this across many funds. Issuers format their files differently: ProShares swap rows carry a pctVal but no valueUsd, while Direxion's carry both, plus per-counterparty codes in the cusip field that have been reformatted between snapshots, a trap covered in our ETF turnover rate post. Match on exposure totals, not on swap identifiers. History is a rolling window of roughly 30 days and can have gaps (TQQQ has no file on record for September 10 or 16), so only diff consecutive trading days. Price the index move from the same closes the file uses; here, the official Nasdaq-100 close. And confirm a fund is covered first with /api/fund/holdings/daily/supported-funds, which is free tier. For index and fund returns over any window, /api/price/history returns adjusted or unadjusted closes.

/api/fund/holdings/daily and /api/fund/exposure-model require the ETF plan ($59/mo, $39/mo billed annually) or Professional ($99/mo, $69/mo billed annually). For the full shape of the daily file across index, active, and leveraged funds, start with the daily ETF holdings API walkthrough, and see the ETF and fund data API page for everything else on the fund side. to check the supported-funds list first.

FAQ

Q.How often do leveraged ETFs rebalance?
Every trading day, at or near the close. TQQQ's prospectus says the fund "seeks to rebalance its portfolio each day so that its exposure to the Index is consistent with the Daily Target," and its daily holdings files bear it out: all 18 of its September 2026 files show total exposure between 299.90% and 300.05% of net assets.
Q.Do inverse ETFs buy or sell when the market goes up?
The rebalance itself makes them buy. After an up day an inverse fund's losses shrink its net assets while its short exposure grows, so it buys exposure back to return to its target. On September 21, 2026, that reset alone called for SQQQ to buy back about $691 million of short exposure. Creations and redemptions can offset it: new money that day needed fresh short exposure, so SQQQ's net change was only about -$52 million.
Q.How much does a leveraged ETF have to trade to rebalance?
Net assets times the index move times (L² - L), where L is the leverage. Per 1% index move that is 2% of net assets for a 2x fund, 6% for 3x or -2x, and 12% for -3x. On September 21, 2026, a 2.83% Nasdaq-100 gain meant TQQQ needed about $6.21 billion of new exposure from the reset alone.
Q.What does TQQQ actually hold?
Its September 30, 2026 file shows 258.15% of net assets in Nasdaq-100 index swaps with 10 bank counterparties, 8.20% in E-mini Nasdaq-100 futures, and 33.61% in Nasdaq-100 stocks held directly, for 299.96% total exposure. T-bills, a money-market ETF, and a net-other-assets line make up the collateral.
Q.Why doesn't TQQQ return 3x the Nasdaq-100 over a month?
It targets 3x each day, not over any longer period. In September 2026 the Nasdaq-100 rose 3.23%; compounding 3x of each day's move gives 9.35%, below the 9.69% that 3x the month implies, before any cost. TQQQ returned 8.71%; its prospectus lists fees and the financing and transaction costs of its derivatives among the factors that pull returns below its daily target.
Q.How do I get leveraged ETF daily holdings data via API?
Call /api/fund/holdings/daily with the fund's ticker and an optional reportDate. It returns the issuer's own published file, swap, futures, stock, and collateral rows included, for roughly the last 30 days. The supported-funds list is free tier; the daily endpoint requires the ETF plan ($59/mo, $39/mo billed annually) or Professional ($99/mo, $69/mo billed annually).
Q.Can quarterly N-PORT data show a leveraged ETF's daily rebalancing?
No. N-PORT holdings are a single point in time, published with a lag: on October 2, 2026, the most recent TQQQ N-PORT holdings available through /api/fund/holdings were as of May 31, 2026. A daily rebalance only shows up by comparing consecutive daily files.

Ready to build?

Free API key, no credit card.