Strasmore Research
Aprendizado Matt ConnorPor Matt Connor · Atualizado 2026-07-23

O que é o leilão de abertura das ações

Entenda como o cruzamento de ordens às nove e meia define o preço oficial de abertura de cada ticker e por que ele pode divergir da primeira negociação.

O leilão de abertura é uma negociação cruzada única às 9:30 a.m. Eastern que define o preço oficial de abertura de cada ação. Antes da abertura, a bolsa de listagem coleta todas as ordens marcadas para o leilão, calcula o preço único que pareia o maior número de ações e executa todo o lote em um único registro — o reflexo matinal do leilão de fechamento que encerra o dia. Todos os números abaixo vêm do consolidated tape — o registro público de cada negociação de ações nos EUA — com o SQL exato anexado a cada painel.

O que é o leilão de abertura? Uma definição simples

As bolsas não apenas iniciam as operações às 9:30 e executam ordens uma a uma. Durante a noite e no pré-market, a bolsa de listagem acumula ordens destinadas à abertura — além de ordens limitadas elegíveis no book — e, ao soar do sino, cruza todo o volume em uma única transação por um único preço. Esse registro possui seu próprio rótulo de condição de venda (código 17, "Market Center Opening Trade" — recibos no último painel), e seu preço torna-se a abertura oficial: o "open" no registro de preços do dia, a referência para termos como "gapped up" ou "gapped down". O leilão e o mercado contínuo fazem parte da mesma fita; o que muda ao soar do sino é o mecanismo.

O leilão de abertura no tape real: SPY, AAPL, NVDA

A tabela abaixo utiliza o dia 2 de julho de 2026 — uma sessão completa verificada (comprovante no próximo painel) — e dimensiona o opening cross de SPY, AAPL e NVDA em relação ao restante do dia. O "volume negociado" considera apenas as ações que o tape adiciona ao volume consolidado; mensagens administrativas (condições de venda 15, 16, 38) são excluídas de todos os denominadores.

QueryO opening cross vs. o restante do dia — SPY, AAPL, NVDA em 2 de julho de 2026
O SQL exato por trás de cada número
SELECT
    ticker,
    round(toFloat64(maxIf(size, has(conditions, 17))) / 1e3, 1) AS auction_shares_k,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17))) AS auction_price,
    formatDateTime(toTimeZone(argMaxIf(sip_timestamp, (size, sip_timestamp), has(conditions, 17)), 'America/New_York'), '%H:%i:%S') AS auction_time_et,
    countIf(has(conditions, 17)) AS opening_print_count,
    countIf(has(conditions, 17) AND formatDateTime(toTimeZone(sip_timestamp, 'America/New_York'), '%H:%i:%S') = '09:30:00') AS open_prints_at_0930,
    minIf(size, has(conditions, 17)) AS smallest_open_print_shares,
    round(toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) >= 570 AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) < 575)) / 1e3) AS first5_shares_k,
    round(100 * toFloat64(maxIf(size, has(conditions, 17))) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) >= 570 AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) < 575)), 1) AS auction_pct_of_first5,
    round(100 * toFloat64(maxIf(size, has(conditions, 17))) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]))), 2) AS auction_pct_of_day,
    round(toFloat64(maxIf(size, has(conditions, 8))) / 1e6, 2) AS closing_auction_shares_m,
    round(toFloat64(maxIf(size, has(conditions, 8))) / toFloat64(maxIf(size, has(conditions, 17))), 1) AS close_vs_open_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)

Leia primeiro a linha da AAPL: um opening cross de 323.3 mil ações a $294.1, registrado às 09:30:00 ET. O cross da NVDA foi de 690 mil ações e o da SPY de 122 mil. O cross sozinho representou 17.4% de todas as ações da AAPL negociadas nos primeiros cinco minutos da sessão (1856 mil ações), 13.8% para NVDA e 9.4% para SPY — contudo, o volume total do dia foi de apenas 0.43%, 0.48% e 0.21%: menos de meio por cento.

