O que é o leilão de fechamento?
Entenda o leilão de fechamento, por que o print das 16h define o preço oficial e como ordens market-on-close concentram o maior negócio do dia.
O leilão de fechamento (que a Nasdaq chama de closing cross) é uma única operação de grande volume, casada às 16h, no horário do leste dos EUA, que define o preço oficial de fechamento de cada ação. Em vez de casar compradores e vendedores ordem por ordem, a bolsa de listagem reúne as ordens de fechamento ao longo da tarde e cruza todo o volume a um único preço, em um único print. É o contraponto do leilão de abertura que inicia o dia e, em ações individuais, esse registro de uma única operação costuma ser o maior print de todo o pregão. Todos os números desta página são calculados a partir do consolidated tape, o registro público unificado de todas as operações com ações dos EUA, com a consulta SQL exata associada a cada painel.
O que é o leilão de fechamento? Uma definição simples
Durante a maior parte da sessão, uma ação é negociada continuamente: as ordens chegam, encontram contrapartes e são executadas uma a uma. Nos ativos mais líquidos, isso ocorre milhares de vezes por minuto. O leilão de fechamento é um mecanismo diferente no mesmo tape. Na etapa final do dia, a bolsa que lista o ativo reúne todas as ordens marcadas para o fechamento, calcula o preço único ao qual o maior número de ações pode ser cruzado e executa todo o conjunto em uma única transação às 16h00 ET.
A operação aparece no tape público como qualquer outra, identificada pela sua própria marca, condição de negócio 8, “Closing Prints”, e o seu preço se torna o preço oficial de fechamento divulgado naquela noite. O mercado contínuo e o leilão não são dois mercados: são um único tape, e o leilão é uma enorme linha dentro dele.
Por que existe o leilão de fechamento?
O fechamento é o preço de referência do mercado. Os fundos mútuos calculam o valor patrimonial líquido diário com base nos preços oficiais de fechamento. Os provedores de índices calculam os benchmarks a partir desses preços. As mesas institucionais também são avaliadas em relação a eles, juntamente com métricas como VWAP, o preço médio ponderado pelo volume. O investidor que negocia ao preço de fechamento acompanha exatamente todas essas referências. O leilão é o mecanismo que define esse preço. Para a maioria dos investidores, é o único ambiente em que é possível garantir a execução nesse nível.
Esse efeito se reforça. Ordens grandes se acumulam dos dois lados. Um cruzamento as combina pelo maior volume possível. Assim, uma ordem grande é executada a um único preço, sem consumir progressivamente o spread entre compra e venda no mercado contínuo, onde os market makers cotam os dois lados ao longo de todo o pregão.
O leilão de fechamento no tape real: um print contra a mediana das negociações
O painel abaixo usa 2 de julho de 2026, a última sessão antes do fim de semana do feriado de 4 de julho, um dia completo de negociação verificado (os comprovantes estão no painel seguinte), e dimensiona o leilão de fechamento de SPY, AAPL e NVDA em relação a todas as demais operações nos respectivos tapes. “Matched volume” significa o número de ações que a própria contabilidade do tape inclui no volume consolidado; as retransmissões administrativas (condições de venda 15, 16 e 38) são excluídas de todos os denominadores, em linha com nossa análise detalhada da microestrutura tick a tick; o painel abaixo com o dicionário de códigos é o comprovante.
| ticker | ações no leilão m | horário do leilão ET | nº de negócios no leilão | negócios do leilão às 16:00 | ações por negócio mediano | leilão vs. mediana (milhares x) | leilão (% do volume) | maior outro negócio m | leilão vs. maior outro (x) |
|---|---|---|---|---|---|---|---|---|---|
| SPY | 1.65 | 16:00:00 | 1 | 1 | 25 | 66 | 2.9 | 2.5 | 0.66 |
| AAPL | 10.89 | 16:00:00 | 1 | 1 | 20 | 545 | 14.4 | 1.8 | 6.05 |
| NVDA | 17.38 | 16:00:00 | 1 | 1 | 5 | 3475 | 12.2 | 5.47 | 3.18 |
O SQL exato por trás de cada número
SELECT
ticker,
round(toFloat64(maxIf(size, has(conditions, 8))) / 1e6, 2) AS auction_shares_m,
formatDateTime(toTimeZone(argMaxIf(sip_timestamp, size, has(conditions, 8)), 'America/New_York'), '%H:%i:%S') AS auction_time_et,
countIf(has(conditions, 8)) AS auction_print_count,
countIf(has(conditions, 8) AND formatDateTime(toTimeZone(sip_timestamp, 'America/New_York'), '%H:%i:%S') = '16:00:00') AS auction_prints_at_1600,
round(quantileDeterministicIf(0.5)(toFloat64(size), toUInt64(sip_timestamp), NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38]))) AS median_trade_shares,
round(toFloat64(maxIf(size, has(conditions, 8))) / quantileDeterministicIf(0.5)(toFloat64(size), toUInt64(sip_timestamp), NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38])) / 1000) AS auction_vs_median_thousand_x,
round(100 * toFloat64(maxIf(size, has(conditions, 8))) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]))), 1) AS auction_pct_of_volume,
round(toFloat64(maxIf(size, NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38]))) / 1e6, 2) AS biggest_other_trade_m,
round(toFloat64(maxIf(size, has(conditions, 8))) / toFloat64(maxIf(size, NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38]))), 2) AS auction_vs_biggest_other_x
FROM global_markets.stocks_trades
WHERE ticker IN ('SPY', 'AAPL', 'NVDA')
AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
GROUP BY ticker
ORDER BY indexOf(['SPY', 'AAPL', 'NVDA'], ticker)Comece pela linha da AAPL. A operação mediana da AAPL naquele dia foi de 20 ações. O leilão de fechamento cruzou 10.89 milhões de ações em um único print, aproximadamente 545 mil vezes a mediana, 14.4% de todas as ações da AAPL negociadas no dia, incluindo o after-market. A diferença entre o leilão e a mediana da NVDA é ainda maior: um print mediano de 5 ações contra um cruzamento de 17.38 milhões de ações, 3475 mil vezes a mediana, representando 12.2% das negociações do dia. Cada ativo mostra exatamente um print de leilão. A coluna auction_print_count é o comprovante, registrada às 16:00:00 ET, com precisão de segundo (auction_prints_at_1600 fixa o horário).
A afirmação do título tem seu próprio comprovante. Nas duas ações individuais, o cruzamento foi a maior negociação de todo o dia: o maior print em negociação contínua da AAPL foi de 1.8 milhões de ações, e o leilão teve 6.05 vezes esse tamanho; o maior print da NVDA foi de 5.47 milhões, e o cruzamento foi 3.18 vezes maior. A exceção é a SPY: um único block trade de 2.5 milhões de ações superou seu cruzamento de 1.65 milhões. Em um ETF com alto volume, uma única operação em bloco pode superar o leilão. A SPY também apresenta a menor participação do leilão entre os três ativos, de 2.9%, mas mesmo seu cruzamento foi 66 mil vezes maior que sua operação mediana de 25 ações.
O fechamento oficial é o leilão, não o último negócio
É comum presumir que o preço de fechamento seja simplesmente o último negócio antes do toque de fechamento. O tape mostra outra realidade. O comprovante de uma linha abaixo cobre AAPL em 2 de julho de 2026 e começa com as verificações de sessão para todas as datas fixadas neste texto: SPY registrou exatamente 390, 390 e 390 barras de um minuto no horário regular em 16 de junho, 30 de junho e 2 de julho — três sessões completas das 9h30 às 16h00, verificadas, nunca presumidas.
| barras da sessão do SPY 16/jun | barras da sessão do SPY 30/jun | barras da sessão do SPY 02/jul | nº de negócios no leilão | preço do leilão | horário do leilão ET | preço do último tick | horário do último tick ET | leilão menos último tick (centavos) | republicações do fechamento oficial | republicações do venue de listagem | diferença de preço da republicação |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 390 | 390 | 390 | 1 | 308.63 | 16:00:00.373202 | 308.1 | 16:00:00.215052 | 53 | 2 | 1 | 0 |
O SQL exato por trás de cada número
WITH
(
SELECT countIf(window_start >= toDateTime('2026-06-16 09:30:00', 'America/New_York') AND window_start < toDateTime('2026-06-16 16:00:00', 'America/New_York'))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-16 00:00:00', 'America/New_York') AND window_start < toDateTime('2026-06-17 00:00:00', 'America/New_York')
) AS bars_jun16,
(
SELECT countIf(window_start >= toDateTime('2026-06-30 09:30:00', 'America/New_York') AND window_start < toDateTime('2026-06-30 16:00:00', 'America/New_York'))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-30 00:00:00', 'America/New_York') AND window_start < toDateTime('2026-07-01 00:00:00', 'America/New_York')
) AS bars_jun30,
(
SELECT countIf(window_start >= toDateTime('2026-07-02 09:30:00', 'America/New_York') AND window_start < toDateTime('2026-07-02 16:00:00', 'America/New_York'))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-07-02 00:00:00', 'America/New_York') AND window_start < toDateTime('2026-07-03 00:00:00', 'America/New_York')
) AS bars_jul02,
(
SELECT maxIf(sip_timestamp, has(conditions, 8))
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
) AS auction_ts,
(
SELECT argMaxIf(exchange, size, has(conditions, 8))
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
) AS listing_exchange
SELECT
bars_jun16 AS spy_session_bars_jun16,
bars_jun30 AS spy_session_bars_jun30,
bars_jul02 AS spy_session_bars_jul02,
countIf(has(conditions, 8)) AS auction_print_count,
toFloat64(argMaxIf(price, size, has(conditions, 8))) AS auction_price,
formatDateTime(toTimeZone(auction_ts, 'America/New_York'), '%H:%i:%S.%f') AS auction_et,
toFloat64(argMaxIf(price, (sip_timestamp, sequence_number), sip_timestamp < auction_ts AND NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38]))) AS last_tick_price,
formatDateTime(toTimeZone(maxIf(sip_timestamp, sip_timestamp < auction_ts AND NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38])), 'America/New_York'), '%H:%i:%S.%f') AS last_tick_et,
round((toFloat64(argMaxIf(price, size, has(conditions, 8))) - toFloat64(argMaxIf(price, (sip_timestamp, sequence_number), sip_timestamp < auction_ts AND NOT has(conditions, 8) AND NOT hasAny(conditions, [15, 16, 38])))) * 100, 1) AS auction_minus_last_tick_cents,
countIf(has(conditions, 15)) AS official_close_reprints,
countIf(has(conditions, 15) AND exchange = listing_exchange) AS listing_venue_reprints,
round(toFloat64(anyIf(price, has(conditions, 15) AND exchange = listing_exchange)) - toFloat64(argMaxIf(price, size, has(conditions, 8))), 4) AS listing_reprint_price_difference
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'A negociação contínua prossegue até o momento em que o cruzamento é executado. Nesse dia, isso ocorreu uma fração de segundo depois das 16h00min00s. O último negócio contínuo de AAPL que contou para o volume antes do cruzamento foi registrado às 16:00:00.215052 ET, a US$308.1. Às 16:00:00.373202 ET, o leilão foi cruzado a US$308.63, 53 centavos acima desse último negócio. O fechamento oficial naquela noite foi o preço do leilão, não o preço do último negócio. Em seguida, o tape registrou 2 mensagens “Market Center Official Close” (condição de venda 15), cada uma informando o registro da própria bolsa sobre o fechamento oficial, e não retransmissões do fechamento consolidado; as bolsas podem informar preços diferentes. A mensagem da bolsa de listagem coincide exatamente com o negócio do leilão (a diferença mede 0), e nenhuma dessas mensagens adiciona volume. A negociação continua na sessão after-hours por mais quatro horas; nenhum desses negócios altera o fechamento oficial.
Como funciona o leilão de fechamento? Ordens market-on-close e limit-on-close
Dois tipos específicos de ordens de fechamento alimentam o leilão, juntamente com as ordens limitadas comuns já registradas no livro contínuo, que também podem participar do cruzamento:
- Uma ordem market-on-close (MOC) é executada ao preço definido pelo leilão. Não oferece proteção de preço, em troca de uma execução praticamente garantida no fechamento oficial. Se a negociação da ação estiver suspensa no momento do fechamento, o cruzamento pode não ocorrer e as ordens de fechamento podem não ser executadas.
- Uma ordem limit-on-close (LOC) participa do leilão somente se o preço do leilão for igual ou melhor que o seu limite. Oferece proteção de preço, mas traz o risco de não participar do cruzamento.
Ambas permanecem na bolsa até o cruzamento. Nenhuma é negociada no mercado contínuo durante esse período. As bolsas deixam de aceitar ou alterar ordens de fechamento nos minutos finais. Os horários exatos variam entre as bolsas e mudam ao longo do tempo. A maioria das corretoras também estabelece prazos anteriores. No momento do fechamento, o livro está bloqueado e um único preço equilibra as ordens.
O que é um desequilíbrio no leilão de fechamento?
Antes do cruzamento, as bolsas divulgam dados sobre o desequilíbrio: quantas ações estão na fila para compra e para venda no fechamento, além de um preço indicativo no qual o cruzamento seria realizado naquele momento. Um desequilíbrio comprador de um milhão de ações significa que, até então, há um milhão de ações em ordens de compra no fechamento sem correspondência. Os participantes que negociam no mercado contínuo acompanham esses dados e ajustam suas posições nos minutos finais.
Dias de fim de trimestre ampliam o leilão de fechamento
Alguns dias do calendário concentram ainda mais do volume do dia no fechamento. Rebalanceamentos de índices, vencimentos e fluxos de fundos no fim do mês e do trimestre dependem dos preços oficiais de fechamento, e esses fluxos se encontram no leilão. 30 de junho de 2026 foi o último pregão do segundo trimestre. O painel abaixo compara o leilão de fechamento de cada ticker nesse dia com uma sessão comum de meio do mês, em 16 de junho. Ambas foram sessões completas verificadas no recibo acima.
| ticker | nº de negócios no leilão 16/jun | nº de negócios no leilão 30/jun | ações no leilão 16/jun m | ações no leilão 30/jun m | 30/jun vs. 16/jun (x) | leilão 16/jun (%) | leilão 30/jun (%) |
|---|---|---|---|---|---|---|---|
| SPY | 1 | 1 | 1.84 | 2 | 1.1 | 2.7 | 3.6 |
| AAPL | 1 | 1 | 7.49 | 21.71 | 2.9 | 18.8 | 33.2 |
| NVDA | 1 | 1 | 23.47 | 41.14 | 1.8 | 18.5 | 24.7 |
O SQL exato por trás de cada número
SELECT
ticker,
countIf(has(conditions, 8) AND sip_timestamp < '2026-06-17 00:00:00') AS jun16_auction_print_count,
countIf(has(conditions, 8) AND sip_timestamp >= '2026-06-30 00:00:00') AS jun30_auction_print_count,
round(toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp < '2026-06-17 00:00:00')) / 1e6, 2) AS jun16_auction_shares_m,
round(toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp >= '2026-06-30 00:00:00')) / 1e6, 2) AS jun30_auction_shares_m,
round(toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp >= '2026-06-30 00:00:00')) / toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp < '2026-06-17 00:00:00')), 1) AS jun30_vs_jun16_x,
round(100 * toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp < '2026-06-17 00:00:00')) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND sip_timestamp < '2026-06-17 00:00:00')), 1) AS jun16_auction_pct,
round(100 * toFloat64(maxIf(size, has(conditions, 8) AND sip_timestamp >= '2026-06-30 00:00:00')) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND sip_timestamp >= '2026-06-30 00:00:00')), 1) AS jun30_auction_pct
FROM global_markets.stocks_trades
WHERE ticker IN ('SPY', 'AAPL', 'NVDA')
AND ((sip_timestamp >= '2026-06-16 00:00:00' AND sip_timestamp < '2026-06-17 00:00:00')
OR (sip_timestamp >= '2026-06-30 00:00:00' AND sip_timestamp < '2026-07-01 00:00:00'))
GROUP BY ticker
ORDER BY indexOf(['SPY', 'AAPL', 'NVDA'], ticker)O leilão de fim de trimestre da AAPL movimentou 21.71 milhões de ações, 2.9 vezes os 7.49 milhões do leilão de 16 de junho. Essa única operação representou 33.2% do volume negociado da AAPL em todo o dia. Um terço do volume de uma sessão em uma única transação, a um só preço. O leilão da NVDA cresceu de 23.47 milhões para 41.14 milhões de ações, alcançando 24.7% do volume do dia. Assim como em 2 de julho, cada ticker registrou exatamente um leilão por sessão; as duas colunas de contagem de operações correspondem ao recibo. Esse padrão de tamanho é o que as telas de volume relativo existem para identificar. A participação do leilão da SPY permaneceu pequena nas duas datas (2.7% e 3.6%). Para consultar o retrato completo da sessão, veja nosso resumo do mercado de 30 de junho de 2026; para uma anomalia de dados da mesma semana de fim de trimestre, veja o fim de trimestre que não foi protocolado.
Como identificar o print do leilão de fechamento? Códigos de condição da operação
Qual print corresponde ao leilão? A própria fita informa. Toda operação traz códigos de condição da operação, e o dicionário de códigos vem no mesmo pacote. O recibo abaixo é uma consulta, não uma afirmação.
| name | id | conta para o volume |
|---|---|---|
| Closing Prints | 8 | 1 |
| Market Center Official Close | 15 | 0 |
| Market Center Official Open | 16 | 0 |
| Corrected Consolidated Close (per listing market) | 38 | 0 |
O SQL exato por trás de cada número
SELECT
name,
id,
toUInt8(JSONExtractBool(update_rules, 'consolidated', 'updates_volume')) AS counts_toward_volume
FROM global_markets.stocks_condition_codes
WHERE asset_class = 'stocks' AND type = 'sale_condition' AND id IN (8, 15, 16, 38)
ORDER BY idO código 8, “Closing Prints”, identifica o próprio print do leilão, e o dicionário informa que ele entra no volume consolidado (counts_toward_volume = 1). O código 15, “Market Center Official Close”, é o registro administrativo de cada centro de mercado para o seu próprio fechamento oficial; o dicionário indica que ele não atualiza o volume (0). Os códigos 16 e 38, “Market Center Official Open” e “Corrected Consolidated Close (per listing market)”, são o mesmo tipo de registro administrativo para a abertura e para correções, também excluídos (0 e 0). Todos os números de leilão acima filtram esses códigos, e não o horário do relógio. Todo denominador de volume exclui os três códigos administrativos.
Perguntas frequentes
A que horas ocorre o leilão de fechamento?
Pouco depois das 16h ET, quando termina a sessão regular. Em dias com volume excepcionalmente elevado, o print pode ocorrer mais tarde. Em 2 de julho de 2026, os leilões de SPY, AAPL e NVDA foram registrados exatamente às 16:00:00 ET. Nos dias previstos de fechamento antecipado, o leilão ocorre às 13h ET. Consulte feriados do mercado e fechamentos antecipados para ver o calendário.
O que é uma ordem market-on-close (MOC)?
É uma ordem para comprar ou vender ao preço definido pelo leilão de fechamento. A participação no fechamento oficial é praticamente garantida, salvo uma interrupção da negociação até o sino, mas a ordem não oferece controle sobre o preço. Uma ordem limit-on-close (LOC) acrescenta um limite e só participa do cruzamento se o preço do leilão for igual ou melhor que esse limite.
O preço de fechamento é o último negócio do dia?
Não. O fechamento oficial é o preço do leilão. Em 2 de julho de 2026, o último negócio contínuo de AAPL antes do cruzamento foi registrado a US$308.1, enquanto o leilão ocorreu a US$308.63, uma diferença de 53 centavos. Os prints da sessão after-hours também não alteram o fechamento oficial.
Por que o volume negociado é tão elevado no fechamento?
Fundos de índice, fundos mútuos e instituições que seguem índices de referência negociam aos preços oficiais de fechamento. As ordens são reunidas em um único cruzamento. Em 2 de julho de 2026, um único print do leilão representou 14.4% do volume casado de AAPL no dia. No fim do trimestre, em 30 de junho, essa proporção chegou a 33.2%.
Os ETFs também têm leilão de fechamento?
Sim. Toda ação e todo ETF listado realiza seu leilão na bolsa em que está listado. O cruzamento tende a representar uma parcela menor do volume diário de um ETF. No caso de SPY, o leilão de 2 de julho de 2026 correspondeu a 2.9% do volume casado, contra 14.4% no caso de AAPL.
Todos os números acima são gerados por uma consulta armazenada e auditável. Expanda o SQL sob qualquer painel para verificá-la. Para analisar em detalhe o leilão de fechamento de um ticker que você acompanha, faça as mesmas perguntas em linguagem simples no terminal Strasmore.