When Index Funds Dey Trade? ETF vs Mutual Fund
Know when index funds dey trade: ETF prices all day like stock, but mutual fund fills at NAV after 4 p.m. See which wrapper fit your plan.
When index funds dey trade? Two answers dey inside that one question. The one wey apply to you depend on the wrapper wey you hold.
Index ETF dey trade continuously while market dey open. E dey trade at any price wey buyer and seller agree on for that moment.
Index mutual fund no dey trade during the day at all. Every order wey person place before cutoff, whether na 9:31 a.m. or 3:55 p.m., go fill at the same net asset value (NAV). Fund go strike that NAV once after market close by 4:00 p.m.
The fork wey answer the question
Index fund na rule for holding basket of securities. The rule no talk anything about how you go buy am, and the two wrappers wey carry am no dey behave the same way when execution happen. Both wrappers fit track the same index and charge almost the same fee.
Exchange-traded fund (ETF) get ticker and live two-sided quote for exchange. You send order, e meet another person’s order, and you go know your fill price in about one second.
Mutual fund no get listing or quote. Your order pass through your broker go the fund company. The fund value its basket after market close, and that single number become the price for everybody wey meet the cutoff that day. Two shareholders wey place order seven hours apart go pay the same price. The complete order-to-confirm walkthrough dey inside when mutual funds dey trade, and the calculation behind the price dey inside how mutual fund NAV dey calculated.
Index ETF ken dey trade?
Dem dey trade from the first print for morning reach the last print for evening. The panel below dey follow two index ETFs through one trading session, Tuesday, September 15, 2026: VOO, wey dey track the S&P 500, and QQQ, wey dey track the Nasdaq-100. Each row na 30-minute bucket for New York clock time, and each value show the percent change from that fund’s first print for the day.
| et time | voo change pct | qqq change pct |
|---|---|---|
| 04:00 | -0.02 | -0.02 |
| 04:30 | -0.05 | -0.04 |
| 05:00 | -0.09 | -0.07 |
| 05:30 | 0.15 | 0.17 |
| 06:00 | 0.17 | 0.24 |
| 06:30 | 0.28 | 0.37 |
| 07:00 | 0.31 | 0.41 |
| 07:30 | 0.35 | 0.45 |
| 08:00 | 0.37 | 0.45 |
| 08:30 | 0.44 | 0.5 |
| 09:00 | 0.4 | 0.45 |
| 09:30 | 0.32 | 0.49 |
| 10:00 | 0.05 | 0.15 |
| 10:30 | -0.1 | -0.15 |
| 11:00 | 0.04 | 0.02 |
| 11:30 | 0 | -0.03 |
| 12:00 | 0.06 | 0 |
| 12:30 | 0.07 | -0.01 |
| 13:00 | -0.04 | -0.1 |
| 13:30 | 0.02 | -0.07 |
The exact SQL behind every number
WITH
bars AS
(
SELECT
ticker,
toTimeZone(window_start, 'America/New_York') AS et,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('VOO', 'QQQ')
AND window_start >= toDateTime('2026-09-15 04:00:00')
AND window_start < toDateTime('2026-09-16 04:00:00')
),
firsts AS
(
SELECT
ticker,
argMin(px, et) AS open_px
FROM bars
GROUP BY ticker
)
SELECT
formatDateTime(toStartOfInterval(b.et, INTERVAL 30 MINUTE), '%H:%i') AS et_time,
round(100 * (argMaxIf(b.px, b.et, b.ticker = 'VOO') / anyIf(f.open_px, f.ticker = 'VOO') - 1), 2) AS voo_change_pct,
round(100 * (argMaxIf(b.px, b.et, b.ticker = 'QQQ') / anyIf(f.open_px, f.ticker = 'QQQ') - 1), 2) AS qqq_change_pct
FROM bars AS b
INNER JOIN firsts AS f ON f.ticker = b.ticker
GROUP BY et_time
HAVING countIf(b.ticker = 'VOO') > 0
AND countIf(b.ticker = 'QQQ') > 0
ORDER BY et_time32 half-hour buckets carry prints for both funds. The first one na 04:00 and the last one na 19:30, New York time. Regular trading dey run from 9:30 a.m. reach 4:00 p.m. Buckets wey dey outside those hours na pre-market and post-market windows, where both funds dey trade with much thinner volume. By the final bucket, VOO dey 0.14% from where e start that day, while QQQ dey -0.04%.
Every level for those two lines na price wey person fit hit. Na so continuous trading dey work: the fund price na whatever the order book dey show for the moment you ask.
How many prices index ETF get for one day?
No be one. The number fit reach hundreds of thousands. This panel dey count VOO trade prints for each session over the last few weeks. E also show how many different minutes for each day get at least one trade.
| session date | trade prints thousands | minutes wey get prints |
|---|---|---|
| 2026-09-02 | 264.1 | 636 |
| 2026-09-03 | 246.6 | 619 |
| 2026-09-04 | 302.1 | 631 |
| 2026-09-08 | 423.5 | 684 |
| 2026-09-09 | 322.6 | 650 |
| 2026-09-10 | 360.3 | 682 |
| 2026-09-11 | 270.1 | 635 |
| 2026-09-14 | 367.9 | 680 |
| 2026-09-15 | 356 | 659 |
| 2026-09-16 | 324.5 | 720 |
| 2026-09-17 | 231.4 | 699 |
| 2026-09-18 | 276.1 | 622 |
| 2026-09-21 | 330.6 | 735 |
| 2026-09-22 | 250.6 | 692 |
| 2026-09-23 | 272.2 | 663 |
| 2026-09-24 | 243.7 | 679 |
The exact SQL behind every number
SELECT
toString(toDate(toTimeZone(window_start, 'America/New_York'))) AS session_date,
round(sum(transactions) / 1000, 1) AS trade_prints_thousands,
count() AS minutes_with_prints
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'VOO'
AND window_start >= today() - 24
AND window_start < today() - 1
GROUP BY session_date
ORDER BY session_dateFor 2026-09-24, VOO print about 243.7 thousand separate trades across 679 different minutes of the day. The panel cover 16 sessions, and the same pattern show for all of dem. Index mutual fund wey dey track the same index for those 16 sessions give shareholders only 16 prices altogether: one each day, and each one set after trading don quiet.
Wetin time index mutual funds dey trade?
Dem dey trade once per day, after market close, for price wey never exist when you place the order. This rule get name, forward pricing. E come from SEC Rule 22c-1, no be broker policy. E get four practical effects.
- You no know your price when you commit. You place order in dollars or shares, never at a price. The mechanics dey inside mutual fund forward pricing rule.
- Cutoff usually dey before 4:00 p.m. ET. Fund own deadline na market close. Your broker need time to batch and transmit orders, and many brokers set their own deadline 15 to 90 minutes before then. Check your broker against broker order cutoff times.
- Limit orders no apply. No order book dey where the instruction fit rest, and brokers reject limit and stop orders for mutual funds. See limit orders on mutual funds.
- Confirmation dey come next morning. Fund strike NAV for evening, your broker post the executed trade overnight, and cash settle one or two business days later. See mutual fund settlement time.
If you miss the cutoff by one minute, the order no fail. E go queue for the next session’s NAV, wey na another unknown price one day further ahead.
Time of day dey change your price?
For ETF, yes. E change according to how much the fund move that day. For mutual fund, no. The exact minute wey you submit order no matter, as long as you beat the cutoff time. The panel measure how big the difference be by taking each session high and low, then express the gap as percentage of the closing price.
| session date | voo range pct | qqq range pct |
|---|---|---|
| 2026-08-12 | 0.47 | 0.6 |
| 2026-08-13 | 0.67 | 1.36 |
| 2026-08-14 | 0.43 | 0.83 |
| 2026-08-17 | 0.56 | 0.73 |
| 2026-08-18 | 0.34 | 0.87 |
| 2026-08-19 | 0.57 | 1.24 |
| 2026-08-20 | 0.8 | 0.9 |
| 2026-08-21 | 0.48 | 0.91 |
| 2026-08-24 | 0.41 | 1 |
| 2026-08-25 | 0.48 | 0.93 |
| 2026-08-26 | 0.44 | 0.71 |
| 2026-08-27 | 0.67 | 0.95 |
| 2026-08-28 | 0.91 | 1.26 |
| 2026-08-31 | 0.42 | 0.62 |
| 2026-09-01 | 0.68 | 1.08 |
| 2026-09-02 | 0.62 | 0.66 |
| 2026-09-03 | 0.84 | 1.29 |
| 2026-09-04 | 0.5 | 0.74 |
| 2026-09-08 | 0.59 | 0.88 |
| 2026-09-09 | 0.46 | 0.79 |
The exact SQL behind every number
SELECT
toString(date) AS session_date,
round(100 * toFloat64(maxIf(high, ticker = 'VOO') - minIf(low, ticker = 'VOO')) / toFloat64(anyIf(close, ticker = 'VOO')), 2) AS voo_range_pct,
round(100 * toFloat64(maxIf(high, ticker = 'QQQ') - minIf(low, ticker = 'QQQ')) / toFloat64(anyIf(close, ticker = 'QQQ')), 2) AS qqq_range_pct
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('VOO', 'QQQ')
AND date >= today() - 45
AND date < today() - 1
GROUP BY date
HAVING countIf(ticker = 'VOO') > 0
AND countIf(ticker = 'QQQ') > 0
ORDER BY dateFor 2026-09-24, VOO high dey 0.74% above the low, while QQQ high dey 1.08% above its low. Each one na compared with that fund own close. The band na the range of prices ETF buyer fit pay that day, depending only on the minute wey dem enter. Across the 31 sessions for the panel, the band usually narrow, but e never reach zero. Mutual fund buyer receive the same close-based price, no matter when dem send the order.
Cost wey ETF clock dey bring
Instant execution get price, and no be expense ratio. ETF quote get bid, wey be the best standing offer to buy, and ask, wey be the best standing offer to sell. The gap between dem na spread. You pay am when you enter and again when you comot. The panel below measure this gap for some big index ETFs during five minutes for morning of September 15, 2026. Dem measure am in basis points of the quote midpoint. One basis point na one hundredth of one percent.
| symbol | average spread bps | p90 spread bps |
|---|---|---|
| SPY | 0.273 | 0.395 |
| QQQ | 0.332 | 0.423 |
| VOO | 0.428 | 0.573 |
| IWM | 0.471 | 0.7 |
| IVV | 0.739 | 0.92 |
| DIA | 0.798 | 0.96 |
The exact SQL behind every number
SELECT
ticker AS symbol,
round(avg(20000 * toFloat64(ask_price - bid_price) / toFloat64(ask_price + bid_price)), 3) AS avg_spread_bps,
round(quantileDeterministic(0.9)(20000 * toFloat64(ask_price - bid_price) / toFloat64(ask_price + bid_price), toUInt64(sequence_number)), 3) AS p90_spread_bps
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'VOO', 'IVV', 'QQQ', 'DIA', 'IWM')
AND sip_timestamp >= toDateTime('2026-09-15 14:00:00')
AND sip_timestamp < toDateTime('2026-09-15 14:05:00')
AND ask_price > bid_price
AND bid_price > 0
GROUP BY ticker
ORDER BY avg_spread_bpsSPY show the tightest average spread among the 6 funds, at 0.273 basis points. DIA get the widest, at 0.798. The 90th percentile column na the one wey worth studying. For that same fund, 0.96 basis points show the wider moments wey market order fit land. Mutual fund no get spread at all. Na this be the only real pricing advantage of the NAV clock.
ETF price fit also sit small above or below the value of the basket wey e hold. Na premium or discount be this gap. The machinery wey keep the gap under control dey described for ETF creation and redemption, and dem measure am for ETF premium and discount to NAV.
Index fund you fit day trade?
You fit trade index ETF mechanically as often as your account rules allow, but pattern day trader rule still apply if na margin account. You no fit day trade index mutual fund at all. Since e get only one price per day, nothing dey there to trade against during the day. Fund companies still monitor round trips and fit block frequent trading. You go see the wrapper-by-wrapper details for you fit day trade index fund, while broader comparison of the two containers dey for mutual funds vs ETFs.
FAQ
Index mutual fund order dem wan execute for what time?
After market don close. Order wey reach the fund before 4:00 p.m. ET cutoff go receive that day NAV, wey dem normally calculate and publish for evening. Order wey enter later go receive the next business day NAV. Your broker own deadline often dey earlier than the fund own deadline.
I fit buy index fund after hours?
Index ETF dey trade for pre-market and post-market sessions when your broker route order go there. Volume dey thinner and spreads dey wider for those periods. You fit enter index mutual fund order any time, but e go queue for the next NAV instead of filling immediately when you send am.
Why my index mutual fund price dey update only once every day?
Mutual fund no get intraday market for its shares, and e no get quote wey fit move. The number wey dey your screen na the last NAV wey dem strike. E go remain there until dem process the next market close.
Index ETFs dey trade at NAV?
E dey trade close to am, but no be exactly. ETF dey trade at the price wey order book prints. That price fit stay slightly above NAV, which na a premium, or slightly below am, which na a discount. Authorized participants dey arbitrage big gaps through creation and redemption. This one dey keep liquid index ETFs within a few basis points of fair value most times.
Data notes
The intraday and spread panels dey use September 15, 2026 as fixed date, so their numbers no go change for each regeneration. The minute-bar panels cover the full New York calendar day, from midnight to midnight, instead of hardcoded session window. Na why pre-market and post-market buckets dey show. Spreads come from the national best bid and offer, after dem filter quotes wey ask pass bid. The rolling panels stop one day before today because the latest session fit still dey update.
Every panel here come with the SQL wey produce am, inside expander under each chart. If you wan run the same counts for fund wey you hold, ask the question for plain English on the Strasmore terminal.