As duas últimas colunas mostram o fechamento: o closing cross da AAPL no mesmo dia negociou 10.89 milhões de ações — 33.7 vezes o seu valor de abertura; o da NVDA foi 25.2 vezes e o da SPY 13.5 vezes. Fundos de índice e mesas de benchmark operam aos preços oficiais de fechamento, e esse fluxo se concentra no cross das 16h; o período da manhã não possui equivalente. O leilão de fechamento é a maior operação do dia — o leilão de abertura é onde o dia oficial começa.

Por que o preço de abertura oficial pode ser diferente da primeira negociação do dia?

No momento em que o leilão ocorre, a ação geralmente já está sendo negociada há horas — o pre-market trading começa às 4:00 ET, e nenhuma dessas negociações define a abertura oficial. O registro abaixo detalha o AAPL entre 1 e 2 de julho de 2026, iniciando com uma verificação de sessão: o SPY registrou exatamente 390 barras de minutos de sessão regular em 2 de julho — uma sessão completa, verificada em vez de presumida.

QueryO receipt: opening cross da AAPL vs. tudo o que foi negociado antes, 1-2 de julho de 2026
O SQL exato por trás de cada número
WITH
    (
        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 argMax(sip_timestamp, (size, sip_timestamp))
        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' AND has(conditions, 17)
    ) AS auction_ts,
    (
        SELECT argMax(exchange, (size, sip_timestamp))
        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' AND has(conditions, 17)
    ) AS listing_exchange
SELECT
    bars_jul02 AS spy_session_bars_jul02,
    countIf(has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00') AS jul01_close_print_count,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00')) AS prior_close_price,
    countIf(has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00') AS opening_print_count,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')) AS auction_price,
    formatDateTime(toTimeZone(auction_ts, 'America/New_York'), '%H:%i:%S.%f') AS auction_et,
    round(100 * (toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')) - toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00'))) / toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00')), 2) AS overnight_gap_pct,
    formatDateTime(toTimeZone(minIf(sip_timestamp, sip_timestamp >= '2026-07-02 00:00:00' AND NOT hasAny(conditions, [15, 16, 38])), 'America/New_York'), '%H:%i:%S') AS first_trade_et,
    toFloat64(argMinIf(price, (sip_timestamp, sequence_number), sip_timestamp >= '2026-07-02 00:00:00' AND NOT hasAny(conditions, [15, 16, 38]))) AS first_trade_price,
    countIf(sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < auction_ts AND NOT hasAny(conditions, [15, 16, 38])) AS trades_before_official_open,
    countIf(sip_timestamp >= toDateTime('2026-07-02 09:30:00', 'America/New_York') AND sip_timestamp < auction_ts AND NOT hasAny(conditions, [15, 16, 38])) AS bell_to_cross_trades,
    countIf(has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00') AS official_open_msgs,
    countIf(has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00' AND exchange = listing_exchange) AS listing_venue_open_msgs,
    round(toFloat64(anyIf(price, has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00' AND exchange = listing_exchange)) - toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')), 4) AS listing_open_msg_price_difference
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'

A primeira negociação de volume do AAPL em 2 de julho ocorreu às 04:00:00 ET a $296.1. A abertura oficial só existiu às 09:30:00.491313 ET, quando o cruzamento foi registrado a $294.1 — até lá, 15832 negociações do AAPL já haviam sido registradas, incluindo 173 na fração de segundo entre 9:30:00.000 e o cruzamento — negociações contínuas em outros venues que começam o matching na abertura. Momentos depois, surgiram 2 mensagens "Market Center Official Open" (condição de venda 16) — o registro da própria abertura oficial de cada market center, que não adiciona volume; a bolsa de listagem repete exatamente o preço do leilão (diferença: 0).

O registro também mede o gap de overnight. O último fechamento oficial do AAPL — exatamente a negociação de fechamento de 1 em 1 de julho — foi $294.38; o leilão da manhã seguinte registrou $294.1, uma variação de overnight de -0.1%. Noite calma, gap pequeno. Quando resultados ou notícias saem durante a noite, o pre-market reajusta o preço primeiro; o leilão consolida o movimento no registro oficial.

Como funciona o leilão de abertura? Ordens market-on-open e limit-on-open

Dois tipos específicos de ordens alimentam a abertura, espelhando seus equivalentes no fechamento:

  • Uma ordem market-on-open (MOO) é executada pelo preço definido pelo leilão — sem proteção de preço, com participação quase garantida na abertura oficial.
  • Uma ordem limit-on-open (LOO) entra no leilão apenas se o preço de abertura for igual ou melhor que o seu limite — com proteção de preço, mas com o risco de não ser executada no cruzamento.

Ambas permanecem na bolsa até o cruzamento e nunca são negociadas no pre-market durante o processo. As bolsas param de aceitar ou modificar ordens de abertura pouco antes das 9:30 (os prazos variam por bolsa), e muitas corretoras estabelecem horários de corte mais cedo.

O que é um desequilíbrio no leilão de abertura?

No período que antecede o sino, as bolsas publicam dados de desequilíbrio (imbalance) para a abertura: a quantidade de ações na fila de compra versus venda, além de um preço indicativo onde o cruzamento ocorreria naquele momento. Um desequilíbrio de compra de um milhão de ações significa que um milhão de ações de compra estão sem par até o momento. Traders do pre-market acompanham esses dados e montam posições com base neles.

O candle de 9:30 também não é a abertura oficial

A maioria das plataformas de gráfico consolida a abertura no primeiro candle de um minuto: tudo o que foi registrado de 9:30:00.000 até 9:30:59.999, de todas as bolsas — o leilão somado a quase um minuto de negociação contínua. A "abertura" do gráfico é o primeiro preço registrado nesse intervalo — não necessariamente o do leilão.

QueryO candle das 9:30 vs. o candle das 12:30 — SPY, AAPL, NVDA em 2 de julho de 2026
O SQL exato por trás de cada número
WITH auctions AS (
    SELECT ticker, toFloat64(argMax(price, (size, sip_timestamp))) AS official_open
    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'
      AND has(conditions, 17)
    GROUP BY ticker
)
SELECT
    b.ticker AS ticker,
    toFloat64(anyIf(b.open, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York'))) AS bar_0930_open,
    a.official_open AS official_open,
    round(100 * (toFloat64(anyIf(b.open, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York'))) - a.official_open), 0) AS bar_open_minus_official_cents,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) / 1e3) AS bar_0930_vol_k,
    anyIf(b.transactions, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) AS bar_0930_trades,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 12:30:00', 'America/New_York')) / 1e3) AS bar_1230_vol_k,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) / sumIf(b.volume, b.window_start = toDateTime('2026-07-02 12:30:00', 'America/New_York')), 1) AS x_0930_vs_1230
FROM global_markets.delayed_stocks_minute_aggs AS b
INNER JOIN auctions AS a ON a.ticker = b.ticker
WHERE b.ticker IN ('SPY', 'AAPL', 'NVDA')
  AND b.window_start >= toDateTime('2026-07-02 00:00:00', 'America/New_York')
  AND b.window_start < toDateTime('2026-07-03 00:00:00', 'America/New_York')
GROUP BY b.ticker, a.official_open
ORDER BY indexOf(['SPY', 'AAPL', 'NVDA'], b.ticker)

Em 2 de julho, os três candles de 9:30 abriram acima da abertura oficial: o candle da AAPL mostra $294.12 contra os $294.1 oficiais — 2 centavos de diferença — com SPY 18 centavos e NVDA 2 centavos acima de seus cruzamentos. Um registro pré-cross em outra bolsa entrou primeiro em cada candle; quando a abertura de um gráfico diverge da abertura oficial por alguns centavos, este costuma ser o motivo.

As colunas de volume mostram o peso do primeiro minuto. O candle de 9:30 da AAPL registrou 743 mil ações em 14662 trades — 6.1 vezes o seu candle de almoço das 12:30, de 121 mil; o ratio da NVDA foi de 7.5 vezes, e o da SPY de 3.6 vezes. Minutos com esse volume têm peso real no VWAP, o preço médio ponderado pelo volume.

Como se comporta o volume ao longo do dia próximo à abertura?

Ao dividir o tape completo de AAPL de julho em intervalos de quinze minutos 64, das 4:00 às 20:00, o pico de volume na abertura ganha contexto: os intervalos do pre-market são irrelevantes, o volume aumenta drasticamente às 9:30, diminui próximo ao almoço e cresce em direção ao fechamento — onde o dia termina como começou, com um cruzamento de 10.89 milhões de ações de AAPL.

QueryVolume da AAPL por quarto de hora, 2 de julho de 2026 — pre-market ao after-hours (ET)
O SQL exato por trás de cada número
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 15 MINUTE), '%H:%i') AS et_time,
    round(sum(volume) / 1e6, 2) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'AAPL'
  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')
GROUP BY et_time
ORDER BY et_time

Como identificar o print do leilão de abertura? Códigos de condição de venda

Qual print é o leilão? O tape responde; o dicionário de códigos acompanha o mesmo conjunto, e o recibo abaixo é uma consulta, não uma afirmação.

QueryOs próprios labels do tape para a abertura, direto do dicionário de códigos
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, 17, 38)
ORDER BY id

Uma assimetria é relevante. O fechamento recebe um rótulo consolidado (código 8, "Closing Prints"); o rótulo da abertura é por venue: o código 17, "Market Center Opening Trade", sinaliza a operação de abertura de cada centro de mercado, sendo que a da bolsa de listagem é o leilão. O tape de julho do SPY traz 2 desses prints — o cross de mil ações 122 somado a um print de 4 ações de outro venue — enquanto AAPL e NVDA mostram exatamente um cada (1 e 1), todos dentro do segundo 9:30:00 (a coluna open_prints_at_0930 confirma). Cada número de leilão acima é o maior print desse tipo da sessão. O código 16, "Market Center Official Open", é o eco administrativo sem volume (0 na coluna de volume), excluído de todos os denominadores com os códigos 15 e 38.

FAQ do leilão de abertura

Qual é o horário do leilão de abertura?

Às 9:30 ET, quando começa a sessão regular; ativos menos líquidos podem cruzar momentos depois. Em 2 de julho de 2026, os cruzamentos de SPY, AAPL e NVDA ocorreram exatamente às 09:30:00 ET. Dias com fechamento antecipado encurtam a tarde, não a manhã — o leilão de fechamento passa para as 13:00; veja feriados e fechamentos antecipados.

Qual é o preço oficial de abertura?

É o preço do leilão de abertura na bolsa onde o ativo é listado. Em 2 de julho de 2026, o cruzamento da AAPL registrou $294.1 — a abertura oficial do dia, embora 15832 ações da AAPL tenham sido negociadas mais cedo naquela manhã.

Posso negociar no leilão de abertura?

Sim. Ordens Market-on-open (MOO) e limit-on-open (LOO) são padrão na maioria das corretoras: MOO é executada ao preço definido pelo leilão, LOO só é executada no seu limite ou melhor. O envio de ordens é interrompido pouco antes das 9:30, sendo mais cedo em muitas corretoras.

Por que uma ação abriu muito longe do fechamento de ontem?

As ordens se acumulam durante toda a noite enquanto a bolsa está fechada, e o leilão cruza esse interesse acumulado em um único registro. Em uma noite calma, o gap é pequeno: a variação overnight da AAPL em 2 de julho de 2026 foi de -0.1%.

O leilão de abertura é maior que o leilão de fechamento?

Não — o fechamento é muito maior. Em 2 de julho de 2026, o cruzamento de fechamento da AAPL foi 33.7 vezes o seu cruzamento de abertura, o da NVDA foi 25.2 vezes, e o do SPY foi 13.5 vezes. O fluxo que segue o benchmark transaciona no fechamento oficial — o leilão de fechamento cobre esse período.


Cada valor acima é gerado a partir de uma query armazenada e auditável — expanda o SQL abaixo de qualquer painel para auditá-lo. Para analisar o cruzamento de abertura de um ticker que você acompanha, faça as mesmas perguntas em inglês no terminal Strasmore